| 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 db e7 d9 1a a7 02 00 00 | ontainer>.PK..........!R........ |
| 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 33 2e 30 3c 2f 64 63 3a 69 64 65 6e 74 69 66 69 65 72 3e 0a 20 20 20 20 3c 64 63 3a 74 | :0.3.0</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 33 | itle>Zig.Language.Reference.(0.3 |
| 02c0 | 2e 30 29 3c 2f 64 63 3a 74 69 74 6c 65 3e 0a 20 20 20 20 3c 64 63 3a 6c 61 6e 67 75 61 67 65 3e | .0)</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 b4 1d 98 c1 86 01 00 00 86 01 00 00 0f 00 00 00 4f 45 | PK..........!R................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 33 2e 30 | le>Zig.Language.Reference.(0.3.0 |
| 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 33 2e 30 29 | ">Zig.Language.Reference.(0.3.0) |
| 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 4c dd ef b2 a1 fc 07 00 a1 fc 07 00 11 00 00 00 4f 45 42 50 53 2f 69 6e 64 65 78 2e 78 68 74 | RL...............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 3e 0a 20 20 3c 68 65 61 64 3e 0a 20 | w.w3.org/1999/xhtml">...<head>.. |
| 0680 | 20 20 20 3c 6d 65 74 61 20 63 68 61 72 73 65 74 3d 22 75 74 66 2d 38 22 2f 3e 0a 20 20 20 20 3c | ...<meta.charset="utf-8"/>.....< |
| 06a0 | 74 69 74 6c 65 3e 44 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 2d 20 54 68 65 20 5a 69 67 20 50 72 | title>Documentation.-.The.Zig.Pr |
| 06c0 | 6f 67 72 61 6d 6d 69 6e 67 20 4c 61 6e 67 75 61 67 65 3c 2f 74 69 74 6c 65 3e 0a 20 20 20 20 3c | ogramming.Language</title>.....< |
| 06e0 | 73 74 79 6c 65 20 74 79 70 65 3d 22 74 65 78 74 2f 63 73 73 22 3e 0a 20 20 20 20 20 20 74 61 62 | style.type="text/css">.......tab |
| 0700 | 6c 65 2c 20 74 68 2c 20 74 64 20 7b 0a 20 20 20 20 20 20 20 20 62 6f 72 64 65 72 2d 63 6f 6c 6c | le,.th,.td.{.........border-coll |
| 0720 | 61 70 73 65 3a 20 63 6f 6c 6c 61 70 73 65 3b 0a 20 20 20 20 20 20 20 20 62 6f 72 64 65 72 3a 20 | apse:.collapse;.........border:. |
| 0740 | 31 70 78 20 73 6f 6c 69 64 20 67 72 65 79 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 74 68 | 1px.solid.grey;.......}.......th |
| 0760 | 2c 20 74 64 20 7b 0a 20 20 20 20 20 20 20 20 70 61 64 64 69 6e 67 3a 20 30 2e 31 65 6d 3b 0a 20 | ,.td.{.........padding:.0.1em;.. |
| 0780 | 20 20 20 20 20 7d 0a 20 20 20 20 20 20 2e 74 30 5f 31 2c 20 2e 74 33 37 2c 20 2e 74 33 37 5f 31 | .....}........t0_1,..t37,..t37_1 |
| 07a0 | 20 7b 0a 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 | .{.........font-weight:.bold;... |
| 07c0 | 20 20 20 20 7d 0a 20 20 20 20 20 20 2e 74 32 5f 30 20 7b 0a 20 20 20 20 20 20 20 20 63 6f 6c 6f | ....}........t2_0.{.........colo |
| 07e0 | 72 3a 20 67 72 65 79 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 2e 74 33 31 5f 31 20 7b 0a | r:.grey;.......}........t31_1.{. |
| 0800 | 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 72 65 64 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 | ........color:.red;.......}..... |
| 0820 | 20 20 2e 74 33 32 5f 31 20 7b 0a 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 67 72 65 65 6e 3b | ...t32_1.{.........color:.green; |
| 0840 | 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 2e 74 33 36 5f 31 20 7b 0a 20 20 20 20 20 20 20 20 | .......}........t36_1.{......... |
| 0860 | 63 6f 6c 6f 72 3a 20 23 30 30 38 36 62 33 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 2e 66 | color:.#0086b3;.......}........f |
| 0880 | 69 6c 65 20 7b 0a 20 20 20 20 20 20 20 20 74 65 78 74 2d 64 65 63 6f 72 61 74 69 6f 6e 3a 20 75 | ile.{.........text-decoration:.u |
| 08a0 | 6e 64 65 72 6c 69 6e 65 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 63 6f 64 65 20 7b 0a 20 | nderline;.......}.......code.{.. |
| 08c0 | 20 20 20 20 20 20 20 66 6f 6e 74 2d 73 69 7a 65 3a 20 31 32 70 74 3b 0a 20 20 20 20 20 20 7d 0a | .......font-size:.12pt;.......}. |
| 08e0 | 20 20 20 20 20 20 70 72 65 20 3e 20 63 6f 64 65 20 7b 0a 20 20 20 20 20 20 20 20 64 69 73 70 6c | ......pre.>.code.{.........displ |
| 0900 | 61 79 3a 20 62 6c 6f 63 6b 3b 0a 20 20 20 20 20 20 20 20 6f 76 65 72 66 6c 6f 77 3a 20 61 75 74 | ay:.block;.........overflow:.aut |
| 0920 | 6f 3b 0a 0a 20 20 20 20 20 20 20 20 6f 76 65 72 66 6c 6f 77 2d 78 3a 20 61 75 74 6f 3b 0a 20 20 | o;..........overflow-x:.auto;... |
| 0940 | 20 20 20 20 20 20 70 61 64 64 69 6e 67 3a 20 30 2e 35 65 6d 3b 0a 20 20 20 20 20 20 20 20 63 6f | ......padding:.0.5em;.........co |
| 0960 | 6c 6f 72 3a 20 23 33 33 33 3b 0a 20 20 20 20 20 20 20 20 62 61 63 6b 67 72 6f 75 6e 64 3a 20 23 | lor:.#333;.........background:.# |
| 0980 | 66 38 66 38 66 38 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 2e 74 61 62 6c 65 2d 77 72 61 | f8f8f8;.......}........table-wra |
| 09a0 | 70 70 65 72 20 7b 0a 20 20 20 20 20 20 20 20 77 69 64 74 68 3a 20 31 30 30 25 3b 0a 20 20 20 20 | pper.{.........width:.100%;..... |
| 09c0 | 20 20 20 20 6f 76 65 72 66 6c 6f 77 2d 79 3a 20 61 75 74 6f 3b 0a 20 20 20 20 20 20 7d 0a 0a 20 | ....overflow-y:.auto;.......}... |
| 09e0 | 20 20 20 20 20 2e 74 6f 6b 2d 6b 77 20 7b 0a 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 | ......tok-kw.{...........color:. |
| 0a00 | 23 33 33 33 3b 0a 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 2d 77 65 69 67 68 74 3a 20 62 6f 6c | #333;...........font-weight:.bol |
| 0a20 | 64 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 2e 74 6f 6b 2d 73 74 72 20 7b 0a 20 20 20 20 | d;.......}........tok-str.{..... |
| 0a40 | 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 64 31 34 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 | ......color:.#d14;.......}...... |
| 0a60 | 20 2e 74 6f 6b 2d 62 75 69 6c 74 69 6e 20 7b 0a 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a | ..tok-builtin.{...........color: |
| 0a80 | 20 23 30 30 38 36 62 33 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 2e 74 6f 6b 2d 63 6f 6d | .#0086b3;.......}........tok-com |
| 0aa0 | 6d 65 6e 74 20 7b 0a 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 39 39 38 3b 0a 20 20 | ment.{...........color:.#998;... |
| 0ac0 | 20 20 20 20 20 20 20 20 66 6f 6e 74 2d 73 74 79 6c 65 3a 20 69 74 61 6c 69 63 3b 0a 20 20 20 20 | ........font-style:.italic;..... |
| 0ae0 | 20 20 7d 0a 20 20 20 20 20 20 2e 74 6f 6b 2d 66 6e 20 7b 0a 20 20 20 20 20 20 20 20 20 20 63 6f | ..}........tok-fn.{...........co |
| 0b00 | 6c 6f 72 3a 20 23 39 30 30 3b 0a 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 2d 77 65 69 67 68 74 | lor:.#900;...........font-weight |
| 0b20 | 3a 20 62 6f 6c 64 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 2e 74 6f 6b 2d 6e 75 6c 6c 20 | :.bold;.......}........tok-null. |
| 0b40 | 7b 0a 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 30 30 38 30 38 30 3b 0a 20 20 20 20 | {...........color:.#008080;..... |
| 0b60 | 20 20 7d 0a 20 20 20 20 20 20 2e 74 6f 6b 2d 6e 75 6d 62 65 72 20 7b 0a 20 20 20 20 20 20 20 20 | ..}........tok-number.{......... |
| 0b80 | 20 20 63 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 | ..color:.#008080;.......}....... |
| 0ba0 | 2e 74 6f 6b 2d 74 79 70 65 20 7b 0a 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 3a 20 23 34 35 | .tok-type.{...........color:.#45 |
| 0bc0 | 38 3b 0a 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 2d 77 65 69 67 68 74 3a 20 62 6f 6c 64 3b 0a | 8;...........font-weight:.bold;. |
| 0be0 | 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 2f 2a 20 44 65 73 6b 74 6f 70 20 2a 2f 0a 20 20 20 | ......}......../*.Desktop.*/.... |
| 0c00 | 20 20 20 40 6d 65 64 69 61 20 73 63 72 65 65 6e 20 61 6e 64 20 28 6d 69 6e 2d 77 69 64 74 68 3a | ...@media.screen.and.(min-width: |
| 0c20 | 20 35 36 2e 32 35 65 6d 29 20 7b 0a 20 20 20 20 20 20 20 20 23 6e 61 76 20 7b 0a 20 20 20 20 20 | .56.25em).{.........#nav.{...... |
| 0c40 | 20 20 20 20 20 77 69 64 74 68 3a 20 32 30 65 6d 3b 0a 20 20 20 20 20 20 20 20 20 20 68 65 69 67 | .....width:.20em;...........heig |
| 0c60 | 68 74 3a 20 31 30 30 25 3b 0a 20 20 20 20 20 20 20 20 20 20 70 6f 73 69 74 69 6f 6e 3a 20 66 69 | ht:.100%;...........position:.fi |
| 0c80 | 78 65 64 3b 0a 20 20 20 20 20 20 20 20 20 20 6f 76 65 72 66 6c 6f 77 2d 79 3a 20 73 63 72 6f 6c | xed;...........overflow-y:.scrol |
| 0ca0 | 6c 3b 0a 20 20 20 20 20 20 20 20 20 20 6c 65 66 74 3a 20 30 3b 0a 20 20 20 20 20 20 20 20 20 20 | l;...........left:.0;........... |
| 0cc0 | 74 6f 70 3a 20 32 65 6d 3b 0a 20 20 20 20 20 20 20 20 20 20 70 61 64 64 69 6e 67 2d 6c 65 66 74 | top:.2em;...........padding-left |
| 0ce0 | 3a 20 31 65 6d 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 23 63 6f 6e 74 65 6e | :.1em;.........}.........#conten |
| 0d00 | 74 73 20 7b 0a 20 20 20 20 20 20 20 20 20 20 6d 61 78 2d 77 69 64 74 68 3a 20 36 30 65 6d 3b 0a | ts.{...........max-width:.60em;. |
| 0d20 | 20 20 20 20 20 20 20 20 20 20 70 61 64 64 69 6e 67 2d 6c 65 66 74 3a 20 32 32 65 6d 3b 0a 20 20 | ..........padding-left:.22em;... |
| 0d40 | 20 20 20 20 20 20 20 20 70 61 64 64 69 6e 67 3a 20 31 65 6d 3b 0a 20 20 20 20 20 20 20 20 20 20 | ........padding:.1em;........... |
| 0d60 | 70 61 64 64 69 6e 67 2d 6c 65 66 74 3a 20 32 34 65 6d 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 | padding-left:.24em;.........}... |
| 0d80 | 20 20 20 20 7d 0a 20 20 20 20 20 20 2f 2a 20 4d 6f 62 69 6c 65 20 2a 2f 0a 20 20 20 20 20 20 40 | ....}......./*.Mobile.*/.......@ |
| 0da0 | 6d 65 64 69 61 20 73 63 72 65 65 6e 20 61 6e 64 20 28 6d 61 78 2d 77 69 64 74 68 3a 20 35 36 2e | media.screen.and.(max-width:.56. |
| 0dc0 | 32 35 65 6d 29 20 7b 0a 20 20 20 20 20 20 20 20 62 6f 64 79 2c 20 63 6f 64 65 20 7b 0a 20 20 20 | 25em).{.........body,.code.{.... |
| 0de0 | 20 20 20 20 20 20 20 66 6f 6e 74 2d 73 69 7a 65 3a 20 73 6d 61 6c 6c 3b 0a 20 20 20 20 20 20 20 | .......font-size:.small;........ |
| 0e00 | 20 7d 0a 20 20 20 20 20 20 20 20 23 6e 61 76 20 7b 0a 20 20 20 20 20 20 20 20 20 20 62 6f 72 64 | .}.........#nav.{...........bord |
| 0e20 | 65 72 2d 62 6f 74 74 6f 6d 3a 20 31 70 78 20 73 6f 6c 69 64 20 67 72 65 79 3b 0a 20 20 20 20 20 | er-bottom:.1px.solid.grey;...... |
| 0e40 | 20 20 20 7d 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 3c 2f 73 74 79 6c 65 3e 0a 20 20 3c 2f 68 65 | ...}.......}.....</style>...</he |
| 0e60 | 61 64 3e 0a 20 20 3c 62 6f 64 79 3e 0a 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a | ad>...<body>.....<a.href="https: |
| 0e80 | 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 31 2e | //ziglang.org/documentation/0.1. |
| 0ea0 | 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 74 74 70 73 3a 2f | 1/">0.1.1</a>.|.<a.href="https:/ |
| 0ec0 | 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 32 2e 30 | /ziglang.org/documentation/0.2.0 |
| 0ee0 | 2f 22 3e 30 2e 32 2e 30 3c 2f 61 3e 20 7c 0a 30 2e 33 2e 30 20 7c 0a 3c 61 20 68 72 65 66 3d 22 | /">0.2.0</a>.|.0.3.0.|.<a.href=" |
| 0f00 | 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 |
| 0f20 | 6e 2f 30 2e 34 2e 30 2f 22 3e 30 2e 34 2e 30 3c 2f 61 3e 20 7c 0a 3c 61 20 68 72 65 66 3d 22 68 | n/0.4.0/">0.4.0</a>.|.<a.href="h |
| 0f40 | 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 |
| 0f60 | 2f 30 2e 35 2e 30 2f 22 3e 30 2e 35 2e 30 3c 2f 61 3e 20 7c 0a 3c 61 20 68 72 65 66 3d 22 68 74 | /0.5.0/">0.5.0</a>.|.<a.href="ht |
| 0f80 | 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/ |
| 0fa0 | 30 2e 36 2e 30 2f 22 3e 30 2e 36 2e 30 3c 2f 61 3e 20 7c 0a 3c 61 20 68 72 65 66 3d 22 68 74 74 | 0.6.0/">0.6.0</a>.|.<a.href="htt |
| 0fc0 | 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 |
| 0fe0 | 2e 37 2e 31 2f 22 3e 30 2e 37 2e 31 3c 2f 61 3e 20 7c 0a 3c 61 20 68 72 65 66 3d 22 68 74 74 70 | .7.1/">0.7.1</a>.|.<a.href="http |
| 1000 | 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. |
| 1020 | 38 2e 31 2f 22 3e 30 2e 38 2e 31 3c 2f 61 3e 20 7c 0a 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 | 8.1/">0.8.1</a>.|.<a.href="https |
| 1040 | 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 39 | ://ziglang.org/documentation/0.9 |
| 1060 | 2e 31 2f 22 3e 30 2e 39 2e 31 3c 2f 61 3e 20 7c 0a 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a | .1/">0.9.1</a>.|.<a.href="https: |
| 1080 | 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 31 30 | //ziglang.org/documentation/0.10 |
| 10a0 | 2e 31 2f 22 3e 30 2e 31 30 2e 31 3c 2f 61 3e 20 7c 0a 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 | .1/">0.10.1</a>.|.<a.href="https |
| 10c0 | 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 31 | ://ziglang.org/documentation/0.1 |
| 10e0 | 31 2e 30 2f 22 3e 30 2e 31 31 2e 30 3c 2f 61 3e 20 7c 0a 3c 61 20 68 72 65 66 3d 22 68 74 74 70 | 1.0/">0.11.0</a>.|.<a.href="http |
| 1100 | 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. |
| 1120 | 31 32 2e 31 2f 22 3e 30 2e 31 32 2e 31 3c 2f 61 3e 20 7c 0a 3c 61 20 68 72 65 66 3d 22 68 74 74 | 12.1/">0.12.1</a>.|.<a.href="htt |
| 1140 | 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 |
| 1160 | 2e 31 33 2e 30 2f 22 3e 30 2e 31 33 2e 30 3c 2f 61 3e 20 7c 0a 3c 61 20 68 72 65 66 3d 22 68 74 | .13.0/">0.13.0</a>.|.<a.href="ht |
| 1180 | 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/ |
| 11a0 | 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 72 65 66 3d 22 68 | 0.14.1/">0.14.1</a>.|.<a.href="h |
| 11c0 | 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 |
| 11e0 | 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 68 72 65 66 3d 22 | /0.15.2/">0.15.2</a>.|.<a.href=" |
| 1200 | 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 |
| 1220 | 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 20 68 72 65 66 3d | n/0.16.0/">0.16.0</a>.|.<a.href= |
| 1240 | 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 |
| 1260 | 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 20 3c 64 69 76 20 | on/master/">master</a>.....<div. |
| 1280 | 69 64 3d 22 6e 61 76 22 3e 0a 20 20 20 20 20 20 3c 68 33 3e 49 6e 64 65 78 3c 2f 68 33 3e 0a 20 | id="nav">.......<h3>Index</h3>.. |
| 12a0 | 20 20 20 20 20 0a 0a 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 | ...........<ul>.........<li><a.h |
| 12c0 | 72 65 66 3d 22 23 49 6e 74 72 6f 64 75 63 74 69 6f 6e 22 3e 49 6e 74 72 6f 64 75 63 74 69 6f 6e | ref="#Introduction">Introduction |
| 12e0 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 | </a></li>.........<li><a.href="# |
| 1300 | 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 3c 2f 6c 69 | Hello-World">Hello.World</a></li |
| 1320 | 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 43 6f 6d 6d 65 6e 74 73 | >.........<li><a.href="#Comments |
| 1340 | 22 3e 43 6f 6d 6d 65 6e 74 73 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 | ">Comments</a>.........<ul>..... |
| 1360 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 44 6f 63 2d 63 6f 6d 6d 65 6e | ........<li><a.href="#Doc-commen |
| 1380 | 74 73 22 3e 44 6f 63 20 63 6f 6d 6d 65 6e 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | ts">Doc.comments</a></li>....... |
| 13a0 | 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 68 72 65 66 | ..</ul></li>.........<li><a.href |
| 13c0 | 3d 22 23 56 61 6c 75 65 73 22 3e 56 61 6c 75 65 73 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 | ="#Values">Values</a>.........<u |
| 13e0 | 6c 3e 0a 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 | l>.............<li><a.href="#Pri |
| 1400 | 6d 69 74 69 76 65 2d 54 79 70 65 73 22 3e 50 72 69 6d 69 74 69 76 65 20 54 79 70 65 73 3c 2f 61 | mitive-Types">Primitive.Types</a |
| 1420 | 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 68 72 65 66 3d 22 | ></li>.............<li><a.href=" |
| 1440 | 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 61 6c | #Primitive-Values">Primitive.Val |
| 1460 | 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 61 20 | ues</a></li>.............<li><a. |
| 1480 | 68 72 65 66 3d 22 23 53 74 72 69 6e 67 2d 4c 69 74 65 72 61 6c 73 22 3e 53 74 72 69 6e 67 20 4c | href="#String-Literals">String.L |
| 14a0 | 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>.... |
| 14c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 73 63 61 70 | .............<li><a.href="#Escap |
| 14e0 | 65 2d 53 65 71 75 65 6e 63 65 73 22 3e 45 73 63 61 70 65 20 53 65 71 75 65 6e 63 65 73 3c 2f 61 | e-Sequences">Escape.Sequences</a |
| 1500 | 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 68 72 | ></li>.................<li><a.hr |
| 1520 | 65 66 3d 22 23 4d 75 6c 74 69 6c 69 6e 65 2d 53 74 72 69 6e 67 2d 4c 69 74 65 72 61 6c 73 22 3e | ef="#Multiline-String-Literals"> |
| 1540 | 4d 75 6c 74 69 6c 69 6e 65 20 53 74 72 69 6e 67 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 3c 2f 6c | Multiline.String.Literals</a></l |
| 1560 | 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | i>.............</ul></li>....... |
| 1580 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 41 73 73 69 67 6e 6d 65 6e 74 22 3e | ......<li><a.href="#Assignment"> |
| 15a0 | 41 73 73 69 67 6e 6d 65 6e 74 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a | Assignment</a>.............<ul>. |
| 15c0 | 20 20 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 75 6e | ................<li><a.href="#un |
| 15e0 | 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 20 20 20 20 | defined">undefined</a></li>..... |
| 1600 | 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 2f 75 6c 3e | ........</ul></li>.........</ul> |
| 1620 | 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 49 6e 74 65 | </li>.........<li><a.href="#Inte |
| 1640 | 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 20 20 3c 75 6c 3e 0a | gers">Integers</a>.........<ul>. |
| 1660 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 | ............<li><a.href="#Intege |
| 1680 | 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 3e | r-Literals">Integer.Literals</a> |
| 16a0 | 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 68 72 65 66 3d 22 23 | </li>.............<li><a.href="# |
| 16c0 | 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. |
| 16e0 | 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 20 | Integer.Values</a></li>......... |
| 1700 | 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 68 72 65 66 3d 22 | </ul></li>.........<li><a.href=" |
| 1720 | 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e | #Floats">Floats</a>.........<ul> |
| 1740 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 | .............<li><a.href="#Float |
| 1760 | 2d 4c 69 74 65 72 61 6c 73 22 3e 46 6c 6f 61 74 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 3c 2f 6c | -Literals">Float.Literals</a></l |
| 1780 | 69 3e 0a 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 | i>.............<li><a.href="#Flo |
| 17a0 | 61 74 69 6e 67 2d 50 6f 69 6e 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 46 6c 6f 61 74 69 6e 67 | ating-Point-Operations">Floating |
| 17c0 | 20 50 6f 69 6e 74 20 4f 70 65 72 61 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | .Point.Operations</a></li>...... |
| 17e0 | 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 68 72 65 | ...</ul></li>.........<li><a.hre |
| 1800 | 66 3d 22 23 4f 70 65 72 61 74 6f 72 73 22 3e 4f 70 65 72 61 74 6f 72 73 3c 2f 61 3e 0a 20 20 20 | f="#Operators">Operators</a>.... |
| 1820 | 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 68 72 65 | .....<ul>.............<li><a.hre |
| 1840 | 66 3d 22 23 54 61 62 6c 65 2d 6f 66 2d 4f 70 65 72 61 74 6f 72 73 22 3e 54 61 62 6c 65 20 6f 66 | f="#Table-of-Operators">Table.of |
| 1860 | 20 4f 70 65 72 61 74 6f 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | .Operators</a></li>............. |
| 1880 | 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 50 72 65 63 65 64 65 6e 63 65 22 3e 50 72 65 63 65 64 | <li><a.href="#Precedence">Preced |
| 18a0 | 65 6e 63 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e | ence</a></li>.........</ul></li> |
| 18c0 | 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 41 72 72 61 79 73 22 3e 41 | .........<li><a.href="#Arrays">A |
| 18e0 | 72 72 61 79 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 68 72 | rrays</a></li>.........<li><a.hr |
| 1900 | 65 66 3d 22 23 50 6f 69 6e 74 65 72 73 22 3e 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 0a 20 20 20 20 | ef="#Pointers">Pointers</a>..... |
| 1920 | 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 68 72 65 66 | ....<ul>.............<li><a.href |
| 1940 | 3d 22 23 41 6c 69 67 6e 6d 65 6e 74 22 3e 41 6c 69 67 6e 6d 65 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e | ="#Alignment">Alignment</a></li> |
| 1960 | 0a 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 54 79 70 65 2d | .............<li><a.href="#Type- |
| 1980 | 42 61 73 65 64 2d 41 6c 69 61 73 2d 41 6e 61 6c 79 73 69 73 22 3e 54 79 70 65 20 42 61 73 65 64 | Based-Alias-Analysis">Type.Based |
| 19a0 | 20 41 6c 69 61 73 20 41 6e 61 6c 79 73 69 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | .Alias.Analysis</a></li>........ |
| 19c0 | 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 68 72 65 66 3d | .</ul></li>.........<li><a.href= |
| 19e0 | 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 20 20 20 20 20 20 | "#Slices">Slices</a></li>....... |
| 1a00 | 20 20 3c 6c 69 3e 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 | ..<li><a.href="#struct">struct</ |
| 1a20 | 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> |
| 1a40 | 3c 61 20 68 72 65 66 3d 22 23 70 61 63 6b 65 64 2d 73 74 72 75 63 74 22 3e 70 61 63 6b 65 64 20 | <a.href="#packed-struct">packed. |
| 1a60 | 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 6c 69 3e | struct</a></li>.............<li> |
| 1a80 | 3c 61 20 68 72 65 66 3d 22 23 73 74 72 75 63 74 2d 4e 61 6d 69 6e 67 22 3e 73 74 72 75 63 74 20 | <a.href="#struct-Naming">struct. |
| 1aa0 | 4e 61 6d 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 3e 3c 2f 6c | Naming</a></li>.........</ul></l |
| 1ac0 | 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 65 6e 75 6d 22 3e 65 | i>.........<li><a.href="#enum">e |
| 1ae0 | 6e 75 6d 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | num</a>.........<ul>............ |
| 1b00 | 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 65 78 74 65 72 6e 2d 65 6e 75 6d 22 3e 65 78 74 65 | .<li><a.href="#extern-enum">exte |
| 1b20 | 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 20 20 20 3c 6c 69 | rn.enum</a></li>.............<li |
| 1b40 | 3e 3c 61 20 68 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 | ><a.href="#packed-enum">packed.e |
| 1b60 | 6e 75 6d 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a | num</a></li>.........</ul></li>. |
| 1b80 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 75 6e 69 6f 6e 22 3e 75 6e 69 | ........<li><a.href="#union">uni |
| 1ba0 | 6f 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d | on</a></li>.........<li><a.href= |
| 1bc0 | 22 23 62 6c 6f 63 6b 73 22 3e 62 6c 6f 63 6b 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | "#blocks">blocks</a></li>....... |
| 1be0 | 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 77 69 74 63 68 22 3e 73 77 69 74 63 68 3c 2f | ..<li><a.href="#switch">switch</ |
| 1c00 | 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 77 68 | a></li>.........<li><a.href="#wh |
| 1c20 | 69 6c 65 22 3e 77 68 69 6c 65 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 | ile">while</a>.........<ul>..... |
| 1c40 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 4c 61 62 65 6c 65 64 2d 77 68 | ........<li><a.href="#Labeled-wh |
| 1c60 | 69 6c 65 22 3e 4c 61 62 65 6c 65 64 20 77 68 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | ile">Labeled.while</a></li>..... |
| 1c80 | 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 2d 77 69 74 68 | ........<li><a.href="#while-with |
| 1ca0 | 2d 4f 70 74 69 6f 6e 61 6c 73 22 3e 77 68 69 6c 65 20 77 69 74 68 20 4f 70 74 69 6f 6e 61 6c 73 | -Optionals">while.with.Optionals |
| 1cc0 | 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 68 72 65 | </a></li>.............<li><a.hre |
| 1ce0 | 66 3d 22 23 77 68 69 6c 65 2d 77 69 74 68 2d 45 72 72 6f 72 2d 55 6e 69 6f 6e 73 22 3e 77 68 69 | f="#while-with-Error-Unions">whi |
| 1d00 | 6c 65 20 77 69 74 68 20 45 72 72 6f 72 20 55 6e 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | le.with.Error.Unions</a></li>... |
| 1d20 | 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 6c 69 6e 65 2d 77 | ..........<li><a.href="#inline-w |
| 1d40 | 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 20 20 20 | hile">inline.while</a></li>..... |
| 1d60 | 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 68 72 | ....</ul></li>.........<li><a.hr |
| 1d80 | 65 66 3d 22 23 66 6f 72 22 3e 66 6f 72 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 | ef="#for">for</a>.........<ul>.. |
| 1da0 | 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 4c 61 62 65 6c 65 64 | ...........<li><a.href="#Labeled |
| 1dc0 | 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 20 20 20 20 20 | -for">Labeled.for</a></li>...... |
| 1de0 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 69 6e 6c 69 6e 65 2d 66 6f 72 22 | .......<li><a.href="#inline-for" |
| 1e00 | 3e 69 6e 6c 69 6e 65 20 66 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 | >inline.for</a></li>.........</u |
| 1e20 | 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 69 66 | l></li>.........<li><a.href="#if |
| 1e40 | 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 61 20 68 72 65 | ">if</a></li>.........<li><a.hre |
| 1e60 | 66 3d 22 23 64 65 66 65 72 22 3e 64 65 66 65 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | f="#defer">defer</a></li>....... |
| 1e80 | 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 75 6e 72 65 61 63 68 61 62 6c 65 22 3e 75 6e 72 | ..<li><a.href="#unreachable">unr |
| 1ea0 | 65 61 63 68 61 62 6c 65 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 | eachable</a>.........<ul>....... |
| 1ec0 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 42 61 73 69 63 73 22 3e 42 61 73 69 | ......<li><a.href="#Basics">Basi |
| 1ee0 | 63 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 68 | cs</a></li>.............<li><a.h |
| 1f00 | 72 65 66 3d 22 23 41 74 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 22 3e 41 74 20 43 6f 6d 70 69 6c | ref="#At-Compile-Time">At.Compil |
| 1f20 | 65 2d 54 69 6d 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c | e-Time</a></li>.........</ul></l |
| 1f40 | 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 6e 6f 72 65 74 75 72 | i>.........<li><a.href="#noretur |
| 1f60 | 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 20 3c 6c 69 | n">noreturn</a></li>.........<li |
| 1f80 | 3e 3c 61 20 68 72 65 66 3d 22 23 46 75 6e 63 74 69 6f 6e 73 22 3e 46 75 6e 63 74 69 6f 6e 73 3c | ><a.href="#Functions">Functions< |
| 1fa0 | 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 |
| 1fc0 | 3e 3c 61 20 68 72 65 66 3d 22 23 50 61 73 73 2d 62 79 2d 76 61 6c 75 65 2d 50 61 72 61 6d 65 74 | ><a.href="#Pass-by-value-Paramet |
| 1fe0 | 65 72 73 22 3e 50 61 73 73 2d 62 79 2d 76 61 6c 75 65 20 50 61 72 61 6d 65 74 65 72 73 3c 2f 61 | ers">Pass-by-value.Parameters</a |
| 2000 | 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 68 72 65 66 3d 22 | ></li>.............<li><a.href=" |
| 2020 | 23 46 75 6e 63 74 69 6f 6e 2d 52 65 66 6c 65 63 74 69 6f 6e 22 3e 46 75 6e 63 74 69 6f 6e 20 52 | #Function-Reflection">Function.R |
| 2040 | 65 66 6c 65 63 74 69 6f 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e | eflection</a></li>.........</ul> |
| 2060 | 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 45 72 72 6f | </li>.........<li><a.href="#Erro |
| 2080 | 72 73 22 3e 45 72 72 6f 72 73 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 | rs">Errors</a>.........<ul>..... |
| 20a0 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 53 65 74 2d | ........<li><a.href="#Error-Set- |
| 20c0 | 54 79 70 65 22 3e 45 72 72 6f 72 20 53 65 74 20 54 79 70 65 3c 2f 61 3e 0a 20 20 20 20 20 20 20 | Type">Error.Set.Type</a>........ |
| 20e0 | 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 | .....<ul>.................<li><a |
| 2100 | 20 68 72 65 66 3d 22 23 54 68 65 2d 47 6c 6f 62 61 6c 2d 45 72 72 6f 72 2d 53 65 74 22 3e 54 68 | .href="#The-Global-Error-Set">Th |
| 2120 | 65 20 47 6c 6f 62 61 6c 20 45 72 72 6f 72 20 53 65 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | e.Global.Error.Set</a></li>..... |
| 2140 | 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | ........</ul></li>.............< |
| 2160 | 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 79 70 65 22 3e 45 | li><a.href="#Error-Union-Type">E |
| 2180 | 72 72 6f 72 20 55 6e 69 6f 6e 20 54 79 70 65 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | rror.Union.Type</a>............. |
| 21a0 | 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 | <ul>.................<li><a.href |
| 21c0 | 3d 22 23 63 61 74 63 68 22 3e 63 61 74 63 68 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | ="#catch">catch</a></li>........ |
| 21e0 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 74 72 79 22 3e 74 72 79 3c | .........<li><a.href="#try">try< |
| 2200 | 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 | /a></li>.................<li><a. |
| 2220 | 68 72 65 66 3d 22 23 65 72 72 64 65 66 65 72 22 3e 65 72 72 64 65 66 65 72 3c 2f 61 3e 3c 2f 6c | href="#errdefer">errdefer</a></l |
| 2240 | 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 68 72 65 66 3d 22 | i>.................<li><a.href=" |
| 2260 | 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 72 72 | #Merging-Error-Sets">Merging.Err |
| 2280 | 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 20 20 20 | or.Sets</a></li>................ |
| 22a0 | 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 66 65 72 72 65 64 2d 45 72 72 6f 72 2d 53 65 | .<li><a.href="#Inferred-Error-Se |
| 22c0 | 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 3c 2f 6c 69 3e | ts">Inferred.Error.Sets</a></li> |
| 22e0 | 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>......... |
| 2300 | 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 52 65 74 75 72 6e 2d 54 | ....<li><a.href="#Error-Return-T |
| 2320 | 72 61 63 65 73 22 3e 45 72 72 6f 72 20 52 65 74 75 72 6e 20 54 72 61 63 65 73 3c 2f 61 3e 0a 20 | races">Error.Return.Traces</a>.. |
| 2340 | 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>................. |
| 2360 | 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 2d 44 65 74 | <li><a.href="#Implementation-Det |
| 2380 | 61 69 6c 73 22 3e 49 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 44 65 74 61 69 6c 73 3c 2f 61 3e | ails">Implementation.Details</a> |
| 23a0 | 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 | </li>.............</ul></li>.... |
| 23c0 | 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 68 | .....</ul></li>.........<li><a.h |
| 23e0 | 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>.. |
| 2400 | 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 68 | .......<ul>.............<li><a.h |
| 2420 | 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 2d 54 79 70 65 22 3e 4f 70 74 69 6f 6e 61 6c 20 54 79 | ref="#Optional-Type">Optional.Ty |
| 2440 | 70 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 | pe</a></li>.............<li><a.h |
| 2460 | 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 20 20 20 20 20 | ref="#null">null</a></li>....... |
| 2480 | 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 68 72 65 66 | ..</ul></li>.........<li><a.href |
| 24a0 | 3d 22 23 43 61 73 74 69 6e 67 22 3e 43 61 73 74 69 6e 67 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 | ="#Casting">Casting</a>......... |
| 24c0 | 3c 75 6c 3e 0a 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 | <ul>.............<li><a.href="#I |
| 24e0 | 6d 70 6c 69 63 69 74 2d 43 61 73 74 73 22 3e 49 6d 70 6c 69 63 69 74 20 43 61 73 74 73 3c 2f 61 | mplicit-Casts">Implicit.Casts</a |
| 2500 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | >.............<ul>.............. |
| 2520 | 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6d 70 6c 69 63 69 74 2d 43 61 73 74 2d 53 | ...<li><a.href="#Implicit-Cast-S |
| 2540 | 74 72 69 63 74 65 72 2d 51 75 61 6c 69 66 69 63 61 74 69 6f 6e 22 3e 49 6d 70 6c 69 63 69 74 20 | tricter-Qualification">Implicit. |
| 2560 | 43 61 73 74 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 | Cast:.Stricter.Qualification</a> |
| 2580 | 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 68 72 65 | </li>.................<li><a.hre |
| 25a0 | 66 3d 22 23 49 6d 70 6c 69 63 69 74 2d 43 61 73 74 2d 49 6e 74 65 67 65 72 2d 61 6e 64 2d 46 6c | f="#Implicit-Cast-Integer-and-Fl |
| 25c0 | 6f 61 74 2d 57 69 64 65 6e 69 6e 67 22 3e 49 6d 70 6c 69 63 69 74 20 43 61 73 74 3a 20 49 6e 74 | oat-Widening">Implicit.Cast:.Int |
| 25e0 | 65 67 65 72 20 61 6e 64 20 46 6c 6f 61 74 20 57 69 64 65 6e 69 6e 67 3c 2f 61 3e 3c 2f 6c 69 3e | eger.and.Float.Widening</a></li> |
| 2600 | 0a 20 20 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 | .................<li><a.href="#I |
| 2620 | 6d 70 6c 69 63 69 74 2d 43 61 73 74 2d 41 72 72 61 79 73 22 3e 49 6d 70 6c 69 63 69 74 20 43 61 | mplicit-Cast-Arrays">Implicit.Ca |
| 2640 | 73 74 3a 20 41 72 72 61 79 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | st:.Arrays</a></li>............. |
| 2660 | 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6d 70 6c 69 63 69 74 2d 43 61 73 74 2d | ....<li><a.href="#Implicit-Cast- |
| 2680 | 4f 70 74 69 6f 6e 61 6c 73 22 3e 49 6d 70 6c 69 63 69 74 20 43 61 73 74 3a 20 4f 70 74 69 6f 6e | Optionals">Implicit.Cast:.Option |
| 26a0 | 61 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | als</a></li>.................<li |
| 26c0 | 3e 3c 61 20 68 72 65 66 3d 22 23 49 6d 70 6c 69 63 69 74 2d 43 61 73 74 2d 54 2d 74 6f 2d 45 54 | ><a.href="#Implicit-Cast-T-to-ET |
| 26e0 | 22 3e 49 6d 70 6c 69 63 69 74 20 43 61 73 74 3a 20 54 20 74 6f 20 45 21 54 3c 2f 61 3e 3c 2f 6c | ">Implicit.Cast:.T.to.E!T</a></l |
| 2700 | 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 68 72 65 66 3d 22 | i>.................<li><a.href=" |
| 2720 | 23 49 6d 70 6c 69 63 69 74 2d 43 61 73 74 2d 45 2d 74 6f 2d 45 54 22 3e 49 6d 70 6c 69 63 69 74 | #Implicit-Cast-E-to-ET">Implicit |
| 2740 | 20 43 61 73 74 3a 20 45 20 74 6f 20 45 21 54 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | .Cast:.E.to.E!T</a></li>........ |
| 2760 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6d 70 6c 69 63 69 74 2d | .........<li><a.href="#Implicit- |
| 2780 | 43 61 73 74 2d 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 2d 74 6f 2d 63 6f 6e 73 74 2d 69 6e 74 65 67 | Cast-comptime_int-to-const-integ |
| 27a0 | 65 72 22 3e 49 6d 70 6c 69 63 69 74 20 43 61 73 74 3a 20 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 20 | er">Implicit.Cast:.comptime_int. |
| 27c0 | 74 6f 20 2a 63 6f 6e 73 74 20 69 6e 74 65 67 65 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | to.*const.integer</a></li>...... |
| 27e0 | 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 6d 70 6c 69 63 69 | ...........<li><a.href="#Implici |
| 2800 | 74 2d 43 61 73 74 2d 63 6f 6d 70 74 69 6d 65 5f 66 6c 6f 61 74 2d 74 6f 2d 63 6f 6e 73 74 2d 66 | t-Cast-comptime_float-to-const-f |
| 2820 | 6c 6f 61 74 22 3e 49 6d 70 6c 69 63 69 74 20 43 61 73 74 3a 20 63 6f 6d 70 74 69 6d 65 5f 66 6c | loat">Implicit.Cast:.comptime_fl |
| 2840 | 6f 61 74 20 74 6f 20 2a 63 6f 6e 73 74 20 66 6c 6f 61 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | oat.to.*const.float</a></li>.... |
| 2860 | 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 6d 70 6c 69 | .............<li><a.href="#Impli |
| 2880 | 63 69 74 2d 43 61 73 74 2d 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2d 6b 6e 6f 77 6e 2d 6e 75 6d 62 | cit-Cast-compile-time-known-numb |
| 28a0 | 65 72 73 22 3e 49 6d 70 6c 69 63 69 74 20 43 61 73 74 3a 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 | ers">Implicit.Cast:.compile-time |
| 28c0 | 20 6b 6e 6f 77 6e 20 6e 75 6d 62 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | .known.numbers</a></li>......... |
| 28e0 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6d 70 6c 69 63 69 74 2d 43 | ........<li><a.href="#Implicit-C |
| 2900 | 61 73 74 2d 75 6e 69 6f 6e 2d 74 6f 2d 65 6e 75 6d 22 3e 49 6d 70 6c 69 63 69 74 20 43 61 73 74 | ast-union-to-enum">Implicit.Cast |
| 2920 | 3a 20 75 6e 69 6f 6e 20 74 6f 20 65 6e 75 6d 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | :.union.to.enum</a></li>........ |
| 2940 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6d 70 6c 69 63 69 74 2d | .........<li><a.href="#Implicit- |
| 2960 | 43 61 73 74 2d 65 6e 75 6d 2d 74 6f 2d 75 6e 69 6f 6e 22 3e 49 6d 70 6c 69 63 69 74 20 43 61 73 | Cast-enum-to-union">Implicit.Cas |
| 2980 | 74 3a 20 65 6e 75 6d 20 74 6f 20 75 6e 69 6f 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | t:.enum.to.union</a></li>....... |
| 29a0 | 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 6d 70 6c 69 63 69 74 | ..........<li><a.href="#Implicit |
| 29c0 | 2d 43 61 73 74 2d 54 2d 74 6f 2d 54 2d 77 68 65 6e 2d 73 69 7a 65 4f 66 54 2d 2d 22 3e 49 6d 70 | -Cast-T-to-T-when-sizeOfT--">Imp |
| 29e0 | 6c 69 63 69 74 20 43 61 73 74 3a 20 54 20 74 6f 20 2a 54 20 77 68 65 6e 20 40 73 69 7a 65 4f 66 | licit.Cast:.T.to.*T.when.@sizeOf |
| 2a00 | 28 54 29 20 3d 3d 20 30 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | (T).==.0</a></li>............... |
| 2a20 | 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6d 70 6c 69 63 69 74 2d 43 61 73 74 2d 75 6e | ..<li><a.href="#Implicit-Cast-un |
| 2a40 | 64 65 66 69 6e 65 64 22 3e 49 6d 70 6c 69 63 69 74 20 43 61 73 74 3a 20 75 6e 64 65 66 69 6e 65 | defined">Implicit.Cast:.undefine |
| 2a60 | 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | d</a></li>.................<li>< |
| 2a80 | 61 20 68 72 65 66 3d 22 23 49 6d 70 6c 69 63 69 74 2d 43 61 73 74 2d 54 2d 74 6f 2d 63 6f 6e 73 | a.href="#Implicit-Cast-T-to-cons |
| 2aa0 | 74 2d 54 22 3e 49 6d 70 6c 69 63 69 74 20 43 61 73 74 3a 20 54 20 74 6f 20 2a 63 6f 6e 73 74 20 | t-T">Implicit.Cast:.T.to.*const. |
| 2ac0 | 54 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 |
| 2ae0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 78 70 6c | >.............<li><a.href="#Expl |
| 2b00 | 69 63 69 74 2d 43 61 73 74 73 22 3e 45 78 70 6c 69 63 69 74 20 43 61 73 74 73 3c 2f 61 3e 3c 2f | icit-Casts">Explicit.Casts</a></ |
| 2b20 | 6c 69 3e 0a 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 65 | li>.............<li><a.href="#Pe |
| 2b40 | 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 |
| 2b60 | 73 6f 6c 75 74 69 6f 6e 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c | solution</a></li>.........</ul>< |
| 2b80 | 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 76 6f 69 64 22 | /li>.........<li><a.href="#void" |
| 2ba0 | 3e 76 6f 69 64 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 | >void</a></li>.........<li><a.hr |
| 2bc0 | 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 0a 20 20 20 20 | ef="#comptime">comptime</a>..... |
| 2be0 | 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 68 72 65 66 | ....<ul>.............<li><a.href |
| 2c00 | 3d 22 23 49 6e 74 72 6f 64 75 63 69 6e 67 2d 74 68 65 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d | ="#Introducing-the-Compile-Time- |
| 2c20 | 43 6f 6e 63 65 70 74 22 3e 49 6e 74 72 6f 64 75 63 69 6e 67 20 74 68 65 20 43 6f 6d 70 69 6c 65 | Concept">Introducing.the.Compile |
| 2c40 | 2d 54 69 6d 65 20 43 6f 6e 63 65 70 74 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 | -Time.Concept</a>.............<u |
| 2c60 | 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 | l>.................<li><a.href=" |
| 2c80 | 23 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 50 61 72 61 6d 65 74 65 72 73 22 3e 43 6f 6d 70 69 6c | #Compile-Time-Parameters">Compil |
| 2ca0 | 65 2d 54 69 6d 65 20 50 61 72 61 6d 65 74 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | e-Time.Parameters</a></li>...... |
| 2cc0 | 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 43 6f 6d 70 69 6c 65 | ...........<li><a.href="#Compile |
| 2ce0 | 2d 54 69 6d 65 2d 56 61 72 69 61 62 6c 65 73 22 3e 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 20 56 61 | -Time-Variables">Compile-Time.Va |
| 2d00 | 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 20 20 20 | riables</a></li>................ |
| 2d20 | 20 3c 6c 69 3e 3c 61 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 | .<li><a.href="#Compile-Time-Expr |
| 2d40 | 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 73 69 6f 6e | essions">Compile-Time.Expression |
| 2d60 | 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 |
| 2d80 | 3e 0a 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 47 65 6e 65 | >.............<li><a.href="#Gene |
| 2da0 | 72 69 63 2d 44 61 74 61 2d 53 74 72 75 63 74 75 72 65 73 22 3e 47 65 6e 65 72 69 63 20 44 61 74 | ric-Data-Structures">Generic.Dat |
| 2dc0 | 61 20 53 74 72 75 63 74 75 72 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | a.Structures</a></li>........... |
| 2de0 | 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 43 61 73 65 2d 53 74 75 64 79 2d 70 72 69 6e 74 | ..<li><a.href="#Case-Study-print |
| 2e00 | 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. |
| 2e20 | 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>. |
| 2e40 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 41 73 73 65 6d 62 6c 79 22 3e | ........<li><a.href="#Assembly"> |
| 2e60 | 41 73 73 65 6d 62 6c 79 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 | Assembly</a></li>.........<li><a |
| 2e80 | 20 68 72 65 66 3d 22 23 41 74 6f 6d 69 63 73 22 3e 41 74 6f 6d 69 63 73 3c 2f 61 3e 3c 2f 6c 69 | .href="#Atomics">Atomics</a></li |
| 2ea0 | 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 43 6f 72 6f 75 74 69 6e | >.........<li><a.href="#Coroutin |
| 2ec0 | 65 73 22 3e 43 6f 72 6f 75 74 69 6e 65 73 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a | es">Coroutines</a>.........<ul>. |
| 2ee0 | 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 4d 69 6e 69 6d 61 | ............<li><a.href="#Minima |
| 2f00 | 6c 2d 43 6f 72 6f 75 74 69 6e 65 2d 45 78 61 6d 70 6c 65 22 3e 4d 69 6e 69 6d 61 6c 20 43 6f 72 | l-Coroutine-Example">Minimal.Cor |
| 2f20 | 6f 75 74 69 6e 65 20 45 78 61 6d 70 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | outine.Example</a></li>......... |
| 2f40 | 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 53 75 73 70 65 6e 64 2d 61 6e 64 2d 52 65 | ....<li><a.href="#Suspend-and-Re |
| 2f60 | 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 0a 20 20 20 | sume">Suspend.and.Resume</a>.... |
| 2f80 | 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 |
| 2fa0 | 69 3e 3c 61 20 68 72 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 | i><a.href="#Resuming-from-Suspen |
| 2fc0 | 64 2d 42 6c 6f 63 6b 73 22 3e 52 65 73 75 6d 69 6e 67 20 66 72 6f 6d 20 53 75 73 70 65 6e 64 20 | d-Blocks">Resuming.from.Suspend. |
| 2fe0 | 42 6c 6f 63 6b 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 | Blocks</a></li>.............</ul |
| 3000 | 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 68 72 65 66 3d 22 | ></li>.............<li><a.href=" |
| 3020 | 23 41 77 61 69 74 22 3e 41 77 61 69 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | #Await">Await</a></li>.......... |
| 3040 | 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 4f 70 65 6e 2d 49 73 73 75 65 73 22 3e 4f 70 | ...<li><a.href="#Open-Issues">Op |
| 3060 | 65 6e 20 49 73 73 75 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e | en.Issues</a></li>.........</ul> |
| 3080 | 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 42 75 69 6c | </li>.........<li><a.href="#Buil |
| 30a0 | 74 69 6e 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 42 75 69 6c 74 69 6e 20 46 75 6e 63 74 69 6f 6e 73 | tin-Functions">Builtin.Functions |
| 30c0 | 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 |
| 30e0 | 69 3e 3c 61 20 68 72 65 66 3d 22 23 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 40 61 64 | i><a.href="#addWithOverflow">@ad |
| 3100 | 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | dWithOverflow</a></li>.......... |
| 3120 | 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 41 72 67 54 79 70 65 22 3e 40 41 72 67 54 79 | ...<li><a.href="#ArgType">@ArgTy |
| 3140 | 70 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 | pe</a></li>.............<li><a.h |
| 3160 | 72 65 66 3d 22 23 61 74 6f 6d 69 63 4c 6f 61 64 22 3e 40 61 74 6f 6d 69 63 4c 6f 61 64 3c 2f 61 | ref="#atomicLoad">@atomicLoad</a |
| 3180 | 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 68 72 65 66 3d 22 | ></li>.............<li><a.href=" |
| 31a0 | 23 61 74 6f 6d 69 63 52 6d 77 22 3e 40 61 74 6f 6d 69 63 52 6d 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a | #atomicRmw">@atomicRmw</a></li>. |
| 31c0 | 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 62 69 74 43 61 73 | ............<li><a.href="#bitCas |
| 31e0 | 74 22 3e 40 62 69 74 43 61 73 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | t">@bitCast</a></li>............ |
| 3200 | 20 3c 6c 69 3e 3c 61 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 | .<li><a.href="#bitOffsetOf">@bit |
| 3220 | 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 3c 6c | OffsetOf</a></li>.............<l |
| 3240 | 69 3e 3c 61 20 68 72 65 66 3d 22 23 62 72 65 61 6b 70 6f 69 6e 74 22 3e 40 62 72 65 61 6b 70 6f | i><a.href="#breakpoint">@breakpo |
| 3260 | 69 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 | int</a></li>.............<li><a. |
| 3280 | 68 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 | href="#byteOffsetOf">@byteOffset |
| 32a0 | 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 68 | Of</a></li>.............<li><a.h |
| 32c0 | 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 3c | ref="#alignCast">@alignCast</a>< |
| 32e0 | 2f 6c 69 3e 0a 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 61 | /li>.............<li><a.href="#a |
| 3300 | 6c 69 67 6e 4f 66 22 3e 40 61 6c 69 67 6e 4f 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | lignOf">@alignOf</a></li>....... |
| 3320 | 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 49 6e 74 22 3e 40 | ......<li><a.href="#boolToInt">@ |
| 3340 | 62 6f 6f 6c 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 | boolToInt</a></li>.............< |
| 3360 | 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 62 79 74 65 73 54 6f 53 6c 69 63 65 22 3e 40 62 79 74 65 | li><a.href="#bytesToSlice">@byte |
| 3380 | 73 54 6f 53 6c 69 63 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c | sToSlice</a></li>.............<l |
| 33a0 | 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 44 65 66 69 6e 65 22 3e 40 63 44 65 66 69 6e 65 3c 2f 61 | i><a.href="#cDefine">@cDefine</a |
| 33c0 | 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 68 72 65 66 3d 22 | ></li>.............<li><a.href=" |
| 33e0 | 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 20 20 20 20 | #cImport">@cImport</a></li>..... |
| 3400 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 49 6e 63 6c 75 64 65 22 3e | ........<li><a.href="#cInclude"> |
| 3420 | 40 63 49 6e 63 6c 75 64 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | @cInclude</a></li>.............< |
| 3440 | 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 2f 61 3e | li><a.href="#cUndef">@cUndef</a> |
| 3460 | 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 68 72 65 66 3d 22 23 | </li>.............<li><a.href="# |
| 3480 | 63 6c 7a 22 3e 40 63 6c 7a 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | clz">@clz</a></li>.............< |
| 34a0 | 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 6d 70 78 63 68 67 53 74 72 6f 6e 67 22 3e 40 63 6d 70 | li><a.href="#cmpxchgStrong">@cmp |
| 34c0 | 78 63 68 67 53 74 72 6f 6e 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | xchgStrong</a></li>............. |
| 34e0 | 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 6d 70 78 63 68 67 57 65 61 6b 22 3e 40 63 6d 70 78 | <li><a.href="#cmpxchgWeak">@cmpx |
| 3500 | 63 68 67 57 65 61 6b 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 | chgWeak</a></li>.............<li |
| 3520 | 3e 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 69 6c 65 45 72 72 6f 72 22 3e 40 63 6f 6d 70 69 6c | ><a.href="#compileError">@compil |
| 3540 | 65 45 72 72 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | eError</a></li>.............<li> |
| 3560 | 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 69 6c 65 4c 6f 67 22 3e 40 63 6f 6d 70 69 6c 65 4c 6f | <a.href="#compileLog">@compileLo |
| 3580 | 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 68 72 | g</a></li>.............<li><a.hr |
| 35a0 | 65 66 3d 22 23 63 74 7a 22 3e 40 63 74 7a 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | ef="#ctz">@ctz</a></li>......... |
| 35c0 | 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 64 69 76 45 78 61 63 74 22 3e 40 64 69 76 | ....<li><a.href="#divExact">@div |
| 35e0 | 45 78 61 63 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | Exact</a></li>.............<li>< |
| 3600 | 61 20 68 72 65 66 3d 22 23 64 69 76 46 6c 6f 6f 72 22 3e 40 64 69 76 46 6c 6f 6f 72 3c 2f 61 3e | a.href="#divFloor">@divFloor</a> |
| 3620 | 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 68 72 65 66 3d 22 23 | </li>.............<li><a.href="# |
| 3640 | 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>.... |
| 3660 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 65 6d 62 65 64 46 69 6c 65 | .........<li><a.href="#embedFile |
| 3680 | 22 3e 40 65 6d 62 65 64 46 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | ">@embedFile</a></li>........... |
| 36a0 | 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 65 6e 75 6d | ..<li><a.href="#enumToInt">@enum |
| 36c0 | 54 6f 49 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | ToInt</a></li>.............<li>< |
| 36e0 | 61 20 68 72 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 | a.href="#errSetCast">@errSetCast |
| 3700 | 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 68 72 65 | </a></li>.............<li><a.hre |
| 3720 | 66 3d 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 | f="#errorName">@errorName</a></l |
| 3740 | 69 3e 0a 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 65 72 72 | i>.............<li><a.href="#err |
| 3760 | 6f 72 52 65 74 75 72 6e 54 72 61 63 65 22 3e 40 65 72 72 6f 72 52 65 74 75 72 6e 54 72 61 63 65 | orReturnTrace">@errorReturnTrace |
| 3780 | 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 68 72 65 | </a></li>.............<li><a.hre |
| 37a0 | 66 3d 22 23 65 72 72 6f 72 54 6f 49 6e 74 22 3e 40 65 72 72 6f 72 54 6f 49 6e 74 3c 2f 61 3e 3c | f="#errorToInt">@errorToInt</a>< |
| 37c0 | 2f 6c 69 3e 0a 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 65 | /li>.............<li><a.href="#e |
| 37e0 | 78 70 6f 72 74 22 3e 40 65 78 70 6f 72 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | xport">@export</a></li>......... |
| 3800 | 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 66 65 6e 63 65 22 3e 40 66 65 6e 63 65 3c | ....<li><a.href="#fence">@fence< |
| 3820 | 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 68 72 65 66 | /a></li>.............<li><a.href |
| 3840 | 3d 22 23 66 69 65 6c 64 22 3e 40 66 69 65 6c 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | ="#field">@field</a></li>....... |
| 3860 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 66 69 65 6c 64 50 61 72 65 6e 74 50 | ......<li><a.href="#fieldParentP |
| 3880 | 74 72 22 3e 40 66 69 65 6c 64 50 61 72 65 6e 74 50 74 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | tr">@fieldParentPtr</a></li>.... |
| 38a0 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 66 6c 6f 61 74 43 61 73 74 | .........<li><a.href="#floatCast |
| 38c0 | 22 3e 40 66 6c 6f 61 74 43 61 73 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | ">@floatCast</a></li>........... |
| 38e0 | 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 66 6c 6f 61 74 54 6f 49 6e 74 22 3e 40 66 6c 6f | ..<li><a.href="#floatToInt">@flo |
| 3900 | 61 74 54 6f 49 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | atToInt</a></li>.............<li |
| 3920 | 3e 3c 61 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 | ><a.href="#frameAddress">@frameA |
| 3940 | 64 64 72 65 73 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | ddress</a></li>.............<li> |
| 3960 | 3c 61 20 68 72 65 66 3d 22 23 68 61 6e 64 6c 65 22 3e 40 68 61 6e 64 6c 65 3c 2f 61 3e 3c 2f 6c | <a.href="#handle">@handle</a></l |
| 3980 | 69 3e 0a 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 69 6d 70 | i>.............<li><a.href="#imp |
| 39a0 | 6f 72 74 22 3e 40 69 6d 70 6f 72 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | ort">@import</a></li>........... |
| 39c0 | 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 69 6e 6c 69 6e 65 43 61 6c 6c 22 3e 40 69 6e 6c | ..<li><a.href="#inlineCall">@inl |
| 39e0 | 69 6e 65 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 | ineCall</a></li>.............<li |
| 3a00 | 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> |
| 3a20 | 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 68 72 65 66 3d 22 23 | </li>.............<li><a.href="# |
| 3a40 | 69 6e 74 54 6f 45 6e 75 6d 22 3e 40 69 6e 74 54 6f 45 6e 75 6d 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | intToEnum">@intToEnum</a></li>.. |
| 3a60 | 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 69 6e 74 54 6f 45 72 | ...........<li><a.href="#intToEr |
| 3a80 | 72 6f 72 22 3e 40 69 6e 74 54 6f 45 72 72 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | ror">@intToError</a></li>....... |
| 3aa0 | 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 22 3e | ......<li><a.href="#intToFloat"> |
| 3ac0 | 40 69 6e 74 54 6f 46 6c 6f 61 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | @intToFloat</a></li>............ |
| 3ae0 | 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 69 6e 74 54 6f 50 | .<li><a.href="#intToPtr">@intToP |
| 3b00 | 74 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 | tr</a></li>.............<li><a.h |
| 3b20 | 72 65 66 3d 22 23 49 6e 74 54 79 70 65 22 3e 40 49 6e 74 54 79 70 65 3c 2f 61 3e 3c 2f 6c 69 3e | ref="#IntType">@IntType</a></li> |
| 3b40 | 0a 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 6d 61 78 56 61 | .............<li><a.href="#maxVa |
| 3b60 | 6c 75 65 22 3e 40 6d 61 78 56 61 6c 75 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | lue">@maxValue</a></li>......... |
| 3b80 | 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 6d 65 6d 62 65 72 43 6f 75 6e 74 22 3e 40 | ....<li><a.href="#memberCount">@ |
| 3ba0 | 6d 65 6d 62 65 72 43 6f 75 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | memberCount</a></li>............ |
| 3bc0 | 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 6d 65 6d 62 65 72 4e 61 6d 65 22 3e 40 6d 65 6d 62 | .<li><a.href="#memberName">@memb |
| 3be0 | 65 72 4e 61 6d 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | erName</a></li>.............<li> |
| 3c00 | 3c 61 20 68 72 65 66 3d 22 23 6d 65 6d 62 65 72 54 79 70 65 22 3e 40 6d 65 6d 62 65 72 54 79 70 | <a.href="#memberType">@memberTyp |
| 3c20 | 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 68 72 | e</a></li>.............<li><a.hr |
| 3c40 | 65 66 3d 22 23 6d 65 6d 63 70 79 22 3e 40 6d 65 6d 63 70 79 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | ef="#memcpy">@memcpy</a></li>... |
| 3c60 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 6d 65 6d 73 65 74 22 3e | ..........<li><a.href="#memset"> |
| 3c80 | 40 6d 65 6d 73 65 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | @memset</a></li>.............<li |
| 3ca0 | 3e 3c 61 20 68 72 65 66 3d 22 23 6d 69 6e 56 61 6c 75 65 22 3e 40 6d 69 6e 56 61 6c 75 65 3c 2f | ><a.href="#minValue">@minValue</ |
| 3cc0 | 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 68 72 65 66 3d | a></li>.............<li><a.href= |
| 3ce0 | 22 23 6d 6f 64 22 3e 40 6d 6f 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | "#mod">@mod</a></li>............ |
| 3d00 | 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 6d 75 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e | .<li><a.href="#mulWithOverflow"> |
| 3d20 | 40 6d 75 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | @mulWithOverflow</a></li>....... |
| 3d40 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 6e 65 77 53 74 61 63 6b 43 61 6c 6c | ......<li><a.href="#newStackCall |
| 3d60 | 22 3e 40 6e 65 77 53 74 61 63 6b 43 61 6c 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | ">@newStackCall</a></li>........ |
| 3d80 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 6e 6f 49 6e 6c 69 6e 65 43 61 6c 6c 22 | .....<li><a.href="#noInlineCall" |
| 3da0 | 3e 40 6e 6f 49 6e 6c 69 6e 65 43 61 6c 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | >@noInlineCall</a></li>......... |
| 3dc0 | 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 4f 70 61 71 75 65 54 79 70 65 22 3e 40 4f | ....<li><a.href="#OpaqueType">@O |
| 3de0 | 70 61 71 75 65 54 79 70 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | paqueType</a></li>.............< |
| 3e00 | 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 70 61 6e 69 63 22 3e 40 70 61 6e 69 63 3c 2f 61 3e 3c 2f | li><a.href="#panic">@panic</a></ |
| 3e20 | 6c 69 3e 0a 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 70 6f | li>.............<li><a.href="#po |
| 3e40 | 70 43 6f 75 6e 74 22 3e 40 70 6f 70 43 6f 75 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | pCount">@popCount</a></li>...... |
| 3e60 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 70 74 72 43 61 73 74 22 3e 40 70 | .......<li><a.href="#ptrCast">@p |
| 3e80 | 74 72 43 61 73 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | trCast</a></li>.............<li> |
| 3ea0 | 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 61 | <a.href="#ptrToInt">@ptrToInt</a |
| 3ec0 | 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 68 72 65 66 3d 22 | ></li>.............<li><a.href=" |
| 3ee0 | 23 72 65 6d 22 3e 40 72 65 6d 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | #rem">@rem</a></li>............. |
| 3f00 | 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 72 65 74 75 72 6e 41 64 64 72 65 73 73 22 3e 40 72 65 | <li><a.href="#returnAddress">@re |
| 3f20 | 74 75 72 6e 41 64 64 72 65 73 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | turnAddress</a></li>............ |
| 3f40 | 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 65 74 41 6c 69 67 6e 53 74 61 63 6b 22 3e 40 73 | .<li><a.href="#setAlignStack">@s |
| 3f60 | 65 74 41 6c 69 67 6e 53 74 61 63 6b 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | etAlignStack</a></li>........... |
| 3f80 | 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 65 74 43 6f 6c 64 22 3e 40 73 65 74 43 6f 6c | ..<li><a.href="#setCold">@setCol |
| 3fa0 | 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 68 72 | d</a></li>.............<li><a.hr |
| 3fc0 | 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 6e 74 69 | ef="#setRuntimeSafety">@setRunti |
| 3fe0 | 6d 65 53 61 66 65 74 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 | meSafety</a></li>.............<l |
| 4000 | 69 3e 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 22 3e | i><a.href="#setEvalBranchQuota"> |
| 4020 | 40 73 65 74 45 76 61 6c 42 72 61 6e 63 68 51 75 6f 74 61 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | @setEvalBranchQuota</a></li>.... |
| 4040 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 65 74 46 6c 6f 61 74 4d | .........<li><a.href="#setFloatM |
| 4060 | 6f 64 65 22 3e 40 73 65 74 46 6c 6f 61 74 4d 6f 64 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | ode">@setFloatMode</a></li>..... |
| 4080 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 65 74 47 6c 6f 62 61 6c 4c | ........<li><a.href="#setGlobalL |
| 40a0 | 69 6e 6b 61 67 65 22 3e 40 73 65 74 47 6c 6f 62 61 6c 4c 69 6e 6b 61 67 65 3c 2f 61 3e 3c 2f 6c | inkage">@setGlobalLinkage</a></l |
| 40c0 | 69 3e 0a 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 73 68 6c | i>.............<li><a.href="#shl |
| 40e0 | 45 78 61 63 74 22 3e 40 73 68 6c 45 78 61 63 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | Exact">@shlExact</a></li>....... |
| 4100 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 68 6c 57 69 74 68 4f 76 65 72 66 | ......<li><a.href="#shlWithOverf |
| 4120 | 6c 6f 77 22 3e 40 73 68 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | low">@shlWithOverflow</a></li>.. |
| 4140 | 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 73 68 72 45 78 61 63 | ...........<li><a.href="#shrExac |
| 4160 | 74 22 3e 40 73 68 72 45 78 61 63 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | t">@shrExact</a></li>........... |
| 4180 | 20 20 3c 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 | ..<li><a.href="#sizeOf">@sizeOf< |
| 41a0 | 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 68 72 65 66 | /a></li>.............<li><a.href |
| 41c0 | 3d 22 23 73 6c 69 63 65 54 6f 42 79 74 65 73 22 3e 40 73 6c 69 63 65 54 6f 42 79 74 65 73 3c 2f | ="#sliceToBytes">@sliceToBytes</ |
| 41e0 | 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 68 72 65 66 3d | a></li>.............<li><a.href= |
| 4200 | 22 23 73 71 72 74 22 3e 40 73 71 72 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | "#sqrt">@sqrt</a></li>.......... |
| 4220 | 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 75 62 57 69 74 68 4f 76 65 72 66 6c 6f 77 | ...<li><a.href="#subWithOverflow |
| 4240 | 22 3e 40 73 75 62 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | ">@subWithOverflow</a></li>..... |
| 4260 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 74 61 67 4e 61 6d 65 22 3e 40 | ........<li><a.href="#tagName">@ |
| 4280 | 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 |
| 42a0 | 3e 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 65 3c 2f 61 3e | ><a.href="#TagType">@TagType</a> |
| 42c0 | 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 | </li>.............<li><a.href="# |
| 42e0 | 54 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 | This">@This</a></li>............ |
| 4300 | 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 40 74 72 75 6e 63 61 | .<li><a.href="#truncate">@trunca |
| 4320 | 74 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 | te</a></li>.............<li><a.h |
| 4340 | 72 65 66 3d 22 23 74 79 70 65 49 64 22 3e 40 74 79 70 65 49 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | ref="#typeId">@typeId</a></li>.. |
| 4360 | 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 74 79 70 65 49 6e 66 | ...........<li><a.href="#typeInf |
| 4380 | 6f 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | o">@typeInfo</a></li>........... |
| 43a0 | 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 74 79 70 65 4e 61 6d 65 22 3e 40 74 79 70 65 4e | ..<li><a.href="#typeName">@typeN |
| 43c0 | 61 6d 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 | ame</a></li>.............<li><a. |
| 43e0 | 68 72 65 66 3d 22 23 74 79 70 65 4f 66 22 3e 40 74 79 70 65 4f 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a | href="#typeOf">@typeOf</a></li>. |
| 4400 | 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>< |
| 4420 | 61 20 68 72 65 66 3d 22 23 42 75 69 6c 64 2d 4d 6f 64 65 22 3e 42 75 69 6c 64 20 4d 6f 64 65 3c | a.href="#Build-Mode">Build.Mode< |
| 4440 | 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 |
| 4460 | 3e 3c 61 20 68 72 65 66 3d 22 23 44 65 62 75 67 22 3e 44 65 62 75 67 3c 2f 61 3e 3c 2f 6c 69 3e | ><a.href="#Debug">Debug</a></li> |
| 4480 | 0a 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 52 65 6c 65 61 | .............<li><a.href="#Relea |
| 44a0 | 73 65 46 61 73 74 22 3e 52 65 6c 65 61 73 65 46 61 73 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | seFast">ReleaseFast</a></li>.... |
| 44c0 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 53 61 | .........<li><a.href="#ReleaseSa |
| 44e0 | 66 65 22 3e 52 65 6c 65 61 73 65 53 61 66 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | fe">ReleaseSafe</a></li>........ |
| 4500 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 53 6d 61 6c 6c 22 | .....<li><a.href="#ReleaseSmall" |
| 4520 | 3e 52 65 6c 65 61 73 65 53 6d 61 6c 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c | >ReleaseSmall</a></li>.........< |
| 4540 | 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 68 72 65 66 3d 22 23 | /ul></li>.........<li><a.href="# |
| 4560 | 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 | Undefined-Behavior">Undefined.Be |
| 4580 | 68 61 76 69 6f 72 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 | havior</a>.........<ul>......... |
| 45a0 | 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 52 65 61 63 68 69 6e 67 2d 55 6e 72 65 61 | ....<li><a.href="#Reaching-Unrea |
| 45c0 | 63 68 61 62 6c 65 2d 43 6f 64 65 22 3e 52 65 61 63 68 69 6e 67 20 55 6e 72 65 61 63 68 61 62 6c | chable-Code">Reaching.Unreachabl |
| 45e0 | 65 20 43 6f 64 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | e.Code</a></li>.............<li> |
| 4600 | 3c 61 20 68 72 65 66 3d 22 23 49 6e 64 65 78 2d 6f 75 74 2d 6f 66 2d 42 6f 75 6e 64 73 22 3e 49 | <a.href="#Index-out-of-Bounds">I |
| 4620 | 6e 64 65 78 20 6f 75 74 20 6f 66 20 42 6f 75 6e 64 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | ndex.out.of.Bounds</a></li>..... |
| 4640 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 43 61 73 74 2d 4e 65 67 61 74 | ........<li><a.href="#Cast-Negat |
| 4660 | 69 76 65 2d 4e 75 6d 62 65 72 2d 74 6f 2d 55 6e 73 69 67 6e 65 64 2d 49 6e 74 65 67 65 72 22 3e | ive-Number-to-Unsigned-Integer"> |
| 4680 | 43 61 73 74 20 4e 65 67 61 74 69 76 65 20 4e 75 6d 62 65 72 20 74 6f 20 55 6e 73 69 67 6e 65 64 | Cast.Negative.Number.to.Unsigned |
| 46a0 | 20 49 6e 74 65 67 65 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c | .Integer</a></li>.............<l |
| 46c0 | 69 3e 3c 61 20 68 72 65 66 3d 22 23 43 61 73 74 2d 54 72 75 6e 63 61 74 65 73 2d 44 61 74 61 22 | i><a.href="#Cast-Truncates-Data" |
| 46e0 | 3e 43 61 73 74 20 54 72 75 6e 63 61 74 65 73 20 44 61 74 61 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | >Cast.Truncates.Data</a></li>... |
| 4700 | 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 2d | ..........<li><a.href="#Integer- |
| 4720 | 4f 76 65 72 66 6c 6f 77 22 3e 49 6e 74 65 67 65 72 20 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 0a 20 | Overflow">Integer.Overflow</a>.. |
| 4740 | 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>................. |
| 4760 | 3c 6c 69 3e 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 | <li><a.href="#Default-Operations |
| 4780 | 22 3e 44 65 66 61 75 6c 74 20 4f 70 65 72 61 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | ">Default.Operations</a></li>... |
| 47a0 | 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 53 74 61 6e | ..............<li><a.href="#Stan |
| 47c0 | 64 61 72 64 2d 4c 69 62 72 61 72 79 2d 4d 61 74 68 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 53 74 61 | dard-Library-Math-Functions">Sta |
| 47e0 | 6e 64 61 72 64 20 4c 69 62 72 61 72 79 20 4d 61 74 68 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e | ndard.Library.Math.Functions</a> |
| 4800 | 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 68 72 65 | </li>.................<li><a.hre |
| 4820 | 66 3d 22 23 42 75 69 6c 74 69 6e 2d 4f 76 65 72 66 6c 6f 77 2d 46 75 6e 63 74 69 6f 6e 73 22 3e | f="#Builtin-Overflow-Functions"> |
| 4840 | 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 3c 2f | Builtin.Overflow.Functions</a></ |
| 4860 | 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 68 72 65 66 3d | li>.................<li><a.href= |
| 4880 | 22 23 57 72 61 70 70 69 6e 67 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 57 72 61 70 70 69 6e 67 20 | "#Wrapping-Operations">Wrapping. |
| 48a0 | 4f 70 65 72 61 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | Operations</a></li>............. |
| 48c0 | 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 | </ul></li>.............<li><a.hr |
| 48e0 | 65 66 3d 22 23 45 78 61 63 74 2d 4c 65 66 74 2d 53 68 69 66 74 2d 4f 76 65 72 66 6c 6f 77 22 3e | ef="#Exact-Left-Shift-Overflow"> |
| 4900 | 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 3e 3c 2f 6c | Exact.Left.Shift.Overflow</a></l |
| 4920 | 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 78 61 | i>.............<li><a.href="#Exa |
| 4940 | 63 74 2d 52 69 67 68 74 2d 53 68 69 66 74 2d 4f 76 65 72 66 6c 6f 77 22 3e 45 78 61 63 74 20 52 | ct-Right-Shift-Overflow">Exact.R |
| 4960 | 69 67 68 74 20 53 68 69 66 74 20 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | ight.Shift.Overflow</a></li>.... |
| 4980 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 44 69 76 69 73 69 6f 6e 2d | .........<li><a.href="#Division- |
| 49a0 | 62 79 2d 5a 65 72 6f 22 3e 44 69 76 69 73 69 6f 6e 20 62 79 20 5a 65 72 6f 3c 2f 61 3e 3c 2f 6c | by-Zero">Division.by.Zero</a></l |
| 49c0 | 69 3e 0a 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 52 65 6d | i>.............<li><a.href="#Rem |
| 49e0 | 61 69 6e 64 65 72 2d 44 69 76 69 73 69 6f 6e 2d 62 79 2d 5a 65 72 6f 22 3e 52 65 6d 61 69 6e 64 | ainder-Division-by-Zero">Remaind |
| 4a00 | 65 72 20 44 69 76 69 73 69 6f 6e 20 62 79 20 5a 65 72 6f 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | er.Division.by.Zero</a></li>.... |
| 4a20 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 78 61 63 74 2d 44 69 76 | .........<li><a.href="#Exact-Div |
| 4a40 | 69 73 69 6f 6e 2d 52 65 6d 61 69 6e 64 65 72 22 3e 45 78 61 63 74 20 44 69 76 69 73 69 6f 6e 20 | ision-Remainder">Exact.Division. |
| 4a60 | 52 65 6d 61 69 6e 64 65 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | Remainder</a></li>.............< |
| 4a80 | 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 53 6c 69 63 65 2d 57 69 64 65 6e 2d 52 65 6d 61 69 6e 64 | li><a.href="#Slice-Widen-Remaind |
| 4aa0 | 65 72 22 3e 53 6c 69 63 65 20 57 69 64 65 6e 20 52 65 6d 61 69 6e 64 65 72 3c 2f 61 3e 3c 2f 6c | er">Slice.Widen.Remainder</a></l |
| 4ac0 | 69 3e 0a 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 74 74 | i>.............<li><a.href="#Att |
| 4ae0 | 65 6d 70 74 2d 74 6f 2d 55 6e 77 72 61 70 2d 4e 75 6c 6c 22 3e 41 74 74 65 6d 70 74 20 74 6f 20 | empt-to-Unwrap-Null">Attempt.to. |
| 4b00 | 55 6e 77 72 61 70 20 4e 75 6c 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | Unwrap.Null</a></li>............ |
| 4b20 | 20 3c 6c 69 3e 3c 61 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 | .<li><a.href="#Attempt-to-Unwrap |
| 4b40 | 2d 45 72 72 6f 72 22 3e 41 74 74 65 6d 70 74 20 74 6f 20 55 6e 77 72 61 70 20 45 72 72 6f 72 3c | -Error">Attempt.to.Unwrap.Error< |
| 4b60 | 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 68 72 65 66 | /a></li>.............<li><a.href |
| 4b80 | 3d 22 23 49 6e 76 61 6c 69 64 2d 45 72 72 6f 72 2d 43 6f 64 65 22 3e 49 6e 76 61 6c 69 64 20 45 | ="#Invalid-Error-Code">Invalid.E |
| 4ba0 | 72 72 6f 72 20 43 6f 64 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | rror.Code</a></li>.............< |
| 4bc0 | 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 76 61 6c 69 64 2d 45 6e 75 6d 2d 43 61 73 74 22 3e | li><a.href="#Invalid-Enum-Cast"> |
| 4be0 | 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 0a 20 20 20 20 20 | Invalid.Enum.Cast</a></li>...... |
| 4c00 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 76 61 6c 69 64 2d 45 72 72 | .......<li><a.href="#Invalid-Err |
| 4c20 | 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 20 53 65 74 20 43 | or-Set-Cast">Invalid.Error.Set.C |
| 4c40 | 61 73 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 | ast</a></li>.............<li><a. |
| 4c60 | 68 72 65 66 3d 22 23 49 6e 63 6f 72 72 65 63 74 2d 50 6f 69 6e 74 65 72 2d 41 6c 69 67 6e 6d 65 | href="#Incorrect-Pointer-Alignme |
| 4c80 | 6e 74 22 3e 49 6e 63 6f 72 72 65 63 74 20 50 6f 69 6e 74 65 72 20 41 6c 69 67 6e 6d 65 6e 74 3c | nt">Incorrect.Pointer.Alignment< |
| 4ca0 | 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 68 72 65 66 | /a></li>.............<li><a.href |
| 4cc0 | 3d 22 23 57 72 6f 6e 67 2d 55 6e 69 6f 6e 2d 46 69 65 6c 64 2d 41 63 63 65 73 73 22 3e 57 72 6f | ="#Wrong-Union-Field-Access">Wro |
| 4ce0 | 6e 67 20 55 6e 69 6f 6e 20 46 69 65 6c 64 20 41 63 63 65 73 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | ng.Union.Field.Access</a></li>.. |
| 4d00 | 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 75 74 2d 6f 66 2d | ...........<li><a.href="#Out-of- |
| 4d20 | 42 6f 75 6e 64 73 2d 46 6c 6f 61 74 2d 54 6f 2d 49 6e 74 65 67 65 72 2d 43 61 73 74 22 3e 4f 75 | Bounds-Float-To-Integer-Cast">Ou |
| 4d40 | 74 20 6f 66 20 42 6f 75 6e 64 73 20 46 6c 6f 61 74 20 54 6f 20 49 6e 74 65 67 65 72 20 43 61 73 | t.of.Bounds.Float.To.Integer.Cas |
| 4d60 | 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 | t</a></li>.........</ul></li>... |
| 4d80 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 4d 65 6d 6f 72 79 22 3e 4d 65 6d 6f | ......<li><a.href="#Memory">Memo |
| 4da0 | 72 79 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d | ry</a></li>.........<li><a.href= |
| 4dc0 | 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 72 | "#Compile-Variables">Compile.Var |
| 4de0 | 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 68 | iables</a></li>.........<li><a.h |
| 4e00 | 72 65 66 3d 22 23 52 6f 6f 74 2d 53 6f 75 72 63 65 2d 46 69 6c 65 22 3e 52 6f 6f 74 20 53 6f 75 | ref="#Root-Source-File">Root.Sou |
| 4e20 | 72 63 65 20 46 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 | rce.File</a></li>.........<li><a |
| 4e40 | 20 68 72 65 66 3d 22 23 5a 69 67 2d 54 65 73 74 22 3e 5a 69 67 20 54 65 73 74 3c 2f 61 3e 3c 2f | .href="#Zig-Test">Zig.Test</a></ |
| 4e60 | 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 5a 69 67 2d 42 75 | li>.........<li><a.href="#Zig-Bu |
| 4e80 | 69 6c 64 2d 53 79 73 74 65 6d 22 3e 5a 69 67 20 42 75 69 6c 64 20 53 79 73 74 65 6d 3c 2f 61 3e | ild-System">Zig.Build.System</a> |
| 4ea0 | 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 43 22 3e 43 | </li>.........<li><a.href="#C">C |
| 4ec0 | 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 |
| 4ee0 | 69 3e 3c 61 20 68 72 65 66 3d 22 23 43 2d 54 79 70 65 2d 50 72 69 6d 69 74 69 76 65 73 22 3e 43 | i><a.href="#C-Type-Primitives">C |
| 4f00 | 20 54 79 70 65 20 50 72 69 6d 69 74 69 76 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | .Type.Primitives</a></li>....... |
| 4f20 | 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 43 2d 53 74 72 69 6e 67 2d 4c 69 74 | ......<li><a.href="#C-String-Lit |
| 4f40 | 65 72 61 6c 73 22 3e 43 20 53 74 72 69 6e 67 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 3c 2f 6c 69 | erals">C.String.Literals</a></li |
| 4f60 | 3e 0a 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 6d 70 6f | >.............<li><a.href="#Impo |
| 4f80 | 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 72 | rt-from-C-Header-File">Import.fr |
| 4fa0 | 6f 6d 20 43 20 48 65 61 64 65 72 20 46 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | om.C.Header.File</a></li>....... |
| 4fc0 | 20 20 20 20 20 20 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 | ......<li><a.href="#Exporting-a- |
| 4fe0 | 43 2d 4c 69 62 72 61 72 79 22 3e 45 78 70 6f 72 74 69 6e 67 20 61 20 43 20 4c 69 62 72 61 72 79 | C-Library">Exporting.a.C.Library |
| 5000 | 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 68 72 65 | </a></li>.............<li><a.hre |
| 5020 | 66 3d 22 23 4d 69 78 69 6e 67 2d 4f 62 6a 65 63 74 2d 46 69 6c 65 73 22 3e 4d 69 78 69 6e 67 20 | f="#Mixing-Object-Files">Mixing. |
| 5040 | 4f 62 6a 65 63 74 20 46 69 6c 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 2f | Object.Files</a></li>.........</ |
| 5060 | 75 6c 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 54 | ul></li>.........<li><a.href="#T |
| 5080 | 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 20 20 20 | argets">Targets</a></li>........ |
| 50a0 | 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 53 74 79 6c 65 2d 47 75 69 64 65 22 3e 53 74 79 6c | .<li><a.href="#Style-Guide">Styl |
| 50c0 | 65 20 47 75 69 64 65 3c 2f 61 3e 0a 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 | e.Guide</a>.........<ul>........ |
| 50e0 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 57 68 69 74 65 73 70 61 63 65 22 3e 57 | .....<li><a.href="#Whitespace">W |
| 5100 | 68 69 74 65 73 70 61 63 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | hitespace</a></li>.............< |
| 5120 | 6c 69 3e 3c 61 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 | li><a.href="#Names">Names</a></l |
| 5140 | 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 78 61 | i>.............<li><a.href="#Exa |
| 5160 | 6d 70 6c 65 73 22 3e 45 78 61 6d 70 6c 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | mples">Examples</a></li>........ |
| 5180 | 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 68 72 65 66 3d | .</ul></li>.........<li><a.href= |
| 51a0 | 22 23 53 6f 75 72 63 65 2d 45 6e 63 6f 64 69 6e 67 22 3e 53 6f 75 72 63 65 20 45 6e 63 6f 64 69 | "#Source-Encoding">Source.Encodi |
| 51c0 | 6e 67 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d | ng</a></li>.........<li><a.href= |
| 51e0 | 22 23 47 72 61 6d 6d 61 72 22 3e 47 72 61 6d 6d 61 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | "#Grammar">Grammar</a></li>..... |
| 5200 | 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 5a 65 6e 22 3e 5a 65 6e 3c 2f 61 3e 3c 2f | ....<li><a.href="#Zen">Zen</a></ |
| 5220 | 6c 69 3e 0a 20 20 20 20 3c 2f 75 6c 3e 0a 0a 20 20 20 20 3c 2f 64 69 76 3e 0a 20 20 20 20 3c 64 | li>.....</ul>......</div>.....<d |
| 5240 | 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 3d 22 | iv.id="contents">.......<h1.id=" |
| 5260 | 49 6e 74 72 6f 64 75 63 74 69 6f 6e 22 3e 49 6e 74 72 6f 64 75 63 74 69 6f 6e 3c 2f 68 31 3e 0a | Introduction">Introduction</h1>. |
| 5280 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 5a 69 67 20 69 73 20 61 6e 20 6f 70 65 6e 2d | .......<p>.......Zig.is.an.open- |
| 52a0 | 73 6f 75 72 63 65 20 70 72 6f 67 72 61 6d 6d 69 6e 67 20 6c 61 6e 67 75 61 67 65 20 64 65 73 69 | source.programming.language.desi |
| 52c0 | 67 6e 65 64 20 66 6f 72 20 3c 73 74 72 6f 6e 67 3e 72 6f 62 75 73 74 6e 65 73 73 3c 2f 73 74 72 | gned.for.<strong>robustness</str |
| 52e0 | 6f 6e 67 3e 2c 0a 20 20 20 20 20 20 3c 73 74 72 6f 6e 67 3e 6f 70 74 69 6d 61 6c 69 74 79 3c 2f | ong>,.......<strong>optimality</ |
| 5300 | 73 74 72 6f 6e 67 3e 2c 20 61 6e 64 20 3c 73 74 72 6f 6e 67 3e 63 6c 61 72 69 74 79 3c 2f 73 74 | strong>,.and.<strong>clarity</st |
| 5320 | 72 6f 6e 67 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 | rong>........</p>.......<ul>.... |
| 5340 | 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 6f 6e 67 3e | .....<li><strong>Robust</strong> |
| 5360 | 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 66 6f 72 20 | .-.behavior.is.correct.even.for. |
| 5380 | 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 6d 6f 72 79 | edge.cases.such.as.out.of.memory |
| 53a0 | 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 70 74 69 6d | .</li>.........<li><strong>Optim |
| 53c0 | 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 20 74 68 65 | al</strong>.-.write.programs.the |
| 53e0 | 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 64 20 70 65 | .best.way.they.can.behave.and.pe |
| 5400 | 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 6f 6e 67 3e | rform.</li>.........<li><strong> |
| 5420 | 43 6c 65 61 72 3c 2f 73 74 72 6f 6e 67 3e 20 2d 20 70 72 65 63 69 73 65 6c 79 20 63 6f 6d 6d 75 | Clear</strong>.-.precisely.commu |
| 5440 | 6e 69 63 61 74 65 20 79 6f 75 72 20 69 6e 74 65 6e 74 20 74 6f 20 74 68 65 20 63 6f 6d 70 69 6c | nicate.your.intent.to.the.compil |
| 5460 | 65 72 20 61 6e 64 20 6f 74 68 65 72 20 70 72 6f 67 72 61 6d 6d 65 72 73 2e 20 54 68 65 20 6c 61 | er.and.other.programmers..The.la |
| 5480 | 6e 67 75 61 67 65 20 69 6d 70 6f 73 65 73 20 61 20 6c 6f 77 20 6f 76 65 72 68 65 61 64 20 74 6f | nguage.imposes.a.low.overhead.to |
| 54a0 | 20 72 65 61 64 69 6e 67 20 63 6f 64 65 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a | .reading.code.</li>.......</ul>. |
| 54c0 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4f 66 74 65 6e 20 74 68 65 20 6d 6f 73 74 20 65 | ......<p>.......Often.the.most.e |
| 54e0 | 66 66 69 63 69 65 6e 74 20 77 61 79 20 74 6f 20 6c 65 61 72 6e 20 73 6f 6d 65 74 68 69 6e 67 20 | fficient.way.to.learn.something. |
| 5500 | 6e 65 77 20 69 73 20 74 6f 20 73 65 65 20 65 78 61 6d 70 6c 65 73 2c 20 73 6f 0a 20 20 20 20 20 | new.is.to.see.examples,.so...... |
| 5520 | 20 74 68 69 73 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 73 68 6f 77 73 20 68 6f 77 20 74 6f | .this.documentation.shows.how.to |
| 5540 | 20 75 73 65 20 65 61 63 68 20 6f 66 20 5a 69 67 27 73 20 66 65 61 74 75 72 65 73 2e 20 49 74 20 | .use.each.of.Zig's.features..It. |
| 5560 | 69 73 0a 20 20 20 20 20 20 61 6c 6c 20 6f 6e 20 6f 6e 65 20 70 61 67 65 20 73 6f 20 79 6f 75 20 | is.......all.on.one.page.so.you. |
| 5580 | 63 61 6e 20 73 65 61 72 63 68 20 77 69 74 68 20 79 6f 75 72 20 62 72 6f 77 73 65 72 27 73 20 73 | can.search.with.your.browser's.s |
| 55a0 | 65 61 72 63 68 20 74 6f 6f 6c 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e | earch.tool........</p>.......<p> |
| 55c0 | 0a 20 20 20 20 20 20 54 68 65 20 63 6f 64 65 20 73 61 6d 70 6c 65 73 20 69 6e 20 74 68 69 73 20 | .......The.code.samples.in.this. |
| 55e0 | 64 6f 63 75 6d 65 6e 74 20 61 72 65 20 63 6f 6d 70 69 6c 65 64 20 61 6e 64 20 74 65 73 74 65 64 | document.are.compiled.and.tested |
| 5600 | 20 61 73 20 70 61 72 74 20 6f 66 20 74 68 65 20 6d 61 69 6e 20 74 65 73 74 20 73 75 69 74 65 20 | .as.part.of.the.main.test.suite. |
| 5620 | 6f 66 20 5a 69 67 2e 0a 20 20 20 20 20 20 54 68 69 73 20 48 54 4d 4c 20 64 6f 63 75 6d 65 6e 74 | of.Zig........This.HTML.document |
| 5640 | 20 64 65 70 65 6e 64 73 20 6f 6e 20 6e 6f 20 65 78 74 65 72 6e 61 6c 20 66 69 6c 65 73 2c 20 73 | .depends.on.no.external.files,.s |
| 5660 | 6f 20 79 6f 75 20 63 61 6e 20 75 73 65 20 69 74 20 6f 66 66 6c 69 6e 65 2e 0a 20 20 20 20 20 20 | o.you.can.use.it.offline........ |
| 5680 | 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 48 65 6c 6c 6f 2d | </p>..............<h1.id="Hello- |
| 56a0 | 57 6f 72 6c 64 22 3e 48 65 6c 6c 6f 20 57 6f 72 6c 64 3c 2f 68 31 3e 0a 0a 0a 20 20 20 20 20 20 | World">Hello.World</h1>......... |
| 56c0 | 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 68 65 6c 6c 6f 2e 7a 69 67 3c 2f 70 3e 3c 70 72 | <p.class="file">hello.zig</p><pr |
| 56e0 | 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= |
| 5700 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 | "tok-kw">const</span>.std.=.<spa |
| 5720 | 6e 20 63 6c 61 73 73 3d 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 |
| 5740 | 70 61 6e 3e 28 3c 73 70 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">" |
| 5760 | 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | ;std"</span>);..<span.class |
| 5780 | 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 |
| 57a0 | 3d 22 74 6f 6b 2d 6b 77 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= |
| 57c0 | 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 |
| 57e0 | 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>.{.... |
| 5800 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 66 | .<span.class="tok-comment">//.If |
| 5820 | 20 74 68 69 73 20 70 72 6f 67 72 61 6d 20 69 73 20 72 75 6e 20 77 69 74 68 6f 75 74 20 73 74 64 | .this.program.is.run.without.std |
| 5840 | 6f 75 74 20 61 74 74 61 63 68 65 64 2c 20 65 78 69 74 20 77 69 74 68 20 61 6e 20 65 72 72 6f 72 | out.attached,.exit.with.an.error |
| 5860 | 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .</span>.....<span.class="tok-kw |
| 5880 | 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 73 74 64 6f 75 74 5f 66 69 6c 65 20 3d 20 3c 73 70 61 6e | ">var</span>.stdout_file.=.<span |
| 58a0 | 20 63 6c 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 69 | .class="tok-kw">try</span>.std.i |
| 58c0 | 6f 2e 67 65 74 53 74 64 4f 75 74 28 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | o.getStdOut();.....<span.class=" |
| 58e0 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 66 20 74 68 69 73 20 70 72 6f 67 72 61 6d 20 | tok-comment">//.If.this.program. |
| 5900 | 65 6e 63 6f 75 6e 74 65 72 73 20 70 69 70 65 20 66 61 69 6c 75 72 65 20 77 68 65 6e 20 70 72 69 | encounters.pipe.failure.when.pri |
| 5920 | 6e 74 69 6e 67 20 74 6f 20 73 74 64 6f 75 74 2c 20 65 78 69 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 | nting.to.stdout,.exit</span>.... |
| 5940 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 77 69 | .<span.class="tok-comment">//.wi |
| 5960 | 74 68 20 61 6e 20 65 72 72 6f 72 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | th.an.error.</span>.....<span.cl |
| 5980 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 74 64 6f 75 74 5f 66 | ass="tok-kw">try</span>.stdout_f |
| 59a0 | 69 6c 65 2e 77 72 69 74 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e | ile.write(<span.class="tok-str"> |
| 59c0 | 26 71 75 6f 74 3b 48 65 6c 6c 6f 2c 20 77 6f 72 6c 64 21 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 | "Hello,.world!\n"</spa |
| 59e0 | 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 |
| 5a00 | 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 68 65 6c 6c | ass="shell">$.zig.build-exe.hell |
| 5a20 | 6f 2e 7a 69 67 0a 24 20 2e 2f 68 65 6c 6c 6f 0a 48 65 6c 6c 6f 2c 20 77 6f 72 6c 64 21 0a 3c 2f | o.zig.$../hello.Hello,.world!.</ |
| 5a40 | 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 55 73 75 | code></pre>........<p>.......Usu |
| 5a60 | 61 6c 6c 79 20 79 6f 75 20 64 6f 6e 27 74 20 77 61 6e 74 20 74 6f 20 77 72 69 74 65 20 74 6f 20 | ally.you.don't.want.to.write.to. |
| 5a80 | 73 74 64 6f 75 74 2e 20 59 6f 75 20 77 61 6e 74 20 74 6f 20 77 72 69 74 65 20 74 6f 20 73 74 64 | stdout..You.want.to.write.to.std |
| 5aa0 | 65 72 72 2e 20 41 6e 64 20 79 6f 75 0a 20 20 20 20 20 20 64 6f 6e 27 74 20 63 61 72 65 20 69 66 | err..And.you.......don't.care.if |
| 5ac0 | 20 69 74 20 66 61 69 6c 73 2e 20 49 74 27 73 20 6d 6f 72 65 20 6c 69 6b 65 20 61 20 3c 65 6d 3e | .it.fails..It's.more.like.a.<em> |
| 5ae0 | 77 61 72 6e 69 6e 67 20 6d 65 73 73 61 67 65 3c 2f 65 6d 3e 20 74 68 61 74 20 79 6f 75 20 77 61 | warning.message</em>.that.you.wa |
| 5b00 | 6e 74 0a 20 20 20 20 20 20 74 6f 20 65 6d 69 74 2e 20 46 6f 72 20 74 68 61 74 20 79 6f 75 20 63 | nt.......to.emit..For.that.you.c |
| 5b20 | 61 6e 20 75 73 65 20 61 20 73 69 6d 70 6c 65 72 20 41 50 49 3a 0a 20 20 20 20 20 20 3c 2f 70 3e | an.use.a.simpler.API:.......</p> |
| 5b40 | 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 68 65 6c 6c 6f 2e 7a 69 67 | .......<p.class="file">hello.zig |
| 5b60 | 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 |
| 5b80 | 20 63 6c 61 73 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 61 72 | .class="tok-kw">const</span>.war |
| 5ba0 | 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 | n.=.<span.class="tok-builtin">@i |
| 5bc0 | 6d 70 6f 72 74 3c 2f 73 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 |
| 5be0 | 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 | r">"std"</span>).debug |
| 5c00 | 2e 77 61 72 6e 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 | .warn;..<span.class="tok-kw">pub |
| 5c20 | 3c 2f 73 70 61 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< |
| 5c40 | 2f 73 70 61 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 |
| 5c60 | 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" |
| 5c80 | 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 77 61 72 6e 28 3c 73 70 61 6e 20 63 6c | >void</span>.{.....warn(<span.cl |
| 5ca0 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 48 65 6c 6c 6f 2c 20 77 6f 72 6c 64 | ass="tok-str">"Hello,.world |
| 5cc0 | 21 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | !\n"</span>);.}</code></pre |
| 5ce0 | 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. |
| 5d00 | 62 75 69 6c 64 2d 65 78 65 20 68 65 6c 6c 6f 2e 7a 69 67 0a 24 20 2e 2f 68 65 6c 6c 6f 0a 48 65 | build-exe.hello.zig.$../hello.He |
| 5d20 | 6c 6c 6f 2c 20 77 6f 72 6c 64 21 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 | llo,.world!.</code></pre>....... |
| 5d40 | 20 3c 70 3e 0a 20 20 20 20 20 20 4e 6f 74 65 20 74 68 61 74 20 77 65 20 61 6c 73 6f 20 6c 65 66 | .<p>.......Note.that.we.also.lef |
| 5d60 | 74 20 6f 66 66 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 21 3c 2f 63 | t.off.the.<code.class="zig">!</c |
| 5d80 | 6f 64 65 3e 20 66 72 6f 6d 20 74 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 2e 0a 20 20 20 20 20 | ode>.from.the.return.type....... |
| 5da0 | 20 49 6e 20 5a 69 67 2c 20 69 66 20 79 6f 75 72 20 6d 61 69 6e 20 66 75 6e 63 74 69 6f 6e 20 63 | .In.Zig,.if.your.main.function.c |
| 5dc0 | 61 6e 6e 6f 74 20 66 61 69 6c 2c 20 79 6f 75 20 6d 75 73 74 20 75 73 65 20 74 68 65 20 3c 63 6f | annot.fail,.you.must.use.the.<co |
| 5de0 | 64 65 20 63 6c 61 73 73 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- |
| 5e00 | 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 72 65 74 75 72 6e 20 | type">void</span></code>.return. |
| 5e20 | 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c | type........</p>.......<p>See.al |
| 5e40 | 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 56 61 6c 75 65 73 | so:</p><ul>.<li><a.href="#Values |
| 5e60 | 22 3e 56 61 6c 75 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 | ">Values</a></li>.<li><a.href="# |
| 5e80 | 69 6d 70 6f 72 74 22 3e 40 69 6d 70 6f 72 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 | import">@import</a></li>.<li><a. |
| 5ea0 | 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>.< |
| 5ec0 | 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 52 6f 6f 74 2d 53 6f 75 72 63 65 2d 46 69 6c 65 22 3e 52 | li><a.href="#Root-Source-File">R |
| 5ee0 | 6f 6f 74 20 53 6f 75 72 63 65 20 46 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a | oot.Source.File</a></li>.</ul>.. |
| 5f00 | 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 43 6f 6d 6d 65 6e 74 73 22 3e 43 | .............<h1.id="Comments">C |
| 5f20 | 6f 6d 6d 65 6e 74 73 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 | omments</h1>........<p.class="fi |
| 5f40 | 6c 65 22 3e 63 6f 6d 6d 65 6e 74 73 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 | le">comments.zig</p><pre><code.c |
| 5f60 | 6c 61 73 73 3d 22 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"> |
| 5f80 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | const</span>.assert.=.<span.clas |
| 5fa0 | 73 3d 22 74 6f 6b 2d 62 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>(< |
| 5fc0 | 73 70 61 6e 20 63 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 |
| 5fe0 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 0a 3c 73 70 61 | uot;</span>).debug.assert;..<spa |
| 6000 | 6e 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 |
| 6020 | 61 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 6d 65 6e 74 | an.class="tok-str">"comment |
| 6040 | 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 |
| 6060 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 43 6f 6d 6d 65 6e 74 73 20 69 6e 20 5a 69 | ="tok-comment">//.Comments.in.Zi |
| 6080 | 67 20 73 74 61 72 74 20 77 69 74 68 20 26 71 75 6f 74 3b 2f 2f 26 71 75 6f 74 3b 20 61 6e 64 20 | g.start.with."//".and. |
| 60a0 | 65 6e 64 20 61 74 20 74 68 65 20 6e 65 78 74 20 4c 46 20 62 79 74 65 20 28 65 6e 64 20 6f 66 20 | end.at.the.next.LF.byte.(end.of. |
| 60c0 | 6c 69 6e 65 29 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | line).</span>.....<span.class="t |
| 60e0 | 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 62 65 6c 6f 77 20 6c 69 6e 65 20 69 73 | ok-comment">//.The.below.line.is |
| 6100 | 20 61 20 63 6f 6d 6d 65 6e 74 2c 20 61 6e 64 20 77 6f 6e 27 74 20 62 65 20 65 78 65 63 75 74 65 | .a.comment,.and.won't.be.execute |
| 6120 | 64 2e 3c 2f 73 70 61 6e 3e 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | d.</span>......<span.class="tok- |
| 6140 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 61 73 73 65 72 74 28 66 61 6c 73 65 29 3b 3c 2f 73 70 61 6e 3e | comment">//assert(false);</span> |
| 6160 | 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 |
| 6180 | 3c 2f 73 70 61 6e 3e 20 78 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c | </span>.x.=.<span.class="tok-nul |
| 61a0 | 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3b 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | l">true</span>;..<span.class="to |
| 61c0 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 61 6e 6f 74 68 65 72 20 63 6f 6d 6d 65 6e 74 3c 2f 73 | k-comment">//.another.comment</s |
| 61e0 | 70 61 6e 3e 0a 20 20 20 20 61 73 73 65 72 74 28 78 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | pan>.....assert(x);.}</code></pr |
| 6200 | 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 |
| 6220 | 20 74 65 73 74 20 63 6f 6d 6d 65 6e 74 73 2e 7a 69 67 0a 54 65 73 74 20 31 2f 31 20 63 6f 6d 6d | .test.comments.zig.Test.1/1.comm |
| 6240 | 65 6e 74 73 2e 2e 2e 4f 4b 0a 41 6c 6c 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f | ents...OK.All.tests.passed..</co |
| 6260 | 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 65 72 65 | de></pre>........<p>.......There |
| 6280 | 20 61 72 65 20 6e 6f 20 6d 75 6c 74 69 6c 69 6e 65 20 63 6f 6d 6d 65 6e 74 73 20 69 6e 20 5a 69 | .are.no.multiline.comments.in.Zi |
| 62a0 | 67 20 28 65 2e 67 2e 20 6c 69 6b 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 22 3e 2f 2a 20 | g.(e.g..like.<code.class="c">/*. |
| 62c0 | 2a 2f 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 63 6f 6d 6d 65 6e 74 73 20 69 6e 20 43 29 2e 20 | */</code>.......comments.in.C).. |
| 62e0 | 20 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 | .This.helps.allow.Zig.to.have.th |
| 6300 | 65 20 70 72 6f 70 65 72 74 79 20 74 68 61 74 20 65 61 63 68 20 6c 69 6e 65 0a 20 20 20 20 20 20 | e.property.that.each.line....... |
| 6320 | 6f 66 20 63 6f 64 65 20 63 61 6e 20 62 65 20 74 6f 6b 65 6e 69 7a 65 64 20 6f 75 74 20 6f 66 20 | of.code.can.be.tokenized.out.of. |
| 6340 | 63 6f 6e 74 65 78 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 68 32 20 69 64 | context........</p>.......<h2.id |
| 6360 | 3d 22 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 68 32 | ="Doc-comments">Doc.comments</h2 |
| 6380 | 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 | >........<p>.......A.doc.comment |
| 63a0 | 20 69 73 20 6f 6e 65 20 74 68 61 74 20 62 65 67 69 6e 73 20 77 69 74 68 20 65 78 61 63 74 6c 79 | .is.one.that.begins.with.exactly |
| 63c0 | 20 74 68 72 65 65 20 73 6c 61 73 68 65 73 20 28 69 2e 65 2e 0a 20 20 20 20 20 20 3c 63 6f 64 65 | .three.slashes.(i.e........<code |
| 63e0 | 20 63 6c 61 73 73 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 | .class="zig"><span.class="tok-co |
| 6400 | 6d 6d 65 6e 74 22 3e 2f 2f 2f 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 62 75 74 20 6e 6f 74 | mment">///</span></code>.but.not |
| 6420 | 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=" |
| 6440 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 2f 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 29 | tok-comment">////</span></code>) |
| 6460 | 3b 0a 20 20 20 20 20 20 6d 75 6c 74 69 70 6c 65 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 73 20 69 6e | ;.......multiple.doc.comments.in |
| 6480 | 20 61 20 72 6f 77 20 61 72 65 20 6d 65 72 67 65 64 20 74 6f 67 65 74 68 65 72 20 74 6f 20 66 6f | .a.row.are.merged.together.to.fo |
| 64a0 | 72 6d 20 61 20 6d 75 6c 74 69 6c 69 6e 65 0a 20 20 20 20 20 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 | rm.a.multiline.......doc.comment |
| 64c0 | 2e 20 20 54 68 65 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 20 64 6f 63 75 6d 65 6e 74 73 20 77 68 61 | ...The.doc.comment.documents.wha |
| 64e0 | 74 65 76 65 72 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 66 6f 6c 6c 6f 77 73 20 69 74 2e 0a 20 20 | tever.immediately.follows.it.... |
| 6500 | 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= |
| 6520 | 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"> |
| 6540 | 2f 2f 2f 20 41 20 73 74 72 75 63 74 75 72 65 20 66 6f 72 20 73 74 6f 72 69 6e 67 20 61 20 74 69 | ///.A.structure.for.storing.a.ti |
| 6560 | 6d 65 73 74 61 6d 70 2c 20 77 69 74 68 20 6e 61 6e 6f 73 65 63 6f 6e 64 20 70 72 65 63 69 73 69 | mestamp,.with.nanosecond.precisi |
| 6580 | 6f 6e 20 28 74 68 69 73 20 69 73 20 61 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | on.(this.is.a</span>.<span.class |
| 65a0 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 6d 75 6c 74 69 6c 69 6e 65 20 64 6f 63 | ="tok-comment">///.multiline.doc |
| 65c0 | 20 63 6f 6d 6d 65 6e 74 29 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .comment).</span>.<span.class="t |
| 65e0 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 54 69 6d 65 73 74 61 6d 70 20 3d 20 | ok-kw">const</span>.Timestamp.=. |
| 6600 | 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 |
| 6620 | 6e 3e 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 |
| 6640 | 74 22 3e 2f 2f 2f 20 54 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 73 65 63 6f 6e 64 73 20 73 69 6e | t">///.The.number.of.seconds.sin |
| 6660 | 63 65 20 74 68 65 20 65 70 6f 63 68 20 28 74 68 69 73 20 69 73 20 61 6c 73 6f 20 61 20 64 6f 63 | ce.the.epoch.(this.is.also.a.doc |
| 6680 | 20 63 6f 6d 6d 65 6e 74 29 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 65 63 6f 6e 64 73 3a 20 3c | .comment).</span>.....seconds:.< |
| 66a0 | 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 6e 3e | span.class="tok-type">i64</span> |
| 66c0 | 2c 20 20 3c 73 70 61 6e 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">//. |
| 66e0 | 73 69 67 6e 65 64 20 73 6f 20 77 65 20 63 61 6e 20 72 65 70 72 65 73 65 6e 74 20 70 72 65 2d 31 | signed.so.we.can.represent.pre-1 |
| 6700 | 39 37 30 20 28 6e 6f 74 20 61 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 29 3c 2f 73 70 61 6e 3e 0a 20 | 970.(not.a.doc.comment)</span>.. |
| 6720 | 20 20 20 3c 73 70 61 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">/// |
| 6740 | 20 54 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 6e 61 6e 6f 73 65 63 6f 6e 64 73 20 70 61 73 74 20 | .The.number.of.nanoseconds.past. |
| 6760 | 74 68 65 20 73 65 63 6f 6e 64 20 28 64 6f 63 20 63 6f 6d 6d 65 6e 74 20 61 67 61 69 6e 29 2e 3c | the.second.(doc.comment.again).< |
| 6780 | 2f 73 70 61 6e 3e 0a 20 20 20 20 6e 61 6e 6f 73 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | /span>.....nanos:.<span.class="t |
| 67a0 | 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 0a 0a 20 20 20 20 3c 73 70 61 6e 20 | ok-type">u32</span>,......<span. |
| 67c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 52 65 74 75 72 6e 73 20 | class="tok-comment">///.Returns. |
| 67e0 | 61 20 60 54 69 6d 65 73 74 61 6d 70 60 20 73 74 72 75 63 74 20 72 65 70 72 65 73 65 6e 74 69 6e | a.`Timestamp`.struct.representin |
| 6800 | 67 20 74 68 65 20 55 6e 69 78 20 65 70 6f 63 68 3b 20 74 68 61 74 20 69 73 2c 20 74 68 65 3c 2f | g.the.Unix.epoch;.that.is,.the</ |
| 6820 | 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 |
| 6840 | 6e 74 22 3e 2f 2f 2f 20 6d 6f 6d 65 6e 74 20 6f 66 20 31 39 37 30 20 4a 61 6e 20 31 20 30 30 3a | nt">///.moment.of.1970.Jan.1.00: |
| 6860 | 30 30 3a 30 30 20 55 54 43 20 28 74 68 69 73 20 69 73 20 61 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 | 00:00.UTC.(this.is.a.doc.comment |
| 6880 | 20 74 6f 6f 29 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .too).</span>.....<span.class="t |
| 68a0 | 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 |
| 68c0 | 6f 6b 2d 6b 77 22 3e 66 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 |
| 68e0 | 6b 2d 66 6e 22 3e 75 6e 69 78 45 70 6f 63 68 3c 2f 73 70 61 6e 3e 28 29 20 54 69 6d 65 73 74 61 | k-fn">unixEpoch</span>().Timesta |
| 6900 | 6d 70 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | mp.{.........<span.class="tok-kw |
| 6920 | 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 54 69 6d 65 73 74 61 6d 70 7b 0a 20 20 20 20 20 | ">return</span>.Timestamp{...... |
| 6940 | 20 20 20 20 20 20 20 2e 73 65 63 6f 6e 64 73 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ........seconds.=.<span.class="t |
| 6960 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 | ok-number">0</span>,............ |
| 6980 | 20 2e 6e 61 6e 6f 73 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | ..nanos.=.<span.class="tok-numbe |
| 69a0 | 72 22 3e 30 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 7d 3b 0a 20 20 20 20 7d 0a 7d 3b | r">0</span>,.........};.....}.}; |
| 69c0 | 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 44 6f | </code></pre>.......<p>.......Do |
| 69e0 | 63 20 63 6f 6d 6d 65 6e 74 73 20 61 72 65 20 6f 6e 6c 79 20 61 6c 6c 6f 77 65 64 20 69 6e 20 63 | c.comments.are.only.allowed.in.c |
| 6a00 | 65 72 74 61 69 6e 20 70 6c 61 63 65 73 3b 20 65 76 65 6e 74 75 61 6c 6c 79 2c 20 69 74 20 77 69 | ertain.places;.eventually,.it.wi |
| 6a20 | 6c 6c 0a 20 20 20 20 20 20 62 65 63 6f 6d 65 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 | ll.......become.a.compile.error. |
| 6a40 | 68 61 76 65 20 61 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 20 69 6e 20 61 6e 20 75 6e 65 78 70 65 63 | have.a.doc.comment.in.an.unexpec |
| 6a60 | 74 65 64 20 70 6c 61 63 65 2c 20 73 75 63 68 20 61 73 0a 20 20 20 20 20 20 69 6e 20 74 68 65 20 | ted.place,.such.as.......in.the. |
| 6a80 | 6d 69 64 64 6c 65 20 6f 66 20 61 6e 20 65 78 70 72 65 73 73 69 6f 6e 2c 20 6f 72 20 6a 75 73 74 | middle.of.an.expression,.or.just |
| 6aa0 | 20 62 65 66 6f 72 65 20 61 20 6e 6f 6e 2d 64 6f 63 20 63 6f 6d 6d 65 6e 74 2e 0a 20 20 20 20 20 | .before.a.non-doc.comment....... |
| 6ac0 | 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 31 20 69 64 | .</p>.....................<h1.id |
| 6ae0 | 3d 22 56 61 6c 75 65 73 22 3e 56 61 6c 75 65 73 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 20 | ="Values">Values</h1>........<p. |
| 6b00 | 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 76 61 6c 75 65 73 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e | class="file">values.zig</p><pre> |
| 6b20 | 3c 63 6f 64 65 20 63 6c 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 |
| 6b40 | 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. |
| 6b60 | 63 6c 61 73 73 3d 22 74 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 |
| 6b80 | 6e 3e 28 3c 73 70 61 6e 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 |
| 6ba0 | 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 |
| 6bc0 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 77 61 72 6e 20 3d 20 73 74 64 2e 64 | ok-kw">const</span>.warn.=.std.d |
| 6be0 | 65 62 75 67 2e 77 61 72 6e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | ebug.warn;.<span.class="tok-kw"> |
| 6c00 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6f 73 20 3d 20 73 74 64 2e 6f 73 3b 0a 3c 73 70 61 6e 20 | const</span>.os.=.std.os;.<span. |
| 6c20 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 | class="tok-kw">const</span>.asse |
| 6c40 | 72 74 20 3d 20 73 74 64 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c | rt.=.std.debug.assert;..<span.cl |
| 6c60 | 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 |
| 6c80 | 61 73 73 3d 22 74 6f 6b 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 |
| 6ca0 | 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. |
| 6cc0 | 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>.{.. |
| 6ce0 | 20 20 20 3c 73 70 61 6e 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">//. |
| 6d00 | 69 6e 74 65 67 65 72 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | integers</span>.....<span.class= |
| 6d20 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6f 6e 65 5f 70 6c 75 73 5f 6f | "tok-kw">const</span>.one_plus_o |
| 6d40 | 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</ |
| 6d60 | 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" |
| 6d80 | 3e 31 3c 2f 73 70 61 6e 3e 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | >1</span>.+.<span.class="tok-num |
| 6da0 | 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 77 61 72 6e 28 3c 73 70 61 6e 20 63 6c | ber">1</span>;.....warn(<span.cl |
| 6dc0 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 31 20 2b 20 31 20 3d 20 7b 7d 5c 6e | ass="tok-str">"1.+.1.=.{}\n |
| 6de0 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 6f 6e 65 5f 70 6c 75 73 5f 6f 6e 65 29 3b 0a 0a 20 | "</span>,.one_plus_one);... |
| 6e00 | 20 20 20 3c 73 70 61 6e 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">//. |
| 6e20 | 66 6c 6f 61 74 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | floats</span>.....<span.class="t |
| 6e40 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 65 76 65 6e 5f 64 69 76 5f 74 68 | ok-kw">const</span>.seven_div_th |
| 6e60 | 72 65 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c | ree:.<span.class="tok-type">f32< |
| 6e80 | 2f 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 |
| 6ea0 | 22 3e 37 2e 30 3c 2f 73 70 61 6e 3e 20 2f 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ">7.0</span>./.<span.class="tok- |
| 6ec0 | 6e 75 6d 62 65 72 22 3e 33 2e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 77 61 72 6e 28 3c 73 70 | number">3.0</span>;.....warn(<sp |
| 6ee0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 37 2e 30 20 2f 20 33 | an.class="tok-str">"7.0./.3 |
| 6f00 | 2e 30 20 3d 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 73 65 76 65 6e 5f 64 69 | .0.=.{}\n"</span>,.seven_di |
| 6f20 | 76 5f 74 68 72 65 65 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | v_three);......<span.class="tok- |
| 6f40 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 62 6f 6f 6c 65 61 6e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 77 | comment">//.boolean</span>.....w |
| 6f60 | 61 72 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b | arn(<span.class="tok-str">" |
| 6f80 | 7b 7d 5c 6e 7b 7d 5c 6e 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 | {}\n{}\n{}\n"</span>,...... |
| 6fa0 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f | ...<span.class="tok-null">true</ |
| 6fc0 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 64 3c 2f | span>.<span.class="tok-kw">and</ |
| 6fe0 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c | span>.<span.class="tok-null">fal |
| 7000 | 73 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | se</span>,.........<span.class=" |
| 7020 | 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-null">true</span>.<span.clas |
| 7040 | 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 |
| 7060 | 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 | ="tok-null">false</span>,....... |
| 7080 | 20 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f | ..!<span.class="tok-null">true</ |
| 70a0 | 73 70 61 6e 3e 29 3b 0a 20 20 20 20 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | span>);..........<span.class="to |
| 70c0 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6f 70 74 69 6f 6e 61 6c 3c 2f 73 70 61 6e 3e 0a 20 20 | k-comment">//.optional</span>... |
| 70e0 | 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 |
| 7100 | 3e 20 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 3a 20 3f 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 | >.optional_value:.?[]<span.class |
| 7120 | 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 |
| 7140 | 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. |
| 7160 | 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 20 | class="tok-null">null</span>;... |
| 7180 | 20 20 61 73 73 65 72 74 28 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 20 3d 3d 20 3c 73 70 61 6e | ..assert(optional_value.==.<span |
| 71a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 29 3b 0a | .class="tok-null">null</span>);. |
| 71c0 | 0a 20 20 20 20 77 61 72 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e | .....warn(<span.class="tok-str"> |
| 71e0 | 26 71 75 6f 74 3b 5c 6e 6f 70 74 69 6f 6e 61 6c 20 31 5c 6e 74 79 70 65 3a 20 7b 7d 5c 6e 76 61 | "\noptional.1\ntype:.{}\nva |
| 7200 | 6c 75 65 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 | lue:.{}\n"</span>,......... |
| 7220 | 3c 73 70 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 |
| 7240 | 61 6d 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | ame</span>(<span.class="tok-buil |
| 7260 | 74 69 6e 22 3e 40 74 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 | tin">@typeOf</span>(optional_val |
| 7280 | 75 65 29 29 2c 20 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 29 3b 0a 0a 20 20 20 20 6f 70 74 69 | ue)),.optional_value);......opti |
| 72a0 | 6f 6e 61 6c 5f 76 61 6c 75 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | onal_value.=.<span.class="tok-st |
| 72c0 | 72 22 3e 26 71 75 6f 74 3b 68 69 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 61 73 | r">"hi"</span>;.....as |
| 72e0 | 73 65 72 74 28 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 20 21 3d 20 3c 73 70 61 6e 20 63 6c 61 | sert(optional_value.!=.<span.cla |
| 7300 | 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 | ss="tok-null">null</span>);..... |
| 7320 | 20 77 61 72 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f | .warn(<span.class="tok-str">&quo |
| 7340 | 74 3b 5c 6e 6f 70 74 69 6f 6e 61 6c 20 32 5c 6e 74 79 70 65 3a 20 7b 7d 5c 6e 76 61 6c 75 65 3a | t;\noptional.2\ntype:.{}\nvalue: |
| 7360 | 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 | .{}\n"</span>,.........<spa |
| 7380 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 4e 61 6d 65 3c | n.class="tok-builtin">@typeName< |
| 73a0 | 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" |
| 73c0 | 3e 40 74 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 29 | >@typeOf</span>(optional_value)) |
| 73e0 | 2c 20 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | ,.optional_value);......<span.cl |
| 7400 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 65 72 72 6f 72 20 75 6e 69 6f 6e | ass="tok-comment">//.error.union |
| 7420 | 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" |
| 7440 | 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6e 75 6d 62 65 72 5f 6f 72 5f 65 72 72 6f 72 3a 20 3c 73 70 | >var</span>.number_or_error:.<sp |
| 7460 | 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 21 3c | an.class="tok-kw">error</span>!< |
| 7480 | 73 70 61 6e 20 63 6c 61 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> |
| 74a0 | 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 |
| 74c0 | 70 61 6e 3e 2e 41 72 67 4e 6f 74 46 6f 75 6e 64 3b 0a 0a 20 20 20 20 77 61 72 6e 28 3c 73 70 61 | pan>.ArgNotFound;......warn(<spa |
| 74e0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 5c 6e 65 72 72 6f 72 20 | n.class="tok-str">"\nerror. |
| 7500 | 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 7d 5c 6e 26 71 | union.1\ntype:.{}\nvalue:.{}\n&q |
| 7520 | 75 6f 74 3b 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 | uot;</span>,.........<span.class |
| 7540 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 | ="tok-builtin">@typeName</span>( |
| 7560 | 3c 73 70 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 4f | <span.class="tok-builtin">@typeO |
| 7580 | 66 3c 2f 73 70 61 6e 3e 28 6e 75 6d 62 65 72 5f 6f 72 5f 65 72 72 6f 72 29 29 2c 20 6e 75 6d 62 | f</span>(number_or_error)),.numb |
| 75a0 | 65 72 5f 6f 72 5f 65 72 72 6f 72 29 3b 0a 20 0a 20 20 20 20 6e 75 6d 62 65 72 5f 6f 72 5f 65 72 | er_or_error);.......number_or_er |
| 75c0 | 72 6f 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | ror.=.<span.class="tok-number">1 |
| 75e0 | 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 77 61 72 6e 28 3c 73 70 61 6e 20 63 6c 61 73 | 234</span>;......warn(<span.clas |
| 7600 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 5c 6e 65 72 72 6f 72 20 75 6e 69 6f 6e 20 | s="tok-str">"\nerror.union. |
| 7620 | 32 5c 6e 74 79 70 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 | 2\ntype:.{}\nvalue:.{}\n"</ |
| 7640 | 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- |
| 7660 | 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 | builtin">@typeName</span>(<span. |
| 7680 | 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 4f 66 3c 2f 73 70 61 | class="tok-builtin">@typeOf</spa |
| 76a0 | 6e 3e 28 6e 75 6d 62 65 72 5f 6f 72 5f 65 72 72 6f 72 29 29 2c 20 6e 75 6d 62 65 72 5f 6f 72 5f | n>(number_or_error)),.number_or_ |
| 76c0 | 65 72 72 6f 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 | error);.}</code></pre><pre><code |
| 76e0 | 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 76 | .class="shell">$.zig.build-exe.v |
| 7700 | 61 6c 75 65 73 2e 7a 69 67 0a 24 20 2e 2f 76 61 6c 75 65 73 0a 31 20 2b 20 31 20 3d 20 32 0a 37 | alues.zig.$../values.1.+.1.=.2.7 |
| 7720 | 2e 30 20 2f 20 33 2e 30 20 3d 20 32 2e 33 33 33 33 33 33 32 35 65 2b 30 30 0a 66 61 6c 73 65 0a | .0./.3.0.=.2.33333325e+00.false. |
| 7740 | 74 72 75 65 0a 66 61 6c 73 65 0a 0a 6f 70 74 69 6f 6e 61 6c 20 31 0a 74 79 70 65 3a 20 3f 5b 5d | true.false..optional.1.type:.?[] |
| 7760 | 63 6f 6e 73 74 20 75 38 0a 76 61 6c 75 65 3a 20 6e 75 6c 6c 0a 0a 6f 70 74 69 6f 6e 61 6c 20 32 | const.u8.value:.null..optional.2 |
| 7780 | 0a 74 79 70 65 3a 20 3f 5b 5d 63 6f 6e 73 74 20 75 38 0a 76 61 6c 75 65 3a 20 68 69 0a 0a 65 72 | .type:.?[]const.u8.value:.hi..er |
| 77a0 | 72 6f 72 20 75 6e 69 6f 6e 20 31 0a 74 79 70 65 3a 20 65 72 72 6f 72 21 69 33 32 0a 76 61 6c 75 | ror.union.1.type:.error!i32.valu |
| 77c0 | 65 3a 20 65 72 72 6f 72 2e 41 72 67 4e 6f 74 46 6f 75 6e 64 0a 0a 65 72 72 6f 72 20 75 6e 69 6f | e:.error.ArgNotFound..error.unio |
| 77e0 | 6e 20 32 0a 74 79 70 65 3a 20 65 72 72 6f 72 21 69 33 32 0a 76 61 6c 75 65 3a 20 31 32 33 34 0a | n.2.type:.error!i32.value:.1234. |
| 7800 | 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 50 72 69 | </code></pre>........<h2.id="Pri |
| 7820 | 6d 69 74 69 76 65 2d 54 79 70 65 73 22 3e 50 72 69 6d 69 74 69 76 65 20 54 79 70 65 73 3c 2f 68 | mitive-Types">Primitive.Types</h |
| 7840 | 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 |
| 7860 | 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> |
| 7880 | 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 |
| 78a0 | 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>. |
| 78c0 | 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........ |
| 78e0 | 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>......... |
| 7900 | 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>. |
| 7920 | 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>...... |
| 7940 | 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 |
| 7960 | 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 |
| 7980 | 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 |
| 79a0 | 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>...... |
| 79c0 | 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 |
| 79e0 | 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>... |
| 7a00 | 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"> |
| 7a20 | 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> |
| 7a40 | 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 |
| 7a60 | 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>.. |
| 7a80 | 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 |
| 7aa0 | 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>.........< |
| 7ac0 | 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= |
| 7ae0 | 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 |
| 7b00 | 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 |
| 7b20 | 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> |
| 7b40 | 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 |
| 7b60 | 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>.... |
| 7b80 | 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. |
| 7ba0 | 63 6c 61 73 73 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 |
| 7bc0 | 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>....... |
| 7be0 | 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 |
| 7c00 | 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 |
| 7c20 | 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>......... |
| 7c40 | 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>.............< |
| 7c60 | 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 |
| 7c80 | 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 |
| 7ca0 | 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" |
| 7cc0 | 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>...........< |
| 7ce0 | 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>... |
| 7d00 | 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>........ |
| 7d20 | 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 |
| 7d40 | 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 |
| 7d60 | 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 |
| 7d80 | 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>..... |
| 7da0 | 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 |
| 7dc0 | 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 |
| 7de0 | 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 |
| 7e00 | 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</ |
| 7e20 | 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> |
| 7e40 | 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></ |
| 7e60 | 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. |
| 7e80 | 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>...... |
| 7ea0 | 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 |
| 7ec0 | 61 73 73 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" |
| 7ee0 | 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>......... |
| 7f00 | 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</ |
| 7f20 | 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 |
| 7f40 | 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>.........</ |
| 7f60 | 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 |
| 7f80 | 3e 3c 63 6f 64 65 20 63 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=" |
| 7fa0 | 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 |
| 7fc0 | 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"> |
| 7fe0 | 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>...........< |
| 8000 | 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>.. |
| 8020 | 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>....... |
| 8040 | 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 |
| 8060 | 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></ |
| 8080 | 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 |
| 80a0 | 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 |
| 80c0 | 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 |
| 80e0 | 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> |
| 8100 | 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 |
| 8120 | 6f 64 65 20 63 6c 61 73 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 |
| 8140 | 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>. |
| 8160 | 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 |
| 8180 | 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 |
| 81a0 | 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 |
| 81c0 | 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>... |
| 81e0 | 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"> |
| 8200 | 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 |
| 8220 | 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 |
| 8240 | 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></ |
| 8260 | 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 |
| 8280 | 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>.........</ |
| 82a0 | 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 |
| 82c0 | 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= |
| 82e0 | 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> |
| 8300 | 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= |
| 8320 | 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>........... |
| 8340 | 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 |
| 8360 | 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> |
| 8380 | 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 |
| 83a0 | 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 |
| 83c0 | 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>........... |
| 83e0 | 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 |
| 8400 | 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 |
| 8420 | 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>.. |
| 8440 | 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>....... |
| 8460 | 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 |
| 8480 | 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>< |
| 84a0 | 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. |
| 84c0 | 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>....... |
| 84e0 | 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 |
| 8500 | 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>......... |
| 8520 | 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 |
| 8540 | 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_ |
| 8560 | 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>......... |
| 8580 | 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 |
| 85a0 | 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 |
| 85c0 | 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>.. |
| 85e0 | 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>....... |
| 8600 | 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 |
| 8620 | 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> |
| 8640 | 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 |
| 8660 | 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>..... |
| 8680 | 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. |
| 86a0 | 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>....... |
| 86c0 | 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 |
| 86e0 | 73 73 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"> |
| 8700 | 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>...... |
| 8720 | 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 |
| 8740 | 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 |
| 8760 | 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 |
| 8780 | 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>... |
| 87a0 | 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"> |
| 87c0 | 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 |
| 87e0 | 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>...........< |
| 8800 | 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 |
| 8820 | 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 |
| 8840 | 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>........ |
| 8860 | 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>............. |
| 8880 | 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 |
| 88a0 | 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>< |
| 88c0 | 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. |
| 88e0 | 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 |
| 8900 | 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 |
| 8920 | 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>........ |
| 8940 | 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>............. |
| 8960 | 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 |
| 8980 | 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> |
| 89a0 | 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 |
| 89c0 | 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 |
| 89e0 | 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 |
| 8a00 | 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> |
| 8a20 | 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 |
| 8a40 | 6f 64 65 20 63 6c 61 73 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 |
| 8a60 | 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> |
| 8a80 | 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 |
| 8aa0 | 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 |
| 8ac0 | 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>. |
| 8ae0 | 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>..... |
| 8b00 | 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 |
| 8b20 | 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>< |
| 8b40 | 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. |
| 8b60 | 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>.. |
| 8b80 | 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 |
| 8ba0 | 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 |
| 8bc0 | 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>.. |
| 8be0 | 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 |
| 8c00 | 65 20 63 6c 61 73 73 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 |
| 8c20 | 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>..... |
| 8c40 | 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< |
| 8c60 | 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 |
| 8c80 | 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 |
| 8ca0 | 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>... |
| 8cc0 | 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>........ |
| 8ce0 | 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 |
| 8d00 | 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 |
| 8d20 | 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 |
| 8d40 | 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>....... |
| 8d60 | 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 |
| 8d80 | 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 |
| 8da0 | 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>....... |
| 8dc0 | 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 |
| 8de0 | 73 73 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"> |
| 8e00 | 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>......... |
| 8e20 | 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 |
| 8e40 | 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- |
| 8e60 | 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 |
| 8e80 | 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 |
| 8ea0 | 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>... |
| 8ec0 | 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"> |
| 8ee0 | 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 |
| 8f00 | 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 |
| 8f20 | 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>... |
| 8f40 | 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 |
| 8f60 | 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> |
| 8f80 | 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 |
| 8fa0 | 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> |
| 8fc0 | 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>...... |
| 8fe0 | 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 |
| 9000 | 61 73 73 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" |
| 9020 | 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>........ |
| 9040 | 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 |
| 9060 | 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>.. |
| 9080 | 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 |
| 90a0 | 65 20 63 6c 61 73 73 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 |
| 90c0 | 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> |
| 90e0 | 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>...... |
| 9100 | 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 |
| 9120 | 3d 22 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 |
| 9140 | 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 |
| 9160 | 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 |
| 9180 | 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 |
| 91a0 | 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 |
| 91c0 | 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">< |
| 91e0 | 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< |
| 9200 | 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=" |
| 9220 | 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< |
| 9240 | 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 |
| 9260 | 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>...... |
| 9280 | 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>........... |
| 92a0 | 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 |
| 92c0 | 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 |
| 92e0 | 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> |
| 9300 | 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 |
| 9320 | 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> |
| 9340 | 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 |
| 9360 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 | g"><span.class="tok-kw">error</s |
| 9380 | 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 28 | pan></code></td>...........<td>( |
| 93a0 | 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 20 65 72 72 6f | none)</td>...........<td>an.erro |
| 93c0 | 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 20 20 20 20 20 | r.code</td>.........</tr>....... |
| 93e0 | 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 |
| 9400 | 73 73 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"> |
| 9420 | 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 74 64 3e 0a | comptime_int</span></code></td>. |
| 9440 | 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 20 | ..........<td>(none)</td>....... |
| 9460 | 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 20 68 72 65 66 | ....<td>Only.allowed.for.<a.href |
| 9480 | 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 20 | ="#comptime">comptime</a>-known. |
| 94a0 | 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 20 6c 69 74 65 | values..The.type.of.integer.lite |
| 94c0 | 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 20 20 20 20 | rals.</td>.........</tr>........ |
| 94e0 | 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 20 63 6c 61 73 | .<tr>.............<td><code.clas |
| 9500 | 73 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 |
| 9520 | 6f 6d 70 74 69 6d 65 5f 66 6c 6f 61 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e | omptime_float</span></code></td> |
| 9540 | 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>...... |
| 9560 | 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 20 68 72 65 | .....<td>Only.allowed.for.<a.hre |
| 9580 | 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 |
| 95a0 | 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 6c 69 74 65 72 | .values..The.type.of.float.liter |
| 95c0 | 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 20 20 20 3c 2f | als.</td>.........</tr>.......</ |
| 95e0 | 74 61 62 6c 65 3e 0a 20 20 20 20 20 20 3c 2f 64 69 76 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | table>.......</div>.......<p>... |
| 9600 | 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 67 65 72 20 74 | ....In.addition.to.the.integer.t |
| 9620 | 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 69 64 74 68 20 | ypes.above,.arbitrary.bit-width. |
| 9640 | 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 62 79 20 75 73 | integers.can.be.referenced.by.us |
| 9660 | 69 6e 67 0a 20 20 20 20 20 20 61 6e 20 69 64 65 6e 74 69 66 69 65 72 20 6f 66 20 3c 63 6f 64 65 | ing.......an.identifier.of.<code |
| 9680 | 3e 69 3c 2f 63 6f 64 65 3e 20 6f 72 20 3c 2f 63 6f 64 65 3e 75 3c 2f 63 6f 64 65 3e 20 66 6f 6c | >i</code>.or.</code>u</code>.fol |
| 96a0 | 6c 6f 77 65 64 20 62 79 20 64 69 67 69 74 73 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 74 68 | lowed.by.digits..For.example,.th |
| 96c0 | 65 20 69 64 65 6e 74 69 66 69 65 72 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | e.identifier.......<code.class=" |
| 96e0 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 37 3c 2f | zig"><span.class="tok-type">i7</ |
| 9700 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 72 65 66 65 72 73 20 74 6f 20 61 20 73 69 67 6e 65 64 20 | span></code>.refers.to.a.signed. |
| 9720 | 37 2d 62 69 74 20 69 6e 74 65 67 65 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | 7-bit.integer........</p>....... |
| 9740 | 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 |
| 9760 | 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 3c | ="#Integers">Integers</a></li>.< |
| 9780 | 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>< |
| 97a0 | 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 76 6f 69 64 22 3e 76 6f 69 64 3c 2f 61 | /li>.<li><a.href="#void">void</a |
| 97c0 | 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 73 22 3e 45 72 72 | ></li>.<li><a.href="#Errors">Err |
| 97e0 | 6f 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 | ors</a></li>.</ul>.............. |
| 9800 | 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 50 72 69 6d 69 | .<h2.id="Primitive-Values">Primi |
| 9820 | 74 69 76 65 20 56 61 6c 75 65 73 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 64 69 76 20 63 6c 61 | tive.Values</h2>........<div.cla |
| 9840 | 73 73 3d 22 74 61 62 6c 65 2d 77 72 61 70 70 65 72 22 3e 0a 20 20 20 20 20 20 3c 74 61 62 6c 65 | ss="table-wrapper">.......<table |
| 9860 | 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 3e 0a 20 20 | >.........<tr>...........<th>... |
| 9880 | 20 20 20 20 20 20 20 20 20 20 4e 61 6d 65 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 68 3e 0a 20 | ..........Name...........</th>.. |
| 98a0 | 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 44 65 73 63 72 69 | .........<th>.............Descri |
| 98c0 | 70 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 3c 2f | ption...........</th>.........</ |
| 98e0 | 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 |
| 9900 | 3e 3c 63 6f 64 65 20 63 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=" |
| 9920 | 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 6e 64 | tok-null">true</span></code>.and |
| 9940 | 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=" |
| 9960 | 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 | tok-null">false</span></code></t |
| 9980 | 64 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 | d>.............<td><code.class=" |
| 99a0 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c | zig"><span.class="tok-type">bool |
| 99c0 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 76 61 6c 75 65 73 3c 2f 74 64 3e 0a 20 20 20 20 20 | </span></code>.values</td>...... |
| 99e0 | 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>........... |
| 9a00 | 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 |
| 9a20 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | ass="tok-null">null</span></code |
| 9a40 | 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 75 73 65 64 20 74 6f 20 73 | ></td>.............<td>used.to.s |
| 9a60 | 65 74 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 74 79 70 65 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 | et.an.optional.type.to.<code.cla |
| 9a80 | 73 73 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"> |
| 9aa0 | 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 | null</span></code></td>......... |
| 9ac0 | 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>.............< |
| 9ae0 | 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 |
| 9b00 | 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | ="tok-null">undefined</span></co |
| 9b20 | 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 75 73 65 64 20 74 6f 20 6c | de></td>...........<td>used.to.l |
| 9b40 | 65 61 76 65 20 61 20 76 61 6c 75 65 20 75 6e 73 70 65 63 69 66 69 65 64 3c 2f 74 64 3e 0a 20 20 | eave.a.value.unspecified</td>... |
| 9b60 | 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 20 20 20 | ......</tr>.......</table>...... |
| 9b80 | 20 3c 2f 64 69 76 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 | .</div>.......<p>See.also:</p><u |
| 9ba0 | 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 73 22 3e 4f 70 74 69 | l>.<li><a.href="#Optionals">Opti |
| 9bc0 | 6f 6e 61 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 75 6e 64 | onals</a></li>.<li><a.href="#und |
| 9be0 | 65 66 69 6e 65 64 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e | efined">undefined</a></li>.</ul> |
| 9c00 | 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 53 74 72 69 6e 67 2d 4c 69 | ...............<h2.id="String-Li |
| 9c20 | 74 65 72 61 6c 73 22 3e 53 74 72 69 6e 67 20 4c 69 74 65 72 61 6c 73 3c 2f 68 32 3e 0a 0a 20 20 | terals">String.Literals</h2>.... |
| 9c40 | 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> |
| 9c60 | 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 |
| 9c80 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 | ss="tok-kw">const</span>.assert. |
| 9ca0 | 3d 20 3c 73 70 61 6e 20 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 |
| 9cc0 | 6f 72 74 3c 2f 73 70 61 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" |
| 9ce0 | 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 61 | >"std"</span>).debug.a |
| 9d00 | 73 73 65 72 74 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | ssert;.<span.class="tok-kw">cons |
| 9d20 | 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- |
| 9d40 | 62 75 69 6c 74 69 6e 22 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 |
| 9d60 | 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 |
| 9d80 | 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 6b 77 22 | pan>).mem;..<span.class="tok-kw" |
| 9da0 | 3e 74 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 |
| 9dc0 | 72 22 3e 26 71 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 | r">"string.literals"</ |
| 9de0 | 73 70 61 6e 3e 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 |
| 9e00 | 6d 65 6e 74 22 3e 2f 2f 20 49 6e 20 5a 69 67 20 61 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c | ment">//.In.Zig.a.string.literal |
| 9e20 | 20 69 73 20 61 6e 20 61 72 72 61 79 20 6f 66 20 62 79 74 65 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 | .is.an.array.of.bytes.</span>... |
| 9e40 | 20 20 3c 73 70 61 6e 20 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 |
| 9e60 | 61 6e 3e 20 6e 6f 72 6d 61 6c 5f 62 79 74 65 73 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | an>.normal_bytes.=.<span.class=" |
| 9e80 | 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 |
| 9ea0 | 3e 3b 0a 20 20 20 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | >;.....assert(<span.class="tok-b |
| 9ec0 | 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 6e 6f 72 6d 61 6c 5f 62 79 | uiltin">@typeOf</span>(normal_by |
| 9ee0 | 74 65 73 29 20 3d 3d 20 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | tes).==.[<span.class="tok-number |
| 9f00 | 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 |
| 9f20 | 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 61 73 73 65 72 74 28 6e 6f 72 6d 61 6c 5f | ">u8</span>);.....assert(normal_ |
| 9f40 | 62 79 74 65 73 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | bytes.len.==.<span.class="tok-nu |
| 9f60 | 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 61 73 73 65 72 74 28 6e 6f 72 6d | mber">5</span>);.....assert(norm |
| 9f80 | 61 6c 5f 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 | al_bytes[<span.class="tok-number |
| 9fa0 | 22 3e 31 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ">1</span>].==.<span.class="tok- |
| 9fc0 | 73 74 72 22 3e 27 65 27 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 61 73 73 65 72 74 28 3c 73 70 | str">'e'</span>);.....assert(<sp |
| 9fe0 | 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 20 3d 3d | an.class="tok-str">'e'</span>.== |
| a000 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 5c 78 36 35 27 3c 2f 73 | .<span.class="tok-str">'\x65'</s |
| a020 | 70 61 6e 3e 29 3b 0a 20 20 20 20 61 73 73 65 72 74 28 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 | pan>);.....assert(mem.eql(<span. |
| a040 | 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 |
| a060 | 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 |
| a080 | 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | ot;</span>,.<span.class="tok-str |
| a0a0 | 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 3e 29 29 3b | ">"h\x65llo"</span>)); |
| a0c0 | 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e | ......<span.class="tok-comment"> |
| a0e0 | 2f 2f 20 41 20 43 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 20 69 73 20 61 20 6e 75 6c 6c 20 | //.A.C.string.literal.is.a.null. |
| a100 | 74 65 72 6d 69 6e 61 74 65 64 20 70 6f 69 6e 74 65 72 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c | terminated.pointer.</span>.....< |
| a120 | 73 70 61 6e 20 63 6c 61 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> |
| a140 | 20 6e 75 6c 6c 5f 74 65 72 6d 69 6e 61 74 65 64 5f 62 79 74 65 73 20 3d 20 3c 73 70 61 6e 20 63 | .null_terminated_bytes.=.<span.c |
| a160 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 63 26 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 75 6f 74 | lass="tok-str">c"hello" |
| a180 | 3b 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 | ;</span>;.....assert(<span.class |
| a1a0 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 6e 75 | ="tok-builtin">@typeOf</span>(nu |
| a1c0 | 6c 6c 5f 74 65 72 6d 69 6e 61 74 65 64 5f 62 79 74 65 73 29 20 3d 3d 20 5b 2a 5d 3c 73 70 61 6e | ll_terminated_bytes).==.[*]<span |
| a1e0 | 20 63 6c 61 73 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 |
| a200 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 3b 0a | an.class="tok-type">u8</span>);. |
| a220 | 20 20 20 20 61 73 73 65 72 74 28 6e 75 6c 6c 5f 74 65 72 6d 69 6e 61 74 65 64 5f 62 79 74 65 73 | ....assert(null_terminated_bytes |
| a240 | 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 |
| a260 | 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | n>].==.<span.class="tok-number"> |
| a280 | 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 | 0</span>);.}</code></pre><pre><c |
| a2a0 | 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 |
| a2c0 | 74 2e 7a 69 67 0a 54 65 73 74 20 31 2f 31 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 73 2e 2e | t.zig.Test.1/1.string.literals.. |
| a2e0 | 2e 4f 4b 0a 41 6c 6c 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 | .OK.All.tests.passed..</code></p |
| a300 | 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a | re>........<p>See.also:</p><ul>. |
| a320 | 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 41 72 72 61 79 73 22 3e 41 72 72 61 79 73 3c 2f 61 3e | <li><a.href="#Arrays">Arrays</a> |
| a340 | 3c 2f 6c 69 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 | </li>.<li><a.href="#Zig-Test">Zi |
| a360 | 67 20 54 65 73 74 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 33 | g.Test</a></li>.</ul>........<h3 |
| a380 | 20 69 64 3d 22 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 | .id="Escape-Sequences">Escape.Se |
| a3a0 | 71 75 65 6e 63 65 73 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 64 69 76 20 63 6c 61 73 73 3d 22 | quences</h3>........<div.class=" |
| a3c0 | 74 61 62 6c 65 2d 77 72 61 70 70 65 72 22 3e 0a 20 20 20 20 20 20 3c 74 61 62 6c 65 3e 0a 20 20 | table-wrapper">.......<table>... |
| a3e0 | 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 3e 0a 20 20 20 20 20 20 | ......<tr>...........<th>....... |
| a400 | 20 20 20 20 20 20 45 73 63 61 70 65 20 53 65 71 75 65 6e 63 65 0a 20 20 20 20 20 20 20 20 20 20 | ......Escape.Sequence........... |
| a420 | 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 20 | </th>...........<th>............ |
| a440 | 20 4e 61 6d 65 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 3c 2f | .Name...........</th>.........</ |
| a460 | 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 |
| a480 | 3e 3c 63 6f 64 65 3e 5c 6e 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | ><code>\n</code></td>........... |
| a4a0 | 3c 74 64 3e 4e 65 77 6c 69 6e 65 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 | <td>Newline</td>.........</tr>.. |
| a4c0 | 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 |
| a4e0 | 65 3e 5c 72 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 43 | e>\r</code></td>...........<td>C |
| a500 | 61 72 72 69 61 67 65 20 52 65 74 75 72 6e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 | arriage.Return</td>.........</tr |
| a520 | 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c | >.........<tr>.............<td>< |
| a540 | 63 6f 64 65 3e 5c 74 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 | code>\t</code></td>...........<t |
| a560 | 64 3e 54 61 62 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 | d>Tab</td>.........</tr>........ |
| a580 | 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 5c 5c 3c 2f | .<tr>.............<td><code>\\</ |
| a5a0 | 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 42 61 63 6b 73 6c 61 | code></td>...........<td>Backsla |
| a5c0 | 73 68 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 | sh</td>.........</tr>.........<t |
| a5e0 | 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 27 3c 2f 63 6f 64 | r>.............<td><code>\'</cod |
| a600 | 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 53 69 6e 67 6c 65 20 51 75 6f | e></td>...........<td>Single.Quo |
| a620 | 74 65 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 | te</td>.........</tr>.........<t |
| a640 | 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 22 3c 2f 63 6f 64 | r>.............<td><code>\"</cod |
| a660 | 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 44 6f 75 62 6c 65 20 51 75 6f | e></td>...........<td>Double.Quo |
| a680 | 74 65 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 | te</td>.........</tr>.........<t |
| a6a0 | 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 78 4e 4e 3c 2f 63 | r>.............<td><code>\xNN</c |
| a6c0 | 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 68 65 78 61 64 65 63 69 | ode></td>...........<td>hexadeci |
| a6e0 | 6d 61 6c 20 38 2d 62 69 74 20 63 68 61 72 61 63 74 65 72 20 63 6f 64 65 20 28 32 20 64 69 67 69 | mal.8-bit.character.code.(2.digi |
| a700 | 74 73 29 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a 20 20 20 20 20 20 20 20 3c | ts)</td>.........</tr>.........< |
| a720 | 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 5c 75 4e 4e 4e 4e | tr>.............<td><code>\uNNNN |
| a740 | 3c 2f 63 6f 64 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 68 65 78 61 64 | </code></td>...........<td>hexad |
| a760 | 65 63 69 6d 61 6c 20 31 36 2d 62 69 74 20 55 6e 69 63 6f 64 65 20 63 68 61 72 61 63 74 65 72 20 | ecimal.16-bit.Unicode.character. |
| a780 | 63 6f 64 65 20 55 54 46 2d 38 20 65 6e 63 6f 64 65 64 20 28 34 20 64 69 67 69 74 73 29 3c 2f 74 | code.UTF-8.encoded.(4.digits)</t |
| a7a0 | 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>... |
| a7c0 | 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 63 6f 64 65 3e 5c 55 4e 4e 4e 4e 4e 4e 3c 2f 63 6f | ..........<td><code>\UNNNNNN</co |
| a7e0 | 64 65 3e 3c 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 | de></td>...........<td>hexadecim |
| a800 | 61 6c 20 32 34 2d 62 69 74 20 55 6e 69 63 6f 64 65 20 63 68 61 72 61 63 74 65 72 20 63 6f 64 65 | al.24-bit.Unicode.character.code |
| a820 | 20 55 54 46 2d 38 20 65 6e 63 6f 64 65 64 20 28 36 20 64 69 67 69 74 73 29 3c 2f 74 64 3e 0a 20 | .UTF-8.encoded.(6.digits)</td>.. |
| a840 | 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 20 20 | .......</tr>.......</table>..... |
| a860 | 20 20 3c 2f 64 69 76 3e 0a 20 20 20 20 20 20 3c 70 3e 4e 6f 74 65 20 74 68 61 74 20 74 68 65 20 | ..</div>.......<p>Note.that.the. |
| a880 | 6d 61 78 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 | maximum.valid.Unicode.point.is.< |
| a8a0 | 63 6f 64 65 20 63 6c 61 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 |
| a8c0 | 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 30 66 66 66 66 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | k-number">0x10ffff</span></code> |
| a8e0 | 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 4d 75 6c 74 69 | .</p>..............<h3.id="Multi |
| a900 | 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 69 6c 69 6e 65 20 | line-String-Literals">Multiline. |
| a920 | 53 74 72 69 6e 67 20 4c 69 74 65 72 61 6c 73 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a | String.Literals</h3>........<p>. |
| a940 | 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 73 20 | ......Multiline.string.literals. |
| a960 | 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 63 72 | have.no.escapes.and.can.span.acr |
| a980 | 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 74 61 | oss.multiple.lines........To.sta |
| a9a0 | 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 20 75 | rt.a.multiline.string.literal,.u |
| a9c0 | 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 20 63 | se.the.<code.class="zig"><span.c |
| a9e0 | 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 3e 20 | lass="tok-str">\\</span></code>. |
| aa00 | 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 20 20 | token..Just.like.a.comment,..... |
| aa20 | 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 6c 20 | ..the.string.literal.goes.until. |
| aa40 | 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 66 20 | the.end.of.the.line..The.end.of. |
| aa60 | 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 20 69 | the.line.is.......not.included.i |
| aa80 | 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 77 65 | n.the.string.literal........Howe |
| aaa0 | 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 69 74 | ver,.if.the.next.line.begins.wit |
| aac0 | 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 73 3d | h.<code.class="zig"><span.class= |
| aae0 | 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 6e 20 | "tok-str">\\</span></code>.then. |
| ab00 | 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 20 20 | a.newline.is.appended.and....... |
| ab20 | 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 20 20 | the.string.literal.continues.... |
| ab40 | 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= |
| ab60 | 22 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 |
| ab80 | 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 20 3c | </span>.hello_world_in_c.=.....< |
| aba0 | 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 65 20 | span.class="tok-str">\\#include. |
| abc0 | 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 61 6e | <stdio.h>.</span>....<span |
| abe0 | 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 20 3c | .class="tok-str">\\.</span>....< |
| ac00 | 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 6e 28 | span.class="tok-str">\\int.main( |
| ac20 | 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 6e 3e | int.argc,.char.**argv).{.</span> |
| ac40 | 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 20 20 | ....<span.class="tok-str">\\.... |
| ac60 | 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 74 3b | printf("hello.world\n" |
| ac80 | 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 2d 73 | );.</span>....<span.class="tok-s |
| aca0 | 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 20 3c | tr">\\....return.0;.</span>....< |
| acc0 | 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 6e 3e | span.class="tok-str">\\}.</span> |
| ace0 | 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 | ;</code></pre>.......<p>.......F |
| ad00 | 6f 72 20 61 20 6d 75 6c 74 69 6c 69 6e 65 20 43 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 2c | or.a.multiline.C.string.literal, |
| ad20 | 20 70 72 65 70 65 6e 64 20 3c 63 6f 64 65 3e 63 3c 2f 63 6f 64 65 3e 20 74 6f 20 65 61 63 68 20 | .prepend.<code>c</code>.to.each. |
| ad40 | 3c 63 6f 64 65 20 63 6c 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 |
| ad60 | 6f 6b 2d 73 74 72 22 3e 5c 5c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3a 0a 20 20 20 20 20 20 | ok-str">\\</span></code>:....... |
| ad80 | 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 |
| ada0 | 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 |
| adc0 | 61 6e 3e 20 63 5f 73 74 72 69 6e 67 5f 6c 69 74 65 72 61 6c 20 3d 0a 20 20 20 20 3c 73 70 61 6e | an>.c_string_literal.=.....<span |
| ade0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 63 5c 5c 23 69 6e 63 6c 75 64 65 20 26 6c 74 | .class="tok-str">c\\#include.< |
| ae00 | 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 61 6e 20 63 6c | ;stdio.h>.</span>....<span.cl |
| ae20 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 63 5c 5c 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 3c 73 70 | ass="tok-str">c\\.</span>....<sp |
| ae40 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 63 5c 5c 69 6e 74 20 6d 61 69 6e 28 69 | an.class="tok-str">c\\int.main(i |
| ae60 | 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 6e 3e 20 | nt.argc,.char.**argv).{.</span>. |
| ae80 | 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 63 5c 5c 20 20 20 20 | ...<span.class="tok-str">c\\.... |
| aea0 | 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 74 3b | printf("hello.world\n" |
| aec0 | 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 2d 73 | );.</span>....<span.class="tok-s |
| aee0 | 74 72 22 3e 63 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 20 | tr">c\\....return.0;.</span>.... |
| af00 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 63 5c 5c 7d 0a 3c 2f 73 70 61 | <span.class="tok-str">c\\}.</spa |
| af20 | 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 0a 20 20 20 20 20 | n>;</code></pre>.......<p>...... |
| af40 | 20 49 6e 20 74 68 69 73 20 65 78 61 6d 70 6c 65 20 74 68 65 20 76 61 72 69 61 62 6c 65 20 3c 63 | .In.this.example.the.variable.<c |
| af60 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 63 5f 73 74 72 69 6e 67 5f 6c 69 74 65 72 61 6c | ode.class="zig">c_string_literal |
| af80 | 3c 2f 63 6f 64 65 3e 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 | </code>.has.type.<code.class="zi |
| afa0 | 67 22 3e 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 | g">[*]<span.class="tok-kw">const |
| afc0 | 3c 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 |
| afe0 | 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 6e 64 0a 20 20 20 20 20 20 68 61 73 20 61 20 | 8</span></code>.and.......has.a. |
| b000 | 74 65 72 6d 69 6e 61 74 69 6e 67 20 6e 75 6c 6c 20 62 79 74 65 2e 0a 20 20 20 20 20 20 3c 2f 70 | terminating.null.byte........</p |
| b020 | 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 |
| b040 | 3e 3c 61 20 68 72 65 66 3d 22 23 65 6d 62 65 64 46 69 6c 65 22 3e 40 65 6d 62 65 64 46 69 6c 65 | ><a.href="#embedFile">@embedFile |
| b060 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 | </a></li>.</ul>................. |
| b080 | 20 20 20 20 20 3c 68 32 20 69 64 3d 22 41 73 73 69 67 6e 6d 65 6e 74 22 3e 41 73 73 69 67 6e 6d | .....<h2.id="Assignment">Assignm |
| b0a0 | 65 6e 74 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 55 73 65 20 74 68 65 20 3c 63 6f 64 65 | ent</h2>........<p>Use.the.<code |
| b0c0 | 20 63 6c 61 73 73 3d 22 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 |
| b0e0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 20 74 6f | ">const</span></code>.keyword.to |
| b100 | 20 61 73 73 69 67 6e 20 61 20 76 61 6c 75 65 20 74 6f 20 61 6e 20 69 64 65 6e 74 69 66 69 65 72 | .assign.a.value.to.an.identifier |
| b120 | 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 |
| b140 | 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">< |
| b160 | 73 70 61 6e 20 63 6c 61 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> |
| b180 | 20 78 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 | .x.=.<span.class="tok-number">12 |
| b1a0 | 33 34 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | 34</span>;..<span.class="tok-kw" |
| b1c0 | 3e 66 6e 3c 2f 73 70 61 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"> |
| b1e0 | 66 6f 6f 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | foo</span>().<span.class="tok-ty |
| b200 | 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 |
| b220 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 74 20 77 6f 72 6b 73 20 61 74 20 67 | s="tok-comment">//.It.works.at.g |
| b240 | 6c 6f 62 61 6c 20 73 63 6f 70 65 20 61 73 20 77 65 6c 6c 20 61 73 20 69 6e 73 69 64 65 20 66 75 | lobal.scope.as.well.as.inside.fu |
| b260 | 6e 63 74 69 6f 6e 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | nctions.</span>.....<span.class= |
| b280 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 79 20 3d 20 3c 73 70 61 6e 20 | "tok-kw">const</span>.y.=.<span. |
| b2a0 | 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>;. |
| b2c0 | 0a 20 20 20 20 3c 73 70 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">/ |
| b2e0 | 2f 20 4f 6e 63 65 20 61 73 73 69 67 6e 65 64 2c 20 61 6e 20 69 64 65 6e 74 69 66 69 65 72 20 63 | /.Once.assigned,.an.identifier.c |
| b300 | 61 6e 6e 6f 74 20 62 65 20 63 68 61 6e 67 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 79 20 2b | annot.be.changed.</span>.....y.+ |
| b320 | 3d 20 3c 73 70 61 6e 20 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 |
| b340 | 61 6e 3e 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 | an>;.}..<span.class="tok-kw">tes |
| b360 | 74 3c 2f 73 70 61 6e 3e 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">& |
| b380 | 71 75 6f 74 3b 61 73 73 69 67 6e 6d 65 6e 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | quot;assignment"</span>.{.. |
| b3a0 | 20 20 20 66 6f 6f 28 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f | ...foo();.}</code></pre><pre><co |
| b3c0 | 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 |
| b3e0 | 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e | .zig.<span.class="t0_1">/home/an |
| b400 | 64 79 2f 64 65 76 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 | dy/dev/zig/docgen_tmp/test.zig:8 |
| b420 | 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 5f 31 22 3e 65 | :7:.</span><span.class="t31_1">e |
| b440 | 72 72 6f 72 3a 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 20 | rror:</span><span.class="t0_1">. |
| b460 | 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 73 70 61 6e 3e | cannot.assign.to.constant</span> |
| b480 | 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 61 73 73 3d 22 | .....y.+=.1;.......<span.class=" |
| b4a0 | 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>... |
| b4c0 | 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 70 61 6e 20 | .....<p><code.class="zig"><span. |
| b4e0 | 63 6c 61 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 |
| b500 | 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 74 65 73 20 74 | e>.applies.to.all.of.the.bytes.t |
| b520 | 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 65 6c 79 20 61 | hat.the.identifier.immediately.a |
| b540 | 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 73 22 3e 50 6f | ddresses..<a.href="#Pointers">Po |
| b560 | 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 6f 6e 73 74 2d | inters</a>.have.their.own.const- |
| b580 | 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 65 65 64 20 61 | ness.</p>.......<p>If.you.need.a |
| b5a0 | 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 66 79 2c 20 75 | .variable.that.you.can.modify,.u |
| b5c0 | 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 20 63 | se.the.<code.class="zig"><span.c |
| b5e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 | lass="tok-kw">var</span></code>. |
| b600 | 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 3d 22 66 69 6c | keyword:</p>.......<p.class="fil |
| b620 | 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= |
| b640 | 22 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 |
| b660 | 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | </span>.assert.=.<span.class="to |
| b680 | 6b 2d 62 75 69 6c 74 69 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. |
| b6a0 | 63 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"< |
| b6c0 | 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 | /span>).debug.assert;..<span.cla |
| b6e0 | 73 73 3d 22 74 6f 6b 2d 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 |
| b700 | 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 75 6f 74 3b 3c 2f 73 | ass="tok-str">"var"</s |
| b720 | 70 61 6e 3e 20 7b 0a 20 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"> |
| b740 | 76 61 72 3c 2f 73 70 61 6e 3e 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | var</span>.y:.<span.class="tok-t |
| b760 | 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 |
| b780 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 36 37 38 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 79 20 2b | ok-number">5678</span>;......y.+ |
| b7a0 | 3d 20 3c 73 70 61 6e 20 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 |
| b7c0 | 61 6e 3e 3b 0a 0a 20 20 20 20 61 73 73 65 72 74 28 79 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | an>;......assert(y.==.<span.clas |
| b7e0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 36 37 39 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f | s="tok-number">5679</span>);.}</ |
| b800 | 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 |
| b820 | 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 31 2f 31 | ll">$.zig.test.test.zig.Test.1/1 |
| b840 | 20 76 61 72 2e 2e 2e 4f 4b 0a 41 6c 6c 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f | .var...OK.All.tests.passed..</co |
| b860 | 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 56 61 72 69 61 62 6c 65 73 20 6d 75 | de></pre>........<p>Variables.mu |
| b880 | 73 74 20 62 65 20 69 6e 69 74 69 61 6c 69 7a 65 64 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 | st.be.initialized:</p>.......<p. |
| b8a0 | 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 |
| b8c0 | 6f 64 65 20 63 6c 61 73 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 |
| b8e0 | 2d 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 |
| b900 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 26 71 75 6f 74 | k-str">"initialization" |
| b920 | 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- |
| b940 | 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 |
| b960 | 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 78 20 3d 20 3c 73 | ok-type">i32</span>;......x.=.<s |
| b980 | 70 61 6e 20 63 6c 61 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>; |
| b9a0 | 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= |
| b9c0 | 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 |
| b9e0 | 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 | n.class="t0_1">/home/andy/dev/zi |
| ba00 | 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 3a 20 3c 2f 73 70 61 | g/docgen_tmp/test.zig:2:5:.</spa |
| ba20 | 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 3c 2f 73 70 | n><span.class="t31_1">error:</sp |
| ba40 | 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 20 76 61 72 69 61 62 6c 65 73 | an><span.class="t0_1">.variables |
| ba60 | 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 0a 20 20 20 20 | .must.be.initialized</span>..... |
| ba80 | 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 3d 22 74 33 32 | var.x:.i32;.....<span.class="t32 |
| baa0 | 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 3e | _1">^</span>.<span.class="t0_1"> |
| bac0 | 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 | /home/andy/dev/zig/docgen_tmp/te |
| bae0 | 73 74 2e 7a 69 67 3a 34 3a 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | st.zig:4:5:.</span><span.class=" |
| bb00 | 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | t31_1">error:</span><span.class= |
| bb20 | 22 74 30 5f 31 22 3e 20 75 73 65 20 6f 66 20 75 6e 64 65 63 6c 61 72 65 64 20 69 64 65 6e 74 69 | "t0_1">.use.of.undeclared.identi |
| bb40 | 66 69 65 72 20 27 78 27 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 78 20 3d 20 31 3b 0a 20 20 20 20 3c | fier.'x'</span>.....x.=.1;.....< |
| bb60 | 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 |
| bb80 | 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 75 6e 64 65 66 69 6e | de></pre>........<h3.id="undefin |
| bba0 | 65 64 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 55 73 65 | ed">undefined</h3>........<p>Use |
| bbc0 | 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=" |
| bbe0 | 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 |
| bc00 | 3e 20 74 6f 20 6c 65 61 76 65 20 76 61 72 69 61 62 6c 65 73 20 75 6e 69 6e 69 74 69 61 6c 69 7a | >.to.leave.variables.uninitializ |
| bc20 | 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 65 | ed:</p>.......<p.class="file">te |
| bc40 | 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" |
| bc60 | 3e 3c 73 70 61 6e 20 63 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 |
| bc80 | 6e 3e 20 61 73 73 65 72 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | n>.assert.=.<span.class="tok-bui |
| bca0 | 6c 74 69 6e 22 3e 40 69 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 |
| bcc0 | 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 |
| bce0 | 3e 29 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | >).debug.assert;..<span.class="t |
| bd00 | 6f 6b 2d 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=" |
| bd20 | 74 6f 6b 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 | tok-str">"init.with.undefin |
| bd40 | 65 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ed"</span>.{.....<span.clas |
| bd60 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 | s="tok-kw">var</span>.x:.<span.c |
| bd80 | 6c 61 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 |
| bda0 | 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 |
| bdc0 | 70 61 6e 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 | pan>;.....x.=.<span.class="tok-n |
| bde0 | 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 61 73 73 65 72 74 28 78 20 3d 3d | umber">1</span>;.....assert(x.== |
| be00 | 20 3c 73 70 61 6e 20 63 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 |
| be20 | 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 |
| be40 | 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. |
| be60 | 54 65 73 74 20 31 2f 31 20 69 6e 69 74 20 77 69 74 68 20 75 6e 64 65 66 69 6e 65 64 2e 2e 2e 4f | Test.1/1.init.with.undefined...O |
| be80 | 4b 0a 41 6c 6c 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 | K.All.tests.passed..</code></pre |
| bea0 | 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 22 | >........<p>.......<code.class=" |
| bec0 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 | zig"><span.class="tok-null">unde |
| bee0 | 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 3c 61 20 68 72 | fined</span></code>.can.be.<a.hr |
| bf00 | 65 66 3d 22 23 49 6d 70 6c 69 63 69 74 2d 43 61 73 74 73 22 3e 69 6d 70 6c 69 63 69 74 6c 79 20 | ef="#Implicit-Casts">implicitly. |
| bf20 | 63 61 73 74 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 20 20 20 | cast</a>.to.any.type............ |
| bf40 | 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 6f 6e 67 | Once.this.happens,.it.is.no.long |
| bf60 | 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 65 20 76 | er.possible.to.detect.that.the.v |
| bf80 | 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 61 6e 20 | alue.is.<code.class="zig"><span. |
| bfa0 | 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 |
| bfc0 | 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 20 63 6c | ></code>................<code.cl |
| bfe0 | 61 73 73 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" |
| c000 | 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 73 20 74 | >undefined</span></code>.means.t |
| c020 | 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 76 65 6e | he.value.could.be.anything,.even |
| c040 | 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 20 20 20 | .something.that.is.nonsense..... |
| c060 | 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 65 20 74 | ..............according.to.the.t |
| c080 | 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 20 3c 63 | ype..Translated.into.English,.<c |
| c0a0 | 6f 64 65 20 63 6c 61 73 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 |
| c0c0 | 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6d | -null">undefined</span></code>.m |
| c0e0 | 65 61 6e 73 20 22 4e 6f 74 20 61 20 6d 65 61 6e 69 6e 67 66 75 6c 0a 20 20 20 20 20 20 76 61 6c | eans."Not.a.meaningful.......val |
| c100 | 75 65 2e 20 55 73 69 6e 67 20 74 68 69 73 20 76 61 6c 75 65 20 77 6f 75 6c 64 20 62 65 20 61 20 | ue..Using.this.value.would.be.a. |
| c120 | 62 75 67 2e 20 54 68 65 20 76 61 6c 75 65 20 77 69 6c 6c 20 62 65 20 75 6e 75 73 65 64 2c 20 6f | bug..The.value.will.be.unused,.o |
| c140 | 72 20 6f 76 65 72 77 72 69 74 74 65 6e 20 62 65 66 6f 72 65 20 62 65 69 6e 67 20 75 73 65 64 2e | r.overwritten.before.being.used. |
| c160 | 22 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 | ".......</p>.......<p>.......In. |
| c180 | 3c 61 20 68 72 65 66 3d 22 23 44 65 62 75 67 22 3e 44 65 62 75 67 3c 2f 61 3e 20 6d 6f 64 65 2c | <a.href="#Debug">Debug</a>.mode, |
| c1a0 | 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 3e 3c 73 | .Zig.writes.<code.class="zig"><s |
| c1c0 | 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 73 70 61 | pan.class="tok-number">0xaa</spa |
| c1e0 | 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 6d 65 6d | n></code>.bytes.to.undefined.mem |
| c200 | 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 75 67 73 | ory..This.is.to.catch.......bugs |
| c220 | 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 65 20 6f | .early,.and.to.help.detect.use.o |
| c240 | 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 67 65 72 | f.undefined.memory.in.a.debugger |
| c260 | 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 | ........</p>.................... |
| c280 | 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 | ........<h1.id="Integers">Intege |
| c2a0 | 72 73 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 49 6e 74 65 67 65 72 2d 4c | rs</h1>........<h2.id="Integer-L |
| c2c0 | 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 68 32 3e 0a 0a | iterals">Integer.Literals</h2>.. |
| c2e0 | 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 |
| c300 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 64 | an.class="tok-kw">const</span>.d |
| c320 | 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 6e 75 | ecimal_int.=.<span.class="tok-nu |
| c340 | 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 73 3d | mber">98222</span>;.<span.class= |
| c360 | 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 3d 20 | "tok-kw">const</span>.hex_int.=. |
| c380 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 66 66 3c 2f 73 | <span.class="tok-number">0xff</s |
| c3a0 | 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 | pan>;.<span.class="tok-kw">const |
| c3c0 | 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 6e 20 | </span>.another_hex_int.=.<span. |
| c3e0 | 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 3b 0a | class="tok-number">0xFF</span>;. |
| c400 | 3c 73 70 61 6e 20 63 6c 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 |
| c420 | 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 2d 6e | >.octal_int.=.<span.class="tok-n |
| c440 | 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 73 73 | umber">0o755</span>;.<span.class |
| c460 | 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 69 6e | ="tok-kw">const</span>.binary_in |
| c480 | 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 62 31 | t.=.<span.class="tok-number">0b1 |
| c4a0 | 31 31 31 30 30 30 30 3c 2f 73 70 61 6e 3e 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 | 1110000</span>;</code></pre>.... |
| c4c0 | 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 52 75 6e 74 69 6d 65 2d 49 6e 74 65 67 65 | ..........<h2.id="Runtime-Intege |
| c4e0 | 72 2d 56 61 6c 75 65 73 22 3e 52 75 6e 74 69 6d 65 20 49 6e 74 65 67 65 72 20 56 61 6c 75 65 73 | r-Values">Runtime.Integer.Values |
| c500 | 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 74 65 67 65 72 20 6c | </h2>........<p>.......Integer.l |
| c520 | 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 74 61 74 69 6f 6e 2c | iterals.have.no.size.limitation, |
| c540 | 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 61 76 69 6f 72 20 6f | .and.if.any.undefined.behavior.o |
| c560 | 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 20 63 61 74 63 68 65 | ccurs,.......the.compiler.catche |
| c580 | 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 3e 0a 20 20 20 20 20 | s.it........</p>.......<p>...... |
| c5a0 | 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 20 76 61 6c 75 65 20 | .However,.once.an.integer.value. |
| c5c0 | 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 70 69 6c 65 2d 74 69 | is.no.longer.known.at.compile-ti |
| c5e0 | 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 6b 6e 6f 77 6e 20 73 | me,.it.must.have.a.......known.s |
| c600 | 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 20 75 6e 64 65 66 69 | ize,.and.is.vulnerable.to.undefi |
| c620 | 6e 65 64 20 62 65 68 61 76 69 6f 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | ned.behavior........</p>.......< |
| c640 | 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 |
| c660 | 73 3d 22 74 6f 6b 2d 6b 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 |
| c680 | 3d 22 74 6f 6b 2d 66 6e 22 3e 64 69 76 69 64 65 3c 2f 73 70 61 6e 3e 28 61 3a 20 3c 73 70 61 6e | ="tok-fn">divide</span>(a:.<span |
| c6a0 | 20 63 6c 61 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 | .class="tok-type">i32</span>,.b: |
| c6c0 | 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 |
| c6e0 | 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f | n>).<span.class="tok-type">i32</ |
| c700 | 73 70 61 6e 3e 20 7b 0a 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" |
| c720 | 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 61 20 2f 20 62 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f | >return</span>.a./.b;.}</code></ |
| c740 | 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 74 68 69 73 20 66 75 6e | pre>.......<p>.......In.this.fun |
| c760 | 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 3d 22 7a 69 67 22 3e | ction,.values.<code.class="zig"> |
| c780 | 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 62 | a</code>.and.<code.class="zig">b |
| c7a0 | 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 20 72 75 6e 74 69 6d | </code>.are.known.only.at.runtim |
| c7c0 | 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 76 69 73 69 6f 6e 20 | e,.......and.thus.this.division. |
| c7e0 | 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 6f 20 62 6f 74 68 20 | operation.is.vulnerable.to.both. |
| c800 | 69 6e 74 65 67 65 72 20 6f 76 65 72 66 6c 6f 77 20 61 6e 64 0a 20 20 20 20 20 20 64 69 76 69 73 | integer.overflow.and.......divis |
| c820 | 69 6f 6e 20 62 79 20 7a 65 72 6f 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | ion.by.zero........</p>.......<p |
| c840 | 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 20 3c 63 6f 64 65 20 | >.......Operators.such.as.<code. |
| c860 | 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 3c 63 6f 64 65 20 63 | class="zig">+</code>.and.<code.c |
| c880 | 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 20 75 6e 64 65 66 69 | lass="zig">-</code>.cause.undefi |
| c8a0 | 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 20 20 20 20 20 69 6e | ned.behavior.on...............in |
| c8c0 | 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 6c 61 62 6c 65 20 61 | teger.overflow..Also.available.a |
| c8e0 | 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 64 65 20 63 6c 61 73 | re.operations.such.as.<code.clas |
| c900 | 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 20 20 20 20 20 20 20 | s="zig">+%</code>.and........... |
| c920 | 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 2d 25 3c 2f 63 6f | ........<code.class="zig">-%</co |
| c940 | 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 68 61 76 65 20 77 72 | de>.which.are.defined.to.have.wr |
| c960 | 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 74 61 72 67 65 74 73 | apping.arithmetic.on.all.targets |
| c980 | 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:< |
| c9a0 | 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 2d 4f 76 | /p><ul>.<li><a.href="#Integer-Ov |
| c9c0 | 65 72 66 6c 6f 77 22 3e 49 6e 74 65 67 65 72 20 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 | erflow">Integer.Overflow</a></li |
| c9e0 | 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 44 69 76 69 73 69 6f 6e 2d 62 79 2d 5a 65 72 6f | >.<li><a.href="#Division-by-Zero |
| ca00 | 22 3e 44 69 76 69 73 69 6f 6e 20 62 79 20 5a 65 72 6f 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e | ">Division.by.Zero</a></li>.<li> |
| ca20 | 3c 61 20 68 72 65 66 3d 22 23 57 72 61 70 70 69 6e 67 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 57 | <a.href="#Wrapping-Operations">W |
| ca40 | 72 61 70 70 69 6e 67 20 4f 70 65 72 61 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c | rapping.Operations</a></li>.</ul |
| ca60 | 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 22 46 | >......................<h1.id="F |
| ca80 | 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 5a 69 67 | loats">Floats</h1>........<p>Zig |
| caa0 | 20 68 61 73 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e | .has.the.following.floating.poin |
| cac0 | 74 20 74 79 70 65 73 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 | t.types:</p>.......<ul>......... |
| cae0 | 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 |
| cb00 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 31 36 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ass="tok-type">f16</span></code> |
| cb20 | 20 2d 20 49 45 45 45 2d 37 35 34 2d 32 30 30 38 20 62 69 6e 61 72 79 31 36 3c 2f 6c 69 3e 0a 20 | .-.IEEE-754-2008.binary16</li>.. |
| cb40 | 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">< |
| cb60 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e | span.class="tok-type">f32</span> |
| cb80 | 3c 2f 63 6f 64 65 3e 20 2d 20 49 45 45 45 2d 37 35 34 2d 32 30 30 38 20 62 69 6e 61 72 79 33 32 | </code>.-.IEEE-754-2008.binary32 |
| cba0 | 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= |
| cbc0 | 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 36 34 | "zig"><span.class="tok-type">f64 |
| cbe0 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 2d 20 49 45 45 45 2d 37 35 34 2d 32 30 30 38 20 62 | </span></code>.-.IEEE-754-2008.b |
| cc00 | 69 6e 61 72 79 36 34 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 | inary64</li>...........<li><code |
| cc20 | 20 63 6c 61 73 73 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 |
| cc40 | 70 65 22 3e 66 31 32 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 2d 20 49 45 45 45 2d 37 35 | pe">f128</span></code>.-.IEEE-75 |
| cc60 | 34 2d 32 30 30 38 20 62 69 6e 61 72 79 31 32 38 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | 4-2008.binary128</li>........... |
| cc80 | 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 |
| cca0 | 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> |
| ccc0 | 3c 2f 63 6f 64 65 3e 20 2d 20 6d 61 74 63 68 65 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 | </code>.-.matches.<code.class="c |
| cce0 | 22 3e 6c 6f 6e 67 20 64 6f 75 62 6c 65 3c 2f 63 6f 64 65 3e 20 66 6f 72 20 74 68 65 20 74 61 72 | ">long.double</code>.for.the.tar |
| cd00 | 67 65 74 20 43 20 41 42 49 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 | get.C.ABI</li>.......</ul>...... |
| cd20 | 20 3c 68 32 20 69 64 3d 22 46 6c 6f 61 74 2d 4c 69 74 65 72 61 6c 73 22 3e 46 6c 6f 61 74 20 4c | .<h2.id="Float-Literals">Float.L |
| cd40 | 69 74 65 72 61 6c 73 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 | iterals</h2>........<p>.......Fl |
| cd60 | 6f 61 74 20 6c 69 74 65 72 61 6c 73 20 68 61 76 65 20 74 79 70 65 20 3c 63 6f 64 65 20 63 6c 61 | oat.literals.have.type.<code.cla |
| cd80 | 73 73 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"> |
| cda0 | 63 6f 6d 70 74 69 6d 65 5f 66 6c 6f 61 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 68 69 | comptime_float</span></code>.whi |
| cdc0 | 63 68 20 69 73 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 68 6f 6c 64 20 61 74 20 6c 65 61 73 | ch.is.guaranteed.to.hold.at.leas |
| cde0 | 74 20 61 6c 6c 20 70 6f 73 73 69 62 6c 65 20 76 61 6c 75 65 73 0a 20 20 20 20 20 20 74 68 61 74 | t.all.possible.values.......that |
| ce00 | 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 69 6e | .the.largest.other.floating.poin |
| ce20 | 74 20 74 79 70 65 20 63 61 6e 20 68 6f 6c 64 2e 20 46 6c 6f 61 74 20 6c 69 74 65 72 61 6c 73 20 | t.type.can.hold..Float.literals. |
| ce40 | 3c 61 20 68 72 65 66 3d 22 23 49 6d 70 6c 69 63 69 74 2d 43 61 73 74 73 22 3e 69 6d 70 6c 69 63 | <a.href="#Implicit-Casts">implic |
| ce60 | 69 74 6c 79 20 63 61 73 74 3c 2f 61 3e 20 74 6f 20 61 6e 79 20 6f 74 68 65 72 20 74 79 70 65 2e | itly.cast</a>.to.any.other.type. |
| ce80 | 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 |
| cea0 | 73 73 3d 22 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 |
| cec0 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 66 6c 6f 61 74 69 6e 67 5f 70 6f 69 6e 74 20 3d 20 3c 73 70 61 | nst</span>.floating_point.=.<spa |
| cee0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 2e 30 45 2b 37 37 3c 2f | n.class="tok-number">123.0E+77</ |
| cf00 | 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | span>;.<span.class="tok-kw">cons |
| cf20 | 74 3c 2f 73 70 61 6e 3e 20 61 6e 6f 74 68 65 72 5f 66 6c 6f 61 74 20 3d 20 3c 73 70 61 6e 20 63 | t</span>.another_float.=.<span.c |
| cf40 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 2e 30 3c 2f 73 70 61 6e 3e 3b 0a | lass="tok-number">123.0</span>;. |
| cf60 | 3c 73 70 61 6e 20 63 6c 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 |
| cf80 | 3e 20 79 65 74 5f 61 6e 6f 74 68 65 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | >.yet_another.=.<span.class="tok |
| cfa0 | 2d 6e 75 6d 62 65 72 22 3e 31 32 33 2e 30 65 2b 37 37 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 | -number">123.0e+77</span>;..<spa |
| cfc0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 68 65 | n.class="tok-kw">const</span>.he |
| cfe0 | 78 5f 66 6c 6f 61 74 69 6e 67 5f 70 6f 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | x_floating_point.=.<span.class=" |
| d000 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 30 33 2e 37 30 70 2d 35 3c 2f 73 70 61 6e 3e 3b 0a | tok-number">0x103.70p-5</span>;. |
| d020 | 3c 73 70 61 6e 20 63 6c 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 |
| d040 | 3e 20 61 6e 6f 74 68 65 72 5f 68 65 78 5f 66 6c 6f 61 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | >.another_hex_float.=.<span.clas |
| d060 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 30 33 2e 37 30 3c 2f 73 70 61 6e 3e 3b 0a | s="tok-number">0x103.70</span>;. |
| d080 | 3c 73 70 61 6e 20 63 6c 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 |
| d0a0 | 3e 20 79 65 74 5f 61 6e 6f 74 68 65 72 5f 68 65 78 5f 66 6c 6f 61 74 20 3d 20 3c 73 70 61 6e 20 | >.yet_another_hex_float.=.<span. |
| d0c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 30 33 2e 37 30 50 2d 35 3c 2f | class="tok-number">0x103.70P-5</ |
| d0e0 | 73 70 61 6e 3e 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 | span>;</code></pre>............. |
| d100 | 20 3c 68 32 20 69 64 3d 22 46 6c 6f 61 74 69 6e 67 2d 50 6f 69 6e 74 2d 4f 70 65 72 61 74 69 6f | .<h2.id="Floating-Point-Operatio |
| d120 | 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 68 | ns">Floating.Point.Operations</h |
| d140 | 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 42 79 20 64 65 66 61 75 6c 74 20 66 6c 6f 61 74 69 6e 67 | 2>........<p>By.default.floating |
| d160 | 20 70 6f 69 6e 74 20 6f 70 65 72 61 74 69 6f 6e 73 20 75 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 | .point.operations.use.<code.clas |
| d180 | 73 3d 22 7a 69 67 22 3e 53 74 72 69 63 74 3c 2f 63 6f 64 65 3e 20 6d 6f 64 65 2c 0a 20 20 20 20 | s="zig">Strict</code>.mode,..... |
| d1a0 | 20 20 20 20 20 20 62 75 74 20 79 6f 75 20 63 61 6e 20 73 77 69 74 63 68 20 74 6f 20 3c 63 6f 64 | ......but.you.can.switch.to.<cod |
| d1c0 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 4f 70 74 69 6d 69 7a 65 64 3c 2f 63 6f 64 65 3e 20 6d | e.class="zig">Optimized</code>.m |
| d1e0 | 6f 64 65 20 6f 6e 20 61 20 70 65 72 2d 62 6c 6f 63 6b 20 62 61 73 69 73 3a 3c 2f 70 3e 0a 20 20 | ode.on.a.per-block.basis:</p>... |
| d200 | 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 66 6f 6f 2e 7a 69 67 3c 2f 70 3e 3c | ....<p.class="file">foo.zig</p>< |
| d220 | 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 |
| d240 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 75 69 6c 74 69 6e 20 | s="tok-kw">const</span>.builtin. |
| d260 | 3d 20 3c 73 70 61 6e 20 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 |
| d280 | 6f 72 74 3c 2f 73 70 61 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" |
| d2a0 | 3e 26 71 75 6f 74 3b 62 75 69 6c 74 69 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 3c 73 | >"builtin"</span>);.<s |
| d2c0 | 70 61 6e 20 63 6c 61 73 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>. |
| d2e0 | 62 69 67 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 | big.=.<span.class="tok-type">f64 |
| d300 | 3c 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" |
| d320 | 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=" |
| d340 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 30 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 | tok-number">40</span>);..<span.c |
| d360 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 | lass="tok-kw">export</span>.<spa |
| d380 | 6e 20 63 6c 61 73 73 3d 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 |
| d3a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 5f 73 74 72 69 63 74 3c 2f 73 70 61 6e | .class="tok-fn">foo_strict</span |
| d3c0 | 3e 28 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 3c | >(x:.<span.class="tok-type">f64< |
| d3e0 | 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 | /span>).<span.class="tok-type">f |
| d400 | 36 34 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | 64</span>.{.....<span.class="tok |
| d420 | 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 78 20 2b 20 62 69 67 20 2d 20 62 69 67 | -kw">return</span>.x.+.big.-.big |
| d440 | 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 | ;.}..<span.class="tok-kw">export |
| d460 | 3c 2f 73 70 61 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< |
| d480 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 5f | /span>.<span.class="tok-fn">foo_ |
| d4a0 | 6f 70 74 69 6d 69 7a 65 64 3c 2f 73 70 61 6e 3e 28 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | optimized</span>(x:.<span.class= |
| d4c0 | 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 | "tok-type">f64</span>).<span.cla |
| d4e0 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c | ss="tok-type">f64</span>.{.....< |
| d500 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 65 74 46 6c 6f | span.class="tok-builtin">@setFlo |
| d520 | 61 74 4d 6f 64 65 3c 2f 73 70 61 6e 3e 28 62 75 69 6c 74 69 6e 2e 46 6c 6f 61 74 4d 6f 64 65 2e | atMode</span>(builtin.FloatMode. |
| d540 | 4f 70 74 69 6d 69 7a 65 64 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | Optimized);.....<span.class="tok |
| d560 | 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 78 20 2b 20 62 69 67 20 2d 20 62 69 67 | -kw">return</span>.x.+.big.-.big |
| d580 | 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 |
| d5a0 | 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 66 6f 6f 2e 7a 69 67 | ="shell">$.zig.build-obj.foo.zig |
| d5c0 | 20 2d 2d 72 65 6c 65 61 73 65 2d 66 61 73 74 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 | .--release-fast</code></pre>.... |
| d5e0 | 20 20 20 20 3c 70 3e 46 6f 72 20 74 68 69 73 20 74 65 73 74 20 77 65 20 68 61 76 65 20 74 6f 20 | ....<p>For.this.test.we.have.to. |
| d600 | 73 65 70 61 72 61 74 65 20 63 6f 64 65 20 69 6e 74 6f 20 74 77 6f 20 6f 62 6a 65 63 74 20 66 69 | separate.code.into.two.object.fi |
| d620 | 6c 65 73 20 2d 0a 20 20 20 20 20 20 6f 74 68 65 72 77 69 73 65 20 74 68 65 20 6f 70 74 69 6d 69 | les.-.......otherwise.the.optimi |
| d640 | 7a 65 72 20 66 69 67 75 72 65 73 20 6f 75 74 20 61 6c 6c 20 74 68 65 20 76 61 6c 75 65 73 20 61 | zer.figures.out.all.the.values.a |
| d660 | 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2c 0a 20 20 20 20 20 20 77 68 69 63 68 20 6f 70 65 72 | t.compile-time,.......which.oper |
| d680 | 61 74 65 73 20 69 6e 20 73 74 72 69 63 74 20 6d 6f 64 65 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | ates.in.strict.mode.</p>.......< |
| d6a0 | 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 66 6c 6f 61 74 5f 6d 6f 64 65 2e 7a 69 67 3c 2f 70 | p.class="file">float_mode.zig</p |
| d6c0 | 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 |
| d6e0 | 61 73 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 61 72 6e 20 3d | ass="tok-kw">const</span>.warn.= |
| d700 | 20 3c 73 70 61 6e 20 63 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 |
| d720 | 72 74 3c 2f 73 70 61 6e 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"> |
| d740 | 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 77 61 | "std"</span>).debug.wa |
| d760 | 72 6e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e | rn;..<span.class="tok-kw">extern |
| d780 | 3c 2f 73 70 61 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< |
| d7a0 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 5f | /span>.<span.class="tok-fn">foo_ |
| d7c0 | 73 74 72 69 63 74 3c 2f 73 70 61 6e 3e 28 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | strict</span>(x:.<span.class="to |
| d7e0 | 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | k-type">f64</span>).<span.class= |
| d800 | 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 | "tok-type">f64</span>;.<span.cla |
| d820 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | ss="tok-kw">extern</span>.<span. |
| d840 | 63 6c 61 73 73 3d 22 74 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 |
| d860 | 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 5f 6f 70 74 69 6d 69 7a 65 64 3c 2f 73 70 61 | lass="tok-fn">foo_optimized</spa |
| d880 | 6e 3e 28 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 | n>(x:.<span.class="tok-type">f64 |
| d8a0 | 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"> |
| d8c0 | 66 36 34 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | f64</span>;..<span.class="tok-kw |
| d8e0 | 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 |
| d900 | 22 3e 66 6e 3c 2f 73 70 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" |
| d920 | 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- |
| d940 | 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 |
| d960 | 61 73 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 | ass="tok-kw">const</span>.x.=.<s |
| d980 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 30 31 3c 2f 73 70 | pan.class="tok-number">0.001</sp |
| d9a0 | 61 6e 3e 3b 0a 20 20 20 20 77 61 72 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | an>;.....warn(<span.class="tok-s |
| d9c0 | 74 72 22 3e 26 71 75 6f 74 3b 6f 70 74 69 6d 69 7a 65 64 20 3d 20 7b 7d 5c 6e 26 71 75 6f 74 3b | tr">"optimized.=.{}\n" |
| d9e0 | 3c 2f 73 70 61 6e 3e 2c 20 66 6f 6f 5f 6f 70 74 69 6d 69 7a 65 64 28 78 29 29 3b 0a 20 20 20 20 | </span>,.foo_optimized(x));..... |
| da00 | 77 61 72 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | warn(<span.class="tok-str">" |
| da20 | 3b 73 74 72 69 63 74 20 3d 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 66 6f 6f | ;strict.=.{}\n"</span>,.foo |
| da40 | 5f 73 74 72 69 63 74 28 78 29 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e | _strict(x));.}</code></pre><pre> |
| da60 | 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- |
| da80 | 65 78 65 20 66 6c 6f 61 74 5f 6d 6f 64 65 2e 7a 69 67 20 2d 2d 6f 62 6a 65 63 74 20 66 6f 6f 2e | exe.float_mode.zig.--object.foo. |
| daa0 | 6f 0a 24 20 2e 2f 66 6c 6f 61 74 5f 6d 6f 64 65 0a 6f 70 74 69 6d 69 7a 65 64 20 3d 20 31 2e 30 | o.$../float_mode.optimized.=.1.0 |
| dac0 | 65 2d 30 33 0a 73 74 72 69 63 74 20 3d 20 39 2e 37 36 35 36 32 35 65 2d 30 34 0a 3c 2f 63 6f 64 | e-03.strict.=.9.765625e-04.</cod |
| dae0 | 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e | e></pre>........<p>See.also:</p> |
| db00 | 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 65 74 46 6c 6f 61 74 4d 6f 64 65 22 | <ul>.<li><a.href="#setFloatMode" |
| db20 | 3e 40 73 65 74 46 6c 6f 61 74 4d 6f 64 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 | >@setFloatMode</a></li>.<li><a.h |
| db40 | 72 65 66 3d 22 23 44 69 76 69 73 69 6f 6e 2d 62 79 2d 5a 65 72 6f 22 3e 44 69 76 69 73 69 6f 6e | ref="#Division-by-Zero">Division |
| db60 | 20 62 79 20 5a 65 72 6f 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a | .by.Zero</a></li>.</ul>......... |
| db80 | 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 4f 70 65 72 61 74 6f 72 73 22 3e | .............<h1.id="Operators"> |
| dba0 | 4f 70 65 72 61 74 6f 72 73 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 54 61 | Operators</h1>........<h2.id="Ta |
| dbc0 | 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 61 | ble-of-Operators">Table.of.Opera |
| dbe0 | 74 6f 72 73 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 | tors</h2>........<div.class="tab |
| dc00 | 6c 65 2d 77 72 61 70 70 65 72 22 3e 0a 20 20 20 20 20 20 3c 74 61 62 6c 65 3e 0a 20 20 20 20 20 | le-wrapper">.......<table>...... |
| dc20 | 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 68 3e 0a 20 20 20 20 20 20 20 20 20 | ...<tr>...........<th>.......... |
| dc40 | 20 20 20 53 79 6e 74 61 78 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 68 3e 0a 20 20 20 20 20 20 | ...Syntax...........</th>....... |
| dc60 | 20 20 20 20 3c 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 52 65 6c 65 76 61 6e 74 20 54 79 | ....<th>.............Relevant.Ty |
| dc80 | 70 65 73 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 68 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 | pes...........</th>...........<t |
| dca0 | 68 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 44 65 73 63 72 69 70 74 69 6f 6e 0a 20 20 20 20 20 | h>.............Description...... |
| dcc0 | 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 20 20 | .....</th>...........<th>....... |
| dce0 | 20 20 20 20 20 20 45 78 61 6d 70 6c 65 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 68 3e 0a 20 20 | ......Example...........</th>... |
| dd00 | 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>........ |
| dd20 | 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 | ...<td><pre><code.class="zig">a. |
| dd40 | 2b 20 62 0a 61 20 2b 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 | +.b.a.+=.b</code></pre></td>.... |
| dd60 | 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 | .......<td>.............<ul>.... |
| dd80 | 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 | ...........<li><a.href="#Integer |
| dda0 | 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | s">Integers</a></li>............ |
| ddc0 | 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c | ...<li><a.href="#Floats">Floats< |
| dde0 | 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>...... |
| de00 | 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 41 64 64 69 74 69 6f | .....</td>...........<td>Additio |
| de20 | 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>............. |
| de40 | 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 |
| de60 | 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 |
| de80 | 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> |
| dea0 | 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 |
| dec0 | 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> |
| dee0 | 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>......... |
| df00 | 20 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 61 64 64 | ......<li>See.also.<a.href="#add |
| df20 | 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 40 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f | WithOverflow">@addWithOverflow</ |
| df40 | 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>...... |
| df60 | 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>....... |
| df80 | 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 |
| dfa0 | 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 2b | an.class="tok-number">2</span>.+ |
| dfc0 | 20 3c 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 |
| dfe0 | 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 37 | n>.==.<span.class="tok-number">7 |
| e000 | 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>...........< |
| e020 | 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>. |
| e040 | 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | ..........<td><pre><code.class=" |
| e060 | 7a 69 67 22 3e 61 20 2b 25 20 62 0a 61 20 2b 25 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | zig">a.+%.b.a.+%=.b</code></pre> |
| e080 | 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>............ |
| e0a0 | 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= |
| e0c0 | 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>... |
| e0e0 | 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>. |
| e100 | 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 57 72 61 70 70 69 6e 67 20 41 64 64 69 74 69 6f 6e 2e | ..........<td>Wrapping.Addition. |
| e120 | 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>............... |
| e140 | 3c 6c 69 3e 47 75 61 72 61 6e 74 65 65 64 20 74 6f 20 68 61 76 65 20 74 77 6f 73 2d 63 6f 6d 70 | <li>Guaranteed.to.have.twos-comp |
| e160 | 6c 65 6d 65 6e 74 20 77 72 61 70 70 69 6e 67 20 62 65 68 61 76 69 6f 72 2e 3c 2f 6c 69 3e 0a 20 | lement.wrapping.behavior.</li>.. |
| e180 | 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 |
| e1a0 | 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 |
| e1c0 | 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 |
| e1e0 | 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 61 | ds.</li>...............<li>See.a |
| e200 | 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 40 | lso.<a.href="#addWithOverflow">@ |
| e220 | 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | addWithOverflow</a>.</li>....... |
| e240 | 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>..... |
| e260 | 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 |
| e280 | 65 20 63 6c 61 73 73 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 |
| e2a0 | 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ype">u32</span>(<span.class="tok |
| e2c0 | 2d 62 75 69 6c 74 69 6e 22 3e 40 6d 61 78 56 61 6c 75 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e | -builtin">@maxValue</span>(<span |
| e2e0 | 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 29 20 2b | .class="tok-type">u32</span>)).+ |
| e300 | 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 |
| e320 | 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"> |
| e340 | 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>........... |
| e360 | 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> |
| e380 | 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= |
| e3a0 | 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 3c 2f 70 72 65 3e 3c | "zig">a.-.b.a.-=.b</code></pre>< |
| e3c0 | 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>............. |
| e3e0 | 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 | <ul>...............<li><a.href=" |
| e400 | 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | #Integers">Integers</a></li>.... |
| e420 | 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 | ...........<li><a.href="#Floats" |
| e440 | 3e 46 6c 6f 61 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 | >Floats</a></li>.............</u |
| e460 | 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 |
| e480 | 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 20 3c 75 6c 3e 0a 20 | >Subtraction..............<ul>.. |
| e4a0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 61 6e 20 63 61 75 73 65 20 3c 61 20 68 72 | .............<li>Can.cause.<a.hr |
| e4c0 | 65 66 3d 22 23 44 65 66 61 75 6c 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 6f 76 65 72 66 6c 6f | ef="#Default-Operations">overflo |
| e4e0 | 77 3c 2f 61 3e 20 66 6f 72 20 69 6e 74 65 67 65 72 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | w</a>.for.integers.</li>........ |
| e500 | 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 |
| e520 | 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 |
| e540 | 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 |
| e560 | 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 |
| e580 | 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 74 | .href="#subWithOverflow">@subWit |
| e5a0 | 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>............. |
| e5c0 | 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>........... |
| e5e0 | 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 |
| e600 | 73 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" |
| e620 | 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 74 6f 6b 2d 6e 75 6d | >2</span>.-.<span.class="tok-num |
| e640 | 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 6c 61 73 73 3d 22 74 | ber">5</span>.==.-<span.class="t |
| e660 | 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 3e 3c 2f 70 72 65 3e | ok-number">3</span></code></pre> |
| e680 | 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>.. |
| e6a0 | 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>< |
| e6c0 | 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 20 2d 25 3d 20 62 3c | code.class="zig">a.-%.b.a.-%=.b< |
| e6e0 | 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> |
| e700 | 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>............... |
| e720 | 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 |
| e740 | 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 | </a></li>.............</ul>..... |
| e760 | 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 57 72 61 70 70 69 | ......</td>...........<td>Wrappi |
| e780 | 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 20 20 20 3c 75 6c 3e | ng.Subtraction..............<ul> |
| e7a0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 47 75 61 72 61 6e 74 65 65 64 20 74 6f | ...............<li>Guaranteed.to |
| e7c0 | 20 68 61 76 65 20 74 77 6f 73 2d 63 6f 6d 70 6c 65 6d 65 6e 74 20 77 72 61 70 70 69 6e 67 20 62 | .have.twos-complement.wrapping.b |
| e7e0 | 65 68 61 76 69 6f 72 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | ehavior.</li>...............<li> |
| e800 | 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 |
| e820 | 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> |
| e840 | 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>......... |
| e860 | 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 75 62 | ......<li>See.also.<a.href="#sub |
| e880 | 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 40 73 75 62 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f | WithOverflow">@subWithOverflow</ |
| e8a0 | 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>...... |
| e8c0 | 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>....... |
| e8e0 | 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 |
| e900 | 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 28 3c | an.class="tok-type">u32</span>(< |
| e920 | 73 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> |
| e940 | 29 20 2d 25 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c | ).-%.<span.class="tok-number">1< |
| e960 | 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 |
| e980 | 69 6e 22 3e 40 6d 61 78 56 61 6c 75 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | in">@maxValue</span>(<span.class |
| e9a0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 3c 2f | ="tok-type">u32</span>)</code></ |
| e9c0 | 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 | pre>...........</td>.........</t |
| e9e0 | 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 | r>.........<tr>...........<td><p |
| ea00 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2d 61 3c 2f 63 6f 64 65 3e 3c 2f | re><code.class="zig">-a</code></ |
| ea20 | 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>........ |
| ea40 | 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 |
| ea60 | 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 | ref="#Integers">Integers</a></li |
| ea80 | 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 46 6c | >...............<li><a.href="#Fl |
| eaa0 | 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | oats">Floats</a></li>........... |
| eac0 | 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>......... |
| eae0 | 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 4e 65 67 61 74 69 6f 6e 2e 0a 20 20 20 | ..<td>.............Negation..... |
| eb00 | 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> |
| eb20 | 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 65 72 | Can.cause.<a.href="#Default-Oper |
| eb40 | 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 65 72 | ations">overflow</a>.for.integer |
| eb60 | 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 20 | s.</li>.............</ul>....... |
| eb80 | 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>........ |
| eba0 | 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 2d 3c 73 70 | .....<pre><code.class="zig">-<sp |
| ebc0 | 61 6e 20 63 6c 61 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>.= |
| ebe0 | 3d 20 3c 73 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 |
| ec00 | 61 6e 3e 20 2d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | an>.-.<span.class="tok-number">1 |
| ec20 | 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>...........< |
| ec40 | 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>. |
| ec60 | 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | ..........<td><pre><code.class=" |
| ec80 | 7a 69 67 22 3e 2d 25 61 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 | zig">-%a</code></pre></td>...... |
| eca0 | 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 | .....<td>.............<ul>...... |
| ecc0 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 | .........<li><a.href="#Integers" |
| ece0 | 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | >Integers</a></li>.............< |
| ed00 | 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>...........< |
| ed20 | 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 57 72 61 70 70 69 6e 67 20 4e 65 67 61 74 69 6f | td>.............Wrapping.Negatio |
| ed40 | 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>............. |
| ed60 | 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 6f 73 2d 63 6f | ..<li>Guaranteed.to.have.twos-co |
| ed80 | 6d 70 6c 65 6d 65 6e 74 20 77 72 61 70 70 69 6e 67 20 62 65 68 61 76 69 6f 72 2e 3c 2f 6c 69 3e | mplement.wrapping.behavior.</li> |
| eda0 | 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 |
| edc0 | 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 |
| ede0 | 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2d 25 3c 73 70 61 6e 20 63 6c 61 | re><code.class="zig">-%<span.cla |
| ee00 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 | ss="tok-type">i32</span>(<span.c |
| ee20 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6d 69 6e 56 61 6c 75 65 3c 2f 73 70 | lass="tok-builtin">@minValue</sp |
| ee40 | 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</ |
| ee60 | 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 62 75 69 6c | span>)).==.<span.class="tok-buil |
| ee80 | 74 69 6e 22 3e 40 6d 69 6e 56 61 6c 75 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 | tin">@minValue</span>(<span.clas |
| eea0 | 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 3e 3c | s="tok-type">i32</span>)</code>< |
| eec0 | 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>.........</ |
| eee0 | 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>< |
| ef00 | 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 2a 3d | pre><code.class="zig">a.*.b.a.*= |
| ef20 | 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | .b</code></pre></td>...........< |
| ef40 | 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | td>.............<ul>............ |
| ef60 | 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 | ...<li><a.href="#Integers">Integ |
| ef80 | 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | ers</a></li>...............<li>< |
| efa0 | 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 3c 2f 6c 69 3e | a.href="#Floats">Floats</a></li> |
| efc0 | 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 |
| efe0 | 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 6e 2e | d>...........<td>Multiplication. |
| f000 | 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>............... |
| f020 | 3c 6c 69 3e 43 61 6e 20 63 61 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 44 65 66 61 75 6c 74 2d | <li>Can.cause.<a.href="#Default- |
| f040 | 4f 70 65 72 61 74 69 6f 6e 73 22 3e 6f 76 65 72 66 6c 6f 77 3c 2f 61 3e 20 66 6f 72 20 69 6e 74 | Operations">overflow</a>.for.int |
| f060 | 65 67 65 72 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 6e | egers.</li>...............<li>In |
| f080 | 76 6f 6b 65 73 20 3c 61 20 68 72 65 66 3d 22 23 50 65 65 72 2d 54 79 70 65 2d 52 65 73 6f 6c 75 | vokes.<a.href="#Peer-Type-Resolu |
| f0a0 | 74 69 6f 6e 22 3e 50 65 65 72 20 54 79 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 3c 2f 61 3e 20 66 | tion">Peer.Type.Resolution</a>.f |
| f0c0 | 6f 72 20 74 68 65 20 6f 70 65 72 61 6e 64 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | or.the.operands.</li>........... |
| f0e0 | 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 6d 75 6c 57 69 | ....<li>See.also.<a.href="#mulWi |
| f100 | 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> |
| f120 | 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 20 | .</li>.............</ul>........ |
| f140 | 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>......... |
| f160 | 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 |
| f180 | 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 20 3c | .class="tok-number">2</span>.*.< |
| f1a0 | 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> |
| f1c0 | 20 3d 3d 20 3c 73 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< |
| f1e0 | 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>...........</ |
| f200 | 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>.. |
| f220 | 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 |
| f240 | 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 3e 3c | ig">a.*%.b.a.*%=.b</code></pre>< |
| f260 | 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>............. |
| f280 | 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 | <ul>...............<li><a.href=" |
| f2a0 | 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | #Integers">Integers</a></li>.... |
| f2c0 | 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>.. |
| f2e0 | 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 63 61 | .........<td>Wrapping.Multiplica |
| f300 | 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 | tion..............<ul>.......... |
| f320 | 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 6f 73 | .....<li>Guaranteed.to.have.twos |
| f340 | 2d 63 6f 6d 70 6c 65 6d 65 6e 74 20 77 72 61 70 70 69 6e 67 20 62 65 68 61 76 69 6f 72 2e 3c 2f | -complement.wrapping.behavior.</ |
| f360 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 6e 76 6f 6b 65 73 20 3c 61 | li>...............<li>Invokes.<a |
| f380 | 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 |
| f3a0 | 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 |
| f3c0 | 70 65 72 61 6e 64 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e | perands.</li>...............<li> |
| f3e0 | 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 6d 75 6c 57 69 74 68 4f 76 65 72 66 6c | See.also.<a.href="#mulWithOverfl |
| f400 | 6f 77 22 3e 40 6d 75 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 | ow">@mulWithOverflow</a>.</li>.. |
| f420 | 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> |
| f440 | 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 |
| f460 | 3e 3c 63 6f 64 65 20 63 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=" |
| f480 | 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | tok-type">u8</span>(<span.class= |
| f4a0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 30 30 3c 2f 73 70 61 6e 3e 29 20 2a 25 20 3c 73 70 61 | "tok-number">200</span>).*%.<spa |
| f4c0 | 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 3d | n.class="tok-number">2</span>.== |
| f4e0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 34 34 3c 2f 73 | .<span.class="tok-number">144</s |
| f500 | 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 |
| f520 | 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>.... |
| f540 | 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | .......<td><pre><code.class="zig |
| f560 | 22 3e 61 20 2f 20 62 0a 61 20 2f 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e | ">a./.b.a./=.b</code></pre></td> |
| f580 | 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e | ...........<td>.............<ul> |
| f5a0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 | ...............<li><a.href="#Int |
| f5c0 | 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | egers">Integers</a></li>........ |
| f5e0 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f | .......<li><a.href="#Floats">Flo |
| f600 | 61 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 | ats</a></li>.............</ul>.. |
| f620 | 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 44 69 76 | .........</td>...........<td>Div |
| f640 | 69 73 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 | ison..............<ul>.......... |
| f660 | 20 20 20 20 20 3c 6c 69 3e 43 61 6e 20 63 61 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 44 65 66 | .....<li>Can.cause.<a.href="#Def |
| f680 | 61 75 6c 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 6f 76 65 72 66 6c 6f 77 3c 2f 61 3e 20 66 6f | ault-Operations">overflow</a>.fo |
| f6a0 | 72 20 69 6e 74 65 67 65 72 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c | r.integers.</li>...............< |
| f6c0 | 6c 69 3e 43 61 6e 20 63 61 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 44 69 76 69 73 69 6f 6e 2d | li>Can.cause.<a.href="#Division- |
| f6e0 | 62 79 2d 5a 65 72 6f 22 3e 44 69 76 69 73 69 6f 6e 20 62 79 20 5a 65 72 6f 3c 2f 61 3e 20 66 6f | by-Zero">Division.by.Zero</a>.fo |
| f700 | 72 20 69 6e 74 65 67 65 72 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c | r.integers.</li>...............< |
| f720 | 6c 69 3e 43 61 6e 20 63 61 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 44 69 76 69 73 69 6f 6e 2d | li>Can.cause.<a.href="#Division- |
| f740 | 62 79 2d 5a 65 72 6f 22 3e 44 69 76 69 73 69 6f 6e 20 62 79 20 5a 65 72 6f 3c 2f 61 3e 20 66 6f | by-Zero">Division.by.Zero</a>.fo |
| f760 | 72 20 66 6c 6f 61 74 73 20 69 6e 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 69 6e 67 2d 50 | r.floats.in.<a.href="#Floating-P |
| f780 | 6f 69 6e 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 46 6c 6f 61 74 4d 6f 64 65 2e 4f 70 74 69 6d | oint-Operations">FloatMode.Optim |
| f7a0 | 69 7a 65 64 20 4d 6f 64 65 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ized.Mode</a>.</li>............. |
| f7c0 | 20 20 3c 6c 69 3e 46 6f 72 20 6e 6f 6e 2d 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2d 6b 6e 6f 77 6e | ..<li>For.non-compile-time-known |
| f7e0 | 20 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 73 2c 20 6d 75 73 74 20 75 73 65 0a 20 20 20 20 20 | .signed.integers,.must.use...... |
| f800 | 20 20 20 20 20 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 64 69 76 54 72 75 6e 63 22 3e 40 | ...........<a.href="#divTrunc">@ |
| f820 | 64 69 76 54 72 75 6e 63 3c 2f 61 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 61 | divTrunc</a>,.................<a |
| f840 | 20 68 72 65 66 3d 22 23 64 69 76 46 6c 6f 6f 72 22 3e 40 64 69 76 46 6c 6f 6f 72 3c 2f 61 3e 2c | .href="#divFloor">@divFloor</a>, |
| f860 | 20 6f 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 64 69 | .or.................<a.href="#di |
| f880 | 76 45 78 61 63 74 22 3e 40 64 69 76 45 78 61 63 74 3c 2f 61 3e 20 69 6e 73 74 65 61 64 20 6f 66 | vExact">@divExact</a>.instead.of |
| f8a0 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2f 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 | .<code.class="zig">/</code>..... |
| f8c0 | 20 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c | ...........</li>...............< |
| f8e0 | 6c 69 3e 49 6e 76 6f 6b 65 73 20 3c 61 20 68 72 65 66 3d 22 23 50 65 65 72 2d 54 79 70 65 2d 52 | li>Invokes.<a.href="#Peer-Type-R |
| f900 | 65 73 6f 6c 75 74 69 6f 6e 22 3e 50 65 65 72 20 54 79 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 3c | esolution">Peer.Type.Resolution< |
| f920 | 2f 61 3e 20 66 6f 72 20 74 68 65 20 6f 70 65 72 61 6e 64 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | /a>.for.the.operands.</li>...... |
| f940 | 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>.... |
| f960 | 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 |
| f980 | 64 65 20 63 6c 61 73 73 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- |
| f9a0 | 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 20 2f 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | number">10</span>./.<span.class= |
| f9c0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 | "tok-number">5</span>.==.<span.c |
| f9e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | lass="tok-number">2</span></code |
| fa00 | 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>......... |
| fa20 | 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 |
| fa40 | 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 25 20 62 0a 61 20 | ><pre><code.class="zig">a.%.b.a. |
| fa60 | 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 20 20 | %=.b</code></pre></td>.......... |
| fa80 | 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>.......... |
| faa0 | 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 |
| fac0 | 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 |
| fae0 | 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 |
| fb00 | 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>...........< |
| fb20 | 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 52 65 6d 61 69 6e 64 65 72 20 44 69 76 | /td>...........<td>Remainder.Div |
| fb40 | 69 73 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 | ision..............<ul>......... |
| fb60 | 20 20 20 20 20 20 3c 6c 69 3e 43 61 6e 20 63 61 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 44 69 | ......<li>Can.cause.<a.href="#Di |
| fb80 | 76 69 73 69 6f 6e 2d 62 79 2d 5a 65 72 6f 22 3e 44 69 76 69 73 69 6f 6e 20 62 79 20 5a 65 72 6f | vision-by-Zero">Division.by.Zero |
| fba0 | 3c 2f 61 3e 20 66 6f 72 20 69 6e 74 65 67 65 72 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | </a>.for.integers.</li>......... |
| fbc0 | 20 20 20 20 20 20 3c 6c 69 3e 43 61 6e 20 63 61 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 44 69 | ......<li>Can.cause.<a.href="#Di |
| fbe0 | 76 69 73 69 6f 6e 2d 62 79 2d 5a 65 72 6f 22 3e 44 69 76 69 73 69 6f 6e 20 62 79 20 5a 65 72 6f | vision-by-Zero">Division.by.Zero |
| fc00 | 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 6c 6f | </a>.for.floats.in.<a.href="#Flo |
| fc20 | 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 6f 64 | ating-Point-Operations">FloatMod |
| fc40 | 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 20 20 | e.Optimized.Mode</a>.</li>...... |
| fc60 | 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 69 6d | .........<li>For.non-compile-tim |
| fc80 | 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 75 73 | e-known.signed.integers,.must.us |
| fca0 | 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 72 65 6d 22 | e.................<a.href="#rem" |
| fcc0 | 3e 40 72 65 6d 3c 2f 61 3e 20 6f 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 61 20 | >@rem</a>.or.................<a. |
| fce0 | 68 72 65 66 3d 22 23 6d 6f 64 22 3e 40 6d 6f 64 3c 2f 61 3e 20 69 6e 73 74 65 61 64 20 6f 66 20 | href="#mod">@mod</a>.instead.of. |
| fd00 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 25 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 | <code.class="zig">%</code>...... |
| fd20 | 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c | ..........</li>...............<l |
| fd40 | 69 3e 49 6e 76 6f 6b 65 73 20 3c 61 20 68 72 65 66 3d 22 23 50 65 65 72 2d 54 79 70 65 2d 52 65 | i>Invokes.<a.href="#Peer-Type-Re |
| fd60 | 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</ |
| fd80 | 61 3e 20 66 6f 72 20 74 68 65 20 6f 70 65 72 61 6e 64 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | a>.for.the.operands.</li>....... |
| fda0 | 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>..... |
| fdc0 | 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 |
| fde0 | 65 20 63 6c 61 73 73 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 |
| fe00 | 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 20 25 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | umber">10</span>.%.<span.class=" |
| fe20 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c | tok-number">3</span>.==.<span.cl |
| fe40 | 61 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> |
| fe60 | 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>.........< |
| fe80 | 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> |
| fea0 | 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 26 6c 74 | <pre><code.class="zig">a.<< |
| fec0 | 3b 20 62 0a 61 20 26 6c 74 3b 26 6c 74 3b 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f | ;.b.a.<<=.b</code></pre></ |
| fee0 | 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | td>...........<td>.............< |
| ff00 | 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 | ul>...............<li><a.href="# |
| ff20 | 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | Integers">Integers</a></li>..... |
| ff40 | 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>... |
| ff60 | 20 20 20 20 20 20 20 20 3c 74 64 3e 42 69 74 20 53 68 69 66 74 20 4c 65 66 74 2e 0a 20 20 20 20 | ........<td>Bit.Shift.Left...... |
| ff80 | 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 | ........<ul>.................<li |
| ffa0 | 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 75 73 74 | ><code.class="zig">b</code>.must |
| ffc0 | 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 69 6d 65 | .be.<a.href="#comptime">comptime |
| ffe0 | 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 68 20 6c | -known</a>.or.have.a.type.with.l |
| 10000 | 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 6c 61 73 | og2.number.of.bits.as.<code.clas |
| 10020 | 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 20 20 20 | s="zig">a</code>.</li>.......... |
| 10040 | 20 20 20 20 20 3c 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 73 68 6c 45 | .....<li>See.also.<a.href="#shlE |
| 10060 | 78 61 63 74 22 3e 40 73 68 6c 45 78 61 63 74 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | xact">@shlExact</a>.</li>....... |
| 10080 | 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 |
| 100a0 | 68 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 40 73 68 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 | hlWithOverflow">@shlWithOverflow |
| 100c0 | 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 | </a>.</li>.............</ul>.... |
| 100e0 | 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>..... |
| 10100 | 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | ........<pre><code.class="zig">< |
| 10120 | 73 70 61 6e 20 63 6c 61 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> |
| 10140 | 20 26 6c 74 3b 26 6c 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | .<<.<span.class="tok-numbe |
| 10160 | 72 22 3e 38 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | r">8</span>.==.<span.class="tok- |
| 10180 | 6e 75 6d 62 65 72 22 3e 32 35 36 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | number">256</span></code></pre>. |
| 101a0 | 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>... |
| 101c0 | 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 |
| 101e0 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 26 67 74 3b 26 67 74 3b 20 62 0a 61 20 26 | ode.class="zig">a.>>.b.a.& |
| 10200 | 67 74 3b 26 67 74 3b 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 | gt;>=.b</code></pre></td>.... |
| 10220 | 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 | .......<td>.............<ul>.... |
| 10240 | 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 | ...........<li><a.href="#Integer |
| 10260 | 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | s">Integers</a></li>............ |
| 10280 | 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>.......... |
| 102a0 | 20 3c 74 64 3e 42 69 74 20 53 68 69 66 74 20 52 69 67 68 74 2e 0a 20 20 20 20 20 20 20 20 20 20 | .<td>Bit.Shift.Right............ |
| 102c0 | 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 | ..<ul>.................<li><code |
| 102e0 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 62 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 20 62 65 20 3c 61 | .class="zig">b</code>.must.be.<a |
| 10300 | 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 2d 6b 6e 6f 77 6e | .href="#comptime">comptime-known |
| 10320 | 3c 2f 61 3e 20 6f 72 20 68 61 76 65 20 61 20 74 79 70 65 20 77 69 74 68 20 6c 6f 67 32 20 6e 75 | </a>.or.have.a.type.with.log2.nu |
| 10340 | 6d 62 65 72 20 6f 66 20 62 69 74 73 20 61 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | mber.of.bits.as.<code.class="zig |
| 10360 | 22 3e 61 3c 2f 63 6f 64 65 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c | ">a</code>.</li>...............< |
| 10380 | 6c 69 3e 53 65 65 20 61 6c 73 6f 20 3c 61 20 68 72 65 66 3d 22 23 73 68 72 45 78 61 63 74 22 3e | li>See.also.<a.href="#shrExact"> |
| 103a0 | 40 73 68 72 45 78 61 63 74 3c 2f 61 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | @shrExact</a>.</li>............. |
| 103c0 | 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>........... |
| 103e0 | 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 |
| 10400 | 73 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" |
| 10420 | 3e 31 30 3c 2f 73 70 61 6e 3e 20 26 67 74 3b 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | >10</span>.>>.<span.class= |
| 10440 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 | "tok-number">1</span>.==.<span.c |
| 10460 | 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 3c 2f 63 6f 64 65 | lass="tok-number">5</span></code |
| 10480 | 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>......... |
| 104a0 | 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 |
| 104c0 | 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 61 6d 70 3b 20 | ><pre><code.class="zig">a.&. |
| 104e0 | 62 0a 61 20 26 61 6d 70 3b 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 | b.a.&=.b</code></pre></td>.. |
| 10500 | 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>.. |
| 10520 | 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 | .............<li><a.href="#Integ |
| 10540 | 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | ers">Integers</a></li>.......... |
| 10560 | 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>........ |
| 10580 | 20 20 20 3c 74 64 3e 42 69 74 77 69 73 65 20 41 4e 44 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ...<td>Bitwise.AND.............. |
| 105a0 | 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 6e 76 6f 6b 65 73 20 3c | <ul>...............<li>Invokes.< |
| 105c0 | 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 |
| 105e0 | 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. |
| 10600 | 6f 70 65 72 61 6e 64 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e | operands.</li>.............</ul> |
| 10620 | 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>. |
| 10640 | 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 |
| 10660 | 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 62 30 31 | g"><span.class="tok-number">0b01 |
| 10680 | 31 3c 2f 73 70 61 6e 3e 20 26 61 6d 70 3b 61 6d 70 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | 1</span>.&amp;.<span.class=" |
| 106a0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 31 30 31 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 | tok-number">0b101</span>.==.<spa |
| 106c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 30 30 31 3c 2f 73 70 61 6e | n.class="tok-number">0b001</span |
| 106e0 | 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>.. |
| 10700 | 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>....... |
| 10720 | 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 |
| 10740 | 20 7c 20 62 0a 61 20 7c 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 | .|.b.a.|=.b</code></pre></td>... |
| 10760 | 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 | ........<td>.............<ul>... |
| 10780 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 | ............<li><a.href="#Intege |
| 107a0 | 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | rs">Integers</a></li>........... |
| 107c0 | 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>......... |
| 107e0 | 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 20 20 20 3c 75 | ..<td>Bitwise.OR..............<u |
| 10800 | 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 6e 76 6f 6b 65 73 20 3c 61 20 | l>...............<li>Invokes.<a. |
| 10820 | 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 |
| 10840 | 72 20 54 79 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 3c 2f 61 3e 20 66 6f 72 20 74 68 65 20 6f 70 | r.Type.Resolution</a>.for.the.op |
| 10860 | 65 72 61 6e 64 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 | erands.</li>.............</ul>.. |
| 10880 | 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 | .........</td>...........<td>... |
| 108a0 | 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" |
| 108c0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 30 31 30 3c | ><span.class="tok-number">0b010< |
| 108e0 | 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 75 6d 62 65 72 | /span>.|.<span.class="tok-number |
| 10900 | 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 73 73 3d 22 74 | ">0b100</span>.==.<span.class="t |
| 10920 | 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 64 65 3e 3c 2f | ok-number">0b110</span></code></ |
| 10940 | 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 | pre>...........</td>.........</t |
| 10960 | 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 | r>.........<tr>...........<td><p |
| 10980 | 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 61 20 5e 3d 20 | re><code.class="zig">a.^.b.a.^=. |
| 109a0 | 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 | b</code></pre></td>...........<t |
| 109c0 | 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | d>.............<ul>............. |
| 109e0 | 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 | ..<li><a.href="#Integers">Intege |
| 10a00 | 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>... |
| 10a20 | 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 42 69 74 77 | ........</td>...........<td>Bitw |
| 10a40 | 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 20 20 20 20 20 | ise.XOR..............<ul>....... |
| 10a60 | 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 |
| 10a80 | 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 |
| 10aa0 | 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.</ |
| 10ac0 | 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>........... |
| 10ae0 | 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>............ |
| 10b00 | 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 |
| 10b20 | 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 6e 3e 20 5e 20 | ass="tok-number">0b011</span>.^. |
| 10b40 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 31 30 31 3c 2f | <span.class="tok-number">0b101</ |
| 10b60 | 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 |
| 10b80 | 22 3e 30 62 31 31 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 | ">0b110</span></code></pre>..... |
| 10ba0 | 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>....... |
| 10bc0 | 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. |
| 10be0 | 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 3c 2f 74 64 3e | class="zig">~a</code></pre></td> |
| 10c00 | 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e | ...........<td>.............<ul> |
| 10c20 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 | ...............<li><a.href="#Int |
| 10c40 | 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | egers">Integers</a></li>........ |
| 10c60 | 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>...... |
| 10c80 | 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 73 65 20 4e 4f | .....<td>.............Bitwise.NO |
| 10ca0 | 54 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 | T............</td>...........<td |
| 10cc0 | 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=" |
| 10ce0 | 7a 69 67 22 3e 7e 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 | zig">~<span.class="tok-type">u8< |
| 10d00 | 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"> |
| 10d20 | 30 62 30 31 30 31 31 31 31 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | 0b0101111</span>).==.<span.class |
| 10d40 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 62 31 30 31 30 30 30 30 3c 2f 73 70 61 6e 3e 3c 2f | ="tok-number">0b1010000</span></ |
| 10d60 | 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>..... |
| 10d80 | 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>.......... |
| 10da0 | 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 3c 73 | .<td><pre><code.class="zig">a.<s |
| 10dc0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 72 65 6c 73 65 3c 2f 73 70 61 6e 3e | pan.class="tok-kw">orelse</span> |
| 10de0 | 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | .b</code></pre></td>...........< |
| 10e00 | 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | td>.............<ul>............ |
| 10e20 | 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 73 22 3e 4f 70 74 69 | ...<li><a.href="#Optionals">Opti |
| 10e40 | 6f 6e 61 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e | onals</a></li>.............</ul> |
| 10e60 | 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 49 | ...........</td>...........<td>I |
| 10e80 | 66 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 | f.<code.class="zig">a</code>.is. |
| 10ea0 | 3c 63 6f 64 65 20 63 6c 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 |
| 10ec0 | 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 | ok-null">null</span></code>,.... |
| 10ee0 | 20 20 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 | ...................returns.<code |
| 10f00 | 20 63 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 | .class="zig">b</code>.("default. |
| 10f20 | 76 61 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 | value"),........................ |
| 10f40 | 20 20 20 6f 74 68 65 72 77 69 73 65 20 72 65 74 75 72 6e 73 20 74 68 65 20 75 6e 77 72 61 70 70 | ...otherwise.returns.the.unwrapp |
| 10f60 | 65 64 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 | ed.value.of.<code.class="zig">a< |
| 10f80 | 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | /code>.......................... |
| 10fa0 | 20 20 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 | ......Note.that.<code.class="zig |
| 10fc0 | 22 3e 62 3c 2f 63 6f 64 65 3e 20 6d 61 79 20 62 65 20 61 20 76 61 6c 75 65 20 6f 66 20 74 79 70 | ">b</code>.may.be.a.value.of.typ |
| 10fe0 | 65 20 3c 61 20 68 72 65 66 3d 22 23 6e 6f 72 65 74 75 72 6e 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f | e.<a.href="#noreturn">noreturn</ |
| 11000 | 61 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 | a>............</td>...........<t |
| 11020 | 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= |
| 11040 | 22 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 |
| 11060 | 3c 2f 73 70 61 6e 3e 20 76 61 6c 75 65 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | </span>.value:.?<span.class="tok |
| 11080 | 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= |
| 110a0 | 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c | "tok-null">null</span>;.<span.cl |
| 110c0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 75 6e 77 72 61 70 | ass="tok-kw">const</span>.unwrap |
| 110e0 | 70 65 64 20 3d 20 76 61 6c 75 65 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ped.=.value.<span.class="tok-kw" |
| 11100 | 3e 6f 72 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | >orelse</span>.<span.class="tok- |
| 11120 | 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 75 6e 77 72 61 70 70 65 64 20 3d | number">1234</span>;.unwrapped.= |
| 11140 | 3d 20 3c 73 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< |
| 11160 | 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>...........</ |
| 11180 | 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>.. |
| 111a0 | 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 |
| 111c0 | 69 67 22 3e 61 2e 3f 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 | ig">a.?</code></pre></td>....... |
| 111e0 | 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 | ....<td>.............<ul>....... |
| 11200 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 73 22 | ........<li><a.href="#Optionals" |
| 11220 | 3e 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | >Optionals</a></li>............. |
| 11240 | 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>........... |
| 11260 | 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 45 71 75 69 76 61 6c 65 6e 74 20 74 6f 3a 0a | <td>.............Equivalent.to:. |
| 11280 | 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 |
| 112a0 | 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 65 6c 73 65 | g">a.<span.class="tok-kw">orelse |
| 112c0 | 3c 2f 73 70 61 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 |
| 112e0 | 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 | eachable</span></code></pre>.... |
| 11300 | 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>..... |
| 11320 | 20 20 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | ........<pre><code.class="zig">< |
| 11340 | 73 70 61 6e 20 63 6c 61 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> |
| 11360 | 20 76 61 6c 75 65 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | .value:.?<span.class="tok-type"> |
| 11380 | 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 |
| 113a0 | 6d 62 65 72 22 3e 35 36 37 38 3c 2f 73 70 61 6e 3e 3b 0a 76 61 6c 75 65 2e 3f 20 3d 3d 20 3c 73 | mber">5678</span>;.value.?.==.<s |
| 113c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 36 37 38 3c 2f 73 70 61 | pan.class="tok-number">5678</spa |
| 113e0 | 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>. |
| 11400 | 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>...... |
| 11420 | 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"> |
| 11440 | 61 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 | a.<span.class="tok-kw">catch</sp |
| 11460 | 61 6e 3e 20 62 0a 61 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 | an>.b.a.<span.class="tok-kw">cat |
| 11480 | 63 68 3c 2f 73 70 61 6e 3e 20 7c 65 72 72 7c 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f | ch</span>.|err|.b</code></pre></ |
| 114a0 | 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | td>...........<td>.............< |
| 114c0 | 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 | ul>...............<li><a.href="# |
| 114e0 | 45 72 72 6f 72 73 22 3e 45 72 72 6f 72 20 55 6e 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | Errors">Error.Unions</a></li>... |
| 11500 | 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>. |
| 11520 | 20 20 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 | ..........<td>If.<code.class="zi |
| 11540 | 67 22 3e 61 3c 2f 63 6f 64 65 3e 20 69 73 20 61 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | g">a</code>.is.an.<code.class="z |
| 11560 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f | ig"><span.class="tok-kw">error</ |
| 11580 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | span></code>,................... |
| 115a0 | 20 20 20 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 62 3c | ....returns.<code.class="zig">b< |
| 115c0 | 2f 63 6f 64 65 3e 20 28 22 64 65 66 61 75 6c 74 20 76 61 6c 75 65 22 29 2c 0a 20 20 20 20 20 20 | /code>.("default.value"),....... |
| 115e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 74 68 65 72 77 69 73 65 20 72 65 | ....................otherwise.re |
| 11600 | 74 75 72 6e 73 20 74 68 65 20 75 6e 77 72 61 70 70 65 64 20 76 61 6c 75 65 20 6f 66 20 3c 63 6f | turns.the.unwrapped.value.of.<co |
| 11620 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 | de.class="zig">a</code>......... |
| 11640 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 4e 6f 74 65 20 74 68 61 74 | .......................Note.that |
| 11660 | 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 6d 61 79 20 | .<code.class="zig">b</code>.may. |
| 11680 | 62 65 20 61 20 76 61 6c 75 65 20 6f 66 20 74 79 70 65 20 3c 61 20 68 72 65 66 3d 22 23 6e 6f 72 | be.a.value.of.type.<a.href="#nor |
| 116a0 | 65 74 75 72 6e 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 | eturn">noreturn</a>............. |
| 116c0 | 20 20 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 | .......................<code.cla |
| 116e0 | 73 73 3d 22 7a 69 67 22 3e 65 72 72 3c 2f 63 6f 64 65 3e 20 69 73 20 74 68 65 20 3c 63 6f 64 65 | ss="zig">err</code>.is.the.<code |
| 11700 | 20 63 6c 61 73 73 3d 22 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 |
| 11720 | 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 69 73 20 69 6e 20 | ">error</span></code>.and.is.in. |
| 11740 | 73 63 6f 70 65 20 6f 66 20 74 68 65 20 65 78 70 72 65 73 73 69 6f 6e 20 3c 63 6f 64 65 20 63 6c | scope.of.the.expression.<code.cl |
| 11760 | 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 20 20 3c 2f | ass="zig">b</code>............</ |
| 11780 | 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | td>...........<td>.............< |
| 117a0 | 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 |
| 117c0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 76 61 6c 75 65 3a 20 3c | s="tok-kw">const</span>.value:.< |
| 117e0 | 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> |
| 11800 | 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 | !<span.class="tok-type">u32</spa |
| 11820 | 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c | n>.=.<span.class="tok-kw">error< |
| 11840 | 2f 73 70 61 6e 3e 2e 42 72 6f 6b 65 6e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | /span>.Broken;.<span.class="tok- |
| 11860 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 75 6e 77 72 61 70 70 65 64 20 3d 20 76 61 6c | kw">const</span>.unwrapped.=.val |
| 11880 | 75 65 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 | ue.<span.class="tok-kw">catch</s |
| 118a0 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 | pan>.<span.class="tok-number">12 |
| 118c0 | 33 34 3c 2f 73 70 61 6e 3e 3b 0a 75 6e 77 72 61 70 70 65 64 20 3d 3d 20 3c 73 70 61 6e 20 63 6c | 34</span>;.unwrapped.==.<span.cl |
| 118e0 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | ass="tok-number">1234</span></co |
| 11900 | 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>....... |
| 11920 | 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>...........< |
| 11940 | 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 3c 73 70 61 | td><pre><code.class="zig">a.<spa |
| 11960 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 64 3c 2f 73 70 61 6e 3e 20 62 3c 2f 63 | n.class="tok-kw">and</span>.b</c |
| 11980 | 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>.. |
| 119a0 | 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 |
| 119c0 | 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 |
| 119e0 | 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>.... |
| 11a00 | 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>..... |
| 11a20 | 20 20 20 20 20 20 20 20 20 20 49 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 | ..........If.<code.class="zig">a |
| 11a40 | 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 73 70 | </code>.is.<code.class="zig"><sp |
| 11a60 | 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> |
| 11a80 | 3c 2f 63 6f 64 65 3e 2c 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | </code>,.returns.<code.class="zi |
| 11aa0 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c | g"><span.class="tok-null">false< |
| 11ac0 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | /span></code>................... |
| 11ae0 | 20 20 20 20 20 20 20 20 77 69 74 68 6f 75 74 20 65 76 61 6c 75 61 74 69 6e 67 20 3c 63 6f 64 65 | ........without.evaluating.<code |
| 11b00 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 62 3c 2f 63 6f 64 65 3e 2e 20 4f 74 68 65 72 77 69 73 65 | .class="zig">b</code>..Otherwise |
| 11b20 | 2c 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 62 3c 2f 63 | ,.returns.<code.class="zig">b</c |
| 11b40 | 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | ode>............</td>........... |
| 11b60 | 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 |
| 11b80 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 | s="zig"><span.class="tok-null">f |
| 11ba0 | 61 6c 73 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | alse</span>.<span.class="tok-kw" |
| 11bc0 | 3e 61 6e 64 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c | >and</span>.<span.class="tok-nul |
| 11be0 | 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | l">true</span>.==.<span.class="t |
| 11c00 | 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | ok-null">false</span></code></pr |
| 11c20 | 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e | e>...........</td>.........</tr> |
| 11c40 | 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 | .........<tr>...........<td><pre |
| 11c60 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ><code.class="zig">a.<span.class |
| 11c80 | 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 72 3c 2f 73 70 61 6e 3e 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | ="tok-kw">or</span>.b</code></pr |
| 11ca0 | 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>.......... |
| 11cc0 | 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 |
| 11ce0 | 66 3d 22 23 50 72 69 6d 69 74 69 76 65 2d 54 79 70 65 73 22 3e 62 6f 6f 6c 3c 2f 61 3e 3c 2f 6c | f="#Primitive-Types">bool</a></l |
| 11d00 | 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>...........< |
| 11d20 | 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>............. |
| 11d40 | 20 20 49 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 3c 2f 63 6f 64 65 3e 20 | ..If.<code.class="zig">a</code>. |
| 11d60 | 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 73 73 | is.<code.class="zig"><span.class |
| 11d80 | 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 2c 20 | ="tok-null">true</span></code>,. |
| 11da0 | 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | returns.<code.class="zig"><span. |
| 11dc0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | class="tok-null">true</span></co |
| 11de0 | 64 65 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77 69 | de>...........................wi |
| 11e00 | 74 68 6f 75 74 20 65 76 61 6c 75 61 74 69 6e 67 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | thout.evaluating.<code.class="zi |
| 11e20 | 67 22 3e 62 3c 2f 63 6f 64 65 3e 2e 20 4f 74 68 65 72 77 69 73 65 2c 20 72 65 74 75 72 6e 73 20 | g">b</code>..Otherwise,.returns. |
| 11e40 | 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 0a 20 20 20 20 | <code.class="zig">b</code>...... |
| 11e60 | 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>...... |
| 11e80 | 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 |
| 11ea0 | 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 |
| 11ec0 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 72 3c 2f 73 70 61 6e 3e | >.<span.class="tok-kw">or</span> |
| 11ee0 | 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 |
| 11f00 | 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 | an>.==.<span.class="tok-null">tr |
| 11f20 | 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 | ue</span></code></pre>.......... |
| 11f40 | 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 |
| 11f60 | 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 |
| 11f80 | 3d 22 7a 69 67 22 3e 21 61 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 | ="zig">!a</code></pre></td>..... |
| 11fa0 | 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>..... |
| 11fc0 | 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 |
| 11fe0 | 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>.......... |
| 12000 | 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>........ |
| 12020 | 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 42 6f 6f 6c 65 61 6e 20 4e 4f 54 2e | ...<td>.............Boolean.NOT. |
| 12040 | 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>. |
| 12060 | 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 |
| 12080 | 67 22 3e 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 | g">!<span.class="tok-null">false |
| 120a0 | 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c | </span>.==.<span.class="tok-null |
| 120c0 | 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 | ">true</span></code></pre>...... |
| 120e0 | 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>........ |
| 12100 | 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 |
| 12120 | 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 3d 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f | lass="zig">a.==.b</code></pre></ |
| 12140 | 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c | td>...........<td>.............< |
| 12160 | 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 | ul>...............<li><a.href="# |
| 12180 | 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 | Integers">Integers</a></li>..... |
| 121a0 | 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e | ..........<li><a.href="#Floats"> |
| 121c0 | 46 6c 6f 61 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c | Floats</a></li>...............<l |
| 121e0 | 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 |
| 12200 | 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 | l</a></li>...............<li><a. |
| 12220 | 68 72 65 66 3d 22 23 50 72 69 6d 69 74 69 76 65 2d 54 79 70 65 73 22 3e 74 79 70 65 3c 2f 61 3e | href="#Primitive-Types">type</a> |
| 12240 | 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>......... |
| 12260 | 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>.......... |
| 12280 | 20 20 20 20 20 52 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | .....Returns.<code.class="zig">< |
| 122a0 | 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 |
| 122c0 | 3e 3c 2f 63 6f 64 65 3e 20 69 66 20 61 20 61 6e 64 20 62 20 61 72 65 20 65 71 75 61 6c 2c 20 6f | ></code>.if.a.and.b.are.equal,.o |
| 122e0 | 74 68 65 72 77 69 73 65 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | therwise.returns.<code.class="zi |
| 12300 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c | g"><span.class="tok-null">false< |
| 12320 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 76 6f 6b | /span></code>..............Invok |
| 12340 | 65 73 20 3c 61 20 68 72 65 66 3d 22 23 50 65 65 72 2d 54 79 70 65 2d 52 65 73 6f 6c 75 74 69 6f | es.<a.href="#Peer-Type-Resolutio |
| 12360 | 6e 22 3e 50 65 65 72 20 54 79 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 3c 2f 61 3e 20 66 6f 72 20 | n">Peer.Type.Resolution</a>.for. |
| 12380 | 74 68 65 20 6f 70 65 72 61 6e 64 73 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 | the.operands............</td>... |
| 123a0 | 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 |
| 123c0 | 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 |
| 123e0 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | k-number">1</span>.==.<span.clas |
| 12400 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 | s="tok-number">1</span>).==.<spa |
| 12420 | 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></ |
| 12440 | 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>..... |
| 12460 | 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>.......... |
| 12480 | 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 3d 3d | .<td><pre><code.class="zig">a.== |
| 124a0 | 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 |
| 124c0 | 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | an></code></pre></td>........... |
| 124e0 | 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>........... |
| 12500 | 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 73 22 3e 4f 70 74 | ....<li><a.href="#Optionals">Opt |
| 12520 | 69 6f 6e 61 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c | ionals</a></li>.............</ul |
| 12540 | 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> |
| 12560 | 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 6c 61 | ...............Returns.<code.cla |
| 12580 | 73 73 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"> |
| 125a0 | 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 3c 63 6f 64 65 | true</span></code>.if.a.is.<code |
| 125c0 | 20 63 6c 61 73 73 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 |
| 125e0 | 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 6f 74 68 65 72 77 69 73 | ll">null</span></code>,.otherwis |
| 12600 | 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 70 61 | e.returns.<code.class="zig"><spa |
| 12620 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3c | n.class="tok-null">false</span>< |
| 12640 | 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 | /code>............</td>......... |
| 12660 | 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 |
| 12680 | 61 73 73 3d 22 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 |
| 126a0 | 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 73 3d | onst</span>.value:.?<span.class= |
| 126c0 | 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 |
| 126e0 | 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 76 61 6c 75 | ass="tok-null">null</span>;.valu |
| 12700 | 65 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c | e.==.<span.class="tok-null">null |
| 12720 | 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>...........< |
| 12740 | 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>. |
| 12760 | 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | ..........<td><pre><code.class=" |
| 12780 | 7a 69 67 22 3e 61 20 21 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 | zig">a.!=.b</code></pre></td>... |
| 127a0 | 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 | ........<td>.............<ul>... |
| 127c0 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 | ............<li><a.href="#Intege |
| 127e0 | 72 73 22 3e 49 6e 74 65 67 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | rs">Integers</a></li>........... |
| 12800 | 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 | ....<li><a.href="#Floats">Floats |
| 12820 | 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 |
| 12840 | 72 65 66 3d 22 23 50 72 69 6d 69 74 69 76 65 2d 54 79 70 65 73 22 3e 62 6f 6f 6c 3c 2f 61 3e 3c | ref="#Primitive-Types">bool</a>< |
| 12860 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 | /li>...............<li><a.href=" |
| 12880 | 23 50 72 69 6d 69 74 69 76 65 2d 54 79 70 65 73 22 3e 74 79 70 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a | #Primitive-Types">type</a></li>. |
| 128a0 | 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 |
| 128c0 | 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 20 52 | >...........<td>...............R |
| 128e0 | 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 20 63 | eturns.<code.class="zig"><span.c |
| 12900 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | lass="tok-null">false</span></co |
| 12920 | 64 65 3e 20 69 66 20 61 20 61 6e 64 20 62 20 61 72 65 20 65 71 75 61 6c 2c 20 6f 74 68 65 72 77 | de>.if.a.and.b.are.equal,.otherw |
| 12940 | 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 |
| 12960 | 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> |
| 12980 | 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 76 6f 6b 65 73 20 3c 61 20 | </code>..............Invokes.<a. |
| 129a0 | 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 |
| 129c0 | 72 20 54 79 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 3c 2f 61 3e 20 66 6f 72 20 74 68 65 20 6f 70 | r.Type.Resolution</a>.for.the.op |
| 129e0 | 65 72 61 6e 64 73 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 | erands............</td>......... |
| 12a00 | 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 |
| 12a20 | 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 62 | ass="zig">(<span.class="tok-numb |
| 12a40 | 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 20 21 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | er">1</span>.!=.<span.class="tok |
| 12a60 | 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | -number">1</span>).==.<span.clas |
| 12a80 | 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | s="tok-null">false</span></code> |
| 12aa0 | 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>.........< |
| 12ac0 | 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> |
| 12ae0 | 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 20 62 3c | <pre><code.class="zig">a.>.b< |
| 12b00 | 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> |
| 12b20 | 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>............... |
| 12b40 | 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 |
| 12b60 | 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 |
| 12b80 | 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>... |
| 12ba0 | 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>. |
| 12bc0 | 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 52 65 74 | ..........<td>...............Ret |
| 12be0 | 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 |
| 12c00 | 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> |
| 12c20 | 20 69 66 20 61 20 69 73 20 67 72 65 61 74 65 72 20 74 68 61 6e 20 62 2c 20 6f 74 68 65 72 77 69 | .if.a.is.greater.than.b,.otherwi |
| 12c40 | 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 70 | se.returns.<code.class="zig"><sp |
| 12c60 | 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> |
| 12c80 | 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 76 6f 6b 65 73 20 3c 61 20 | </code>..............Invokes.<a. |
| 12ca0 | 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 |
| 12cc0 | 72 20 54 79 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 3c 2f 61 3e 20 66 6f 72 20 74 68 65 20 6f 70 | r.Type.Resolution</a>.for.the.op |
| 12ce0 | 65 72 61 6e 64 73 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 | erands............</td>......... |
| 12d00 | 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 |
| 12d20 | 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 62 | ass="zig">(<span.class="tok-numb |
| 12d40 | 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 20 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | er">2</span>.>.<span.class="t |
| 12d60 | 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 6c | ok-number">1</span>).==.<span.cl |
| 12d80 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | ass="tok-null">true</span></code |
| 12da0 | 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>......... |
| 12dc0 | 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 |
| 12de0 | 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 3d 20 | ><pre><code.class="zig">a.>=. |
| 12e00 | 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 | b</code></pre></td>...........<t |
| 12e20 | 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 | d>.............<ul>............. |
| 12e40 | 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6e 74 65 67 65 72 73 22 3e 49 6e 74 65 67 65 | ..<li><a.href="#Integers">Intege |
| 12e60 | 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 | rs</a></li>...............<li><a |
| 12e80 | 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c 6f 61 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a | .href="#Floats">Floats</a></li>. |
| 12ea0 | 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 |
| 12ec0 | 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 20 52 | >...........<td>...............R |
| 12ee0 | 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 20 63 | eturns.<code.class="zig"><span.c |
| 12f00 | 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 |
| 12f20 | 65 3e 20 69 66 20 61 20 69 73 20 67 72 65 61 74 65 72 20 74 68 61 6e 20 6f 72 20 65 71 75 61 6c | e>.if.a.is.greater.than.or.equal |
| 12f40 | 20 74 6f 20 62 2c 20 6f 74 68 65 72 77 69 73 65 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 | .to.b,.otherwise.returns.<code.c |
| 12f60 | 6c 61 73 73 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 |
| 12f80 | 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 | ">false</span></code>........... |
| 12fa0 | 20 20 20 49 6e 76 6f 6b 65 73 20 3c 61 20 68 72 65 66 3d 22 23 50 65 65 72 2d 54 79 70 65 2d 52 | ...Invokes.<a.href="#Peer-Type-R |
| 12fc0 | 65 73 6f 6c 75 74 69 6f 6e 22 3e 50 65 65 72 20 54 79 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 3c | esolution">Peer.Type.Resolution< |
| 12fe0 | 2f 61 3e 20 66 6f 72 20 74 68 65 20 6f 70 65 72 61 6e 64 73 2e 0a 20 20 20 20 20 20 20 20 20 20 | /a>.for.the.operands............ |
| 13000 | 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>............ |
| 13020 | 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 20 63 | .<pre><code.class="zig">(<span.c |
| 13040 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 20 26 67 74 3b 3d | lass="tok-number">2</span>.>= |
| 13060 | 20 3c 73 70 61 6e 20 63 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 |
| 13080 | 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 | n>).==.<span.class="tok-null">tr |
| 130a0 | 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 | ue</span></code></pre>.......... |
| 130c0 | 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 |
| 130e0 | 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 |
| 13100 | 3d 22 7a 69 67 22 3e 61 20 26 6c 74 3b 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 | ="zig">a.<.b</code></pre></td |
| 13120 | 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 |
| 13140 | 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 |
| 13160 | 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>....... |
| 13180 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c | ........<li><a.href="#Floats">Fl |
| 131a0 | 6f 61 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a | oats</a></li>.............</ul>. |
| 131c0 | 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>.. |
| 131e0 | 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 6c 61 73 73 | .............Returns.<code.class |
| 13200 | 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 |
| 13220 | 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 66 20 61 20 69 73 20 6c 65 73 73 20 74 68 | ue</span></code>.if.a.is.less.th |
| 13240 | 61 6e 20 62 2c 20 6f 74 68 65 72 77 69 73 65 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 6c | an.b,.otherwise.returns.<code.cl |
| 13260 | 61 73 73 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" |
| 13280 | 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>............ |
| 132a0 | 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 |
| 132c0 | 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</ |
| 132e0 | 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............< |
| 13300 | 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>............. |
| 13320 | 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 |
| 13340 | 61 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 20 3c | ass="tok-number">1</span>.<.< |
| 13360 | 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> |
| 13380 | 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 | ).==.<span.class="tok-null">true |
| 133a0 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 | </span></code>></pre>........... |
| 133c0 | 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> |
| 133e0 | 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= |
| 13400 | 22 7a 69 67 22 3e 61 20 26 6c 74 3b 3d 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 | "zig">a.<=.b</code></pre></td |
| 13420 | 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 |
| 13440 | 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 |
| 13460 | 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>....... |
| 13480 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c | ........<li><a.href="#Floats">Fl |
| 134a0 | 6f 61 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a | oats</a></li>.............</ul>. |
| 134c0 | 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>.. |
| 134e0 | 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 6c 61 73 73 | .............Returns.<code.class |
| 13500 | 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 |
| 13520 | 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 66 20 61 20 69 73 20 6c 65 73 73 20 74 68 | ue</span></code>.if.a.is.less.th |
| 13540 | 61 6e 20 6f 72 20 65 71 75 61 6c 20 74 6f 20 62 2c 20 6f 74 68 65 72 77 69 73 65 20 72 65 74 75 | an.or.equal.to.b,.otherwise.retu |
| 13560 | 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 |
| 13580 | 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | s="tok-null">false</span></code> |
| 135a0 | 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 23 | ..............Invokes.<a.href="# |
| 135c0 | 50 65 65 72 2d 54 79 70 65 2d 52 65 73 6f 6c 75 74 69 6f 6e 22 3e 50 65 65 72 20 54 79 70 65 20 | Peer-Type-Resolution">Peer.Type. |
| 135e0 | 52 65 73 6f 6c 75 74 69 6f 6e 3c 2f 61 3e 20 66 6f 72 20 74 68 65 20 6f 70 65 72 61 6e 64 73 2e | Resolution</a>.for.the.operands. |
| 13600 | 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>. |
| 13620 | 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 |
| 13640 | 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 2f | g">(<span.class="tok-number">1</ |
| 13660 | 73 70 61 6e 3e 20 26 6c 74 3b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | span>.<=.<span.class="tok-num |
| 13680 | 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ber">2</span>).==.<span.class="t |
| 136a0 | 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | ok-null">true</span></code></pre |
| 136c0 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 72 3e 0a | >...........</td>.........</tr>. |
| 136e0 | 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 72 65 3e | ........<tr>...........<td><pre> |
| 13700 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 20 2b 2b 20 62 3c 2f 63 6f 64 65 3e 3c | <code.class="zig">a.++.b</code>< |
| 13720 | 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 20 20 20 | /pre></td>...........<td>....... |
| 13740 | 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 | ......<ul>...............<li><a. |
| 13760 | 68 72 65 66 3d 22 23 41 72 72 61 79 73 22 3e 41 72 72 61 79 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 | href="#Arrays">Arrays</a></li>.. |
| 13780 | 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> |
| 137a0 | 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 72 72 61 | ...........<td>.............Arra |
| 137c0 | 79 20 63 6f 6e 63 61 74 65 6e 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c | y.concatenation..............<ul |
| 137e0 | 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 61 76 61 69 6c | >.................<li>Only.avail |
| 13800 | 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 3e 61 3c 2f 63 | able.when.<code.class="zig">a</c |
| 13820 | 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 62 3c 2f 63 6f | ode>.and.<code.class="zig">b</co |
| 13840 | 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 3e 63 6f 6d 70 | de>.are.<a.href="#comptime">comp |
| 13860 | 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 20 20 20 20 20 | ile-time.known</a>.............. |
| 13880 | 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>........... |
| 138a0 | 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 |
| 138c0 | 73 3d 22 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 |
| 138e0 | 73 74 3c 2f 73 70 61 6e 3e 20 6d 65 6d 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | st</span>.mem.=.<span.class="tok |
| 13900 | 2d 62 75 69 6c 74 69 6e 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 |
| 13920 | 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"</ |
| 13940 | 73 70 61 6e 3e 29 2e 6d 65 6d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | span>).mem;.<span.class="tok-kw" |
| 13960 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 72 72 61 79 31 20 3d 20 5b 5d 3c 73 70 61 6e 20 63 | >const</span>.array1.=.[]<span.c |
| 13980 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 7b 3c 73 70 61 6e | lass="tok-type">u32</span>{<span |
| 139a0 | 20 63 6c 61 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 3c 73 70 | .class="tok-number">1</span>,<sp |
| 139c0 | 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 7d 3b | an.class="tok-number">2</span>}; |
| 139e0 | 0a 3c 73 70 61 6e 20 63 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 |
| 13a00 | 6e 3e 20 61 72 72 61 79 32 20 3d 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | n>.array2.=.[]<span.class="tok-t |
| 13a20 | 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 |
| 13a40 | 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 3d 22 74 | -number">3</span>,<span.class="t |
| 13a60 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 | ok-number">4</span>};.<span.clas |
| 13a80 | 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 6f 67 65 74 68 65 72 | s="tok-kw">const</span>.together |
| 13aa0 | 20 3d 20 61 72 72 61 79 31 20 2b 2b 20 61 72 72 61 79 32 3b 0a 6d 65 6d 2e 65 71 6c 28 3c 73 70 | .=.array1.++.array2;.mem.eql(<sp |
| 13ac0 | 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>,. |
| 13ae0 | 74 6f 67 65 74 68 65 72 2c 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | together,.[]<span.class="tok-typ |
| 13b00 | 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 6e | e">u32</span>{<span.class="tok-n |
| 13b20 | 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 6b | umber">1</span>,<span.class="tok |
| 13b40 | 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 74 | -number">2</span>,<span.class="t |
| 13b60 | 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 3d | ok-number">3</span>,<span.class= |
| 13b80 | 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 2f | "tok-number">4</span>})</code></ |
| 13ba0 | 70 72 65 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 3c 2f 74 | pre>...........</td>.........</t |
| 13bc0 | 72 3e 0a 20 20 20 20 20 20 20 20 3c 74 72 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 3c 70 | r>.........<tr>...........<td><p |
| 13be0 | 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 64 | re><code.class="zig">a.**.b</cod |
| 13c00 | 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 74 64 3e 0a 20 20 20 | e></pre></td>...........<td>.... |
| 13c20 | 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> |
| 13c40 | 3c 61 20 68 72 65 66 3d 22 23 41 72 72 61 79 73 22 3e 41 72 72 61 79 73 3c 2f 61 3e 3c 2f 6c 69 | <a.href="#Arrays">Arrays</a></li |
| 13c60 | 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>...........</ |
| 13c80 | 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 41 | td>...........<td>.............A |
| 13ca0 | 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 20 | rray.multiplication............. |
| 13cc0 | 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 61 | .<ul>.................<li>Only.a |
| 13ce0 | 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 3e | vailable.when.<code.class="zig"> |
| 13d00 | 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 62 | a</code>.and.<code.class="zig">b |
| 13d20 | 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 3e | </code>.are.<a.href="#comptime"> |
| 13d40 | 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 20 | compile-time.known</a>.......... |
| 13d60 | 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>....... |
| 13d80 | 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. |
| 13da0 | 63 6c 61 73 73 3d 22 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" |
| 13dc0 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 65 6d 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | >const</span>.mem.=.<span.class= |
| 13de0 | 22 74 6f 6b 2d 62 75 69 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 |
| 13e00 | 61 6e 20 63 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 |
| 13e20 | 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 65 6d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | t;</span>).mem;.<span.class="tok |
| 13e40 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 61 74 74 65 72 6e 20 3d 20 3c 73 70 61 | -kw">const</span>.pattern.=.<spa |
| 13e60 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 62 26 71 75 6f 74 3b | n.class="tok-str">"ab" |
| 13e80 | 3c 2f 73 70 61 6e 3e 20 2a 2a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | </span>.**.<span.class="tok-numb |
| 13ea0 | 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 3b 0a 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 | er">3</span>;.mem.eql(<span.clas |
| 13ec0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 70 61 74 74 65 72 6e 2c | s="tok-type">u8</span>,.pattern, |
| 13ee0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 62 61 | .<span.class="tok-str">"aba |
| 13f00 | 62 61 62 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 | bab"</span>)</code></pre>.. |
| 13f20 | 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>.... |
| 13f40 | 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 6f | .....<tr>...........<td><pre><co |
| 13f60 | 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 3c | de.class="zig">a.*</code></pre>< |
| 13f80 | 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>............. |
| 13fa0 | 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 | <ul>...............<li><a.href=" |
| 13fc0 | 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 20 | #Pointers">Pointers</a></li>.... |
| 13fe0 | 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>.. |
| 14000 | 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 65 | .........<td>.............Pointe |
| 14020 | 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 20 | r.dereference............</td>.. |
| 14040 | 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>< |
| 14060 | 63 6f 64 65 20 63 6c 61 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 |
| 14080 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | k-kw">const</span>.x:.<span.clas |
| 140a0 | 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. |
| 140c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a | class="tok-number">1234</span>;. |
| 140e0 | 3c 73 70 61 6e 20 63 6c 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 |
| 14100 | 3e 20 70 74 72 20 3d 20 26 61 6d 70 3b 78 3b 0a 78 2e 2a 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 | >.ptr.=.&x;.x.*.==.<span.cla |
| 14120 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | ss="tok-number">1234</span></cod |
| 14140 | 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>........ |
| 14160 | 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 |
| 14180 | 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 3b 61 6d | d><pre><code.class="zig">&am |
| 141a0 | 70 3b 61 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 | p;a</code></pre></td>........... |
| 141c0 | 3c 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 41 6c 6c 20 74 79 70 65 73 0a 20 20 20 20 20 | <td>.............All.types...... |
| 141e0 | 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>....... |
| 14200 | 20 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 | ......Address.of............</td |
| 14220 | 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 |
| 14240 | 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= |
| 14260 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 | "tok-kw">const</span>.x:.<span.c |
| 14280 | 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 |
| 142a0 | 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 |
| 142c0 | 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 |
| 142e0 | 70 61 6e 3e 20 70 74 72 20 3d 20 26 61 6d 70 3b 78 3b 0a 78 2e 2a 20 3d 3d 20 3c 73 70 61 6e 20 | pan>.ptr.=.&x;.x.*.==.<span. |
| 14300 | 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></ |
| 14320 | 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>..... |
| 14340 | 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>.......... |
| 14360 | 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 7c | .<td><pre><code.class="zig">a.|| |
| 14380 | 20 62 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 2f 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | .b</code></pre></td>...........< |
| 143a0 | 74 64 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | td>.............<ul>............ |
| 143c0 | 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 53 65 74 2d 54 79 70 65 22 | ...<li><a.href="#Error-Set-Type" |
| 143e0 | 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 20 | >Error.Set.Type</a></li>........ |
| 14400 | 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>...... |
| 14420 | 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 3d | .....<td>...............<a.href= |
| 14440 | 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 72 | "#Merging-Error-Sets">Merging.Er |
| 14460 | 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 20 | ror.Sets</a>...........</td>.... |
| 14480 | 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 |
| 144a0 | 64 65 20 63 6c 61 73 73 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- |
| 144c0 | 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 73 | kw">const</span>.A.=.<span.class |
| 144e0 | 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 70 | ="tok-kw">error</span>{One};.<sp |
| 14500 | 61 6e 20 63 6c 61 73 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 | an.class="tok-kw">const</span>.B |
| 14520 | 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 |
| 14540 | 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 61 | pan>{Two};.(A.||.B).==.<span.cla |
| 14560 | 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 77 | ss="tok-kw">error</span>{One,.Tw |
| 14580 | 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 0a | o}</code></pre>...........</td>. |
| 145a0 | 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 20 | ........</tr>.......</table>.... |
| 145c0 | 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 50 | ...</div>..............<h2.id="P |
| 145e0 | 72 65 63 65 64 65 6e 63 65 22 3e 50 72 65 63 65 64 65 6e 63 65 3c 2f 68 32 3e 0a 0a 20 20 20 20 | recedence">Precedence</h2>...... |
| 14600 | 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 78 28 29 20 78 5b 5d | ..<pre><code.class="zig">x().x[] |
| 14620 | 20 78 2e 79 0a 61 21 62 0a 21 78 20 2d 78 20 2d 25 78 20 7e 78 20 26 61 6d 70 3b 78 20 3f 78 0a | .x.y.a!b.!x.-x.-%x.~x.&x.?x. |
| 14640 | 78 7b 7d 20 78 2e 2a 20 78 2e 3f 0a 21 20 2a 20 2f 20 25 20 2a 2a 20 2a 25 20 7c 7c 0a 2b 20 2d | x{}.x.*.x.?.!.*./.%.**.*%.||.+.- |
| 14660 | 20 2b 2b 20 2b 25 20 2d 25 0a 26 6c 74 3b 26 6c 74 3b 20 26 67 74 3b 26 67 74 3b 0a 26 61 6d 70 | .++.+%.-%.<<.>>.& |
| 14680 | 3b 0a 5e 0a 7c 0a 3d 3d 20 21 3d 20 26 6c 74 3b 20 26 67 74 3b 20 26 6c 74 3b 3d 20 26 67 74 3b | ;.^.|.==.!=.<.>.<=.> |
| 146a0 | 3d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 64 3c 2f 73 70 61 6e | =.<span.class="tok-kw">and</span |
| 146c0 | 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 72 3c 2f 73 70 61 6e 3e | >.<span.class="tok-kw">or</span> |
| 146e0 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 72 65 6c 73 65 3c 2f 73 70 | .<span.class="tok-kw">orelse</sp |
| 14700 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f | an>.<span.class="tok-kw">catch</ |
| 14720 | 73 70 61 6e 3e 0a 3d 20 2a 3d 20 2f 3d 20 25 3d 20 2b 3d 20 2d 3d 20 26 6c 74 3b 26 6c 74 3b 3d | span>.=.*=./=.%=.+=.-=.<<= |
| 14740 | 20 26 67 74 3b 26 67 74 3b 3d 20 26 61 6d 70 3b 3d 20 5e 3d 20 7c 3d 3c 2f 63 6f 64 65 3e 3c 2f | .>>=.&=.^=.|=</code></ |
| 14760 | 70 72 65 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d | pre>.....................<h1.id= |
| 14780 | 22 41 72 72 61 79 73 22 3e 41 72 72 61 79 73 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 20 63 | "Arrays">Arrays</h1>........<p.c |
| 147a0 | 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 3e 3c 70 72 65 3e 3c | lass="file">arrays.zig</p><pre>< |
| 147c0 | 63 6f 64 65 20 63 6c 61 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 |
| 147e0 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 3c 73 70 61 | k-kw">const</span>.assert.=.<spa |
| 14800 | 6e 20 63 6c 61 73 73 3d 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 |
| 14820 | 70 61 6e 3e 28 3c 73 70 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">" |
| 14840 | 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b | ;std"</span>).debug.assert; |
| 14860 | 0a 3c 73 70 61 6e 20 63 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 |
| 14880 | 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 69 | n>.mem.=.<span.class="tok-builti |
| 148a0 | 6e 22 3e 40 69 6d 70 6f 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 |
| 148c0 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e | ok-str">"std"</span>). |
| 148e0 | 6d 65 6d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e | mem;..<span.class="tok-comment"> |
| 14900 | 2f 2f 20 61 72 72 61 79 20 6c 69 74 65 72 61 6c 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c | //.array.literal</span>.<span.cl |
| 14920 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 65 73 73 61 67 | ass="tok-kw">const</span>.messag |
| 14940 | 65 20 3d 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c | e.=.[]<span.class="tok-type">u8< |
| 14960 | 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 68 | /span>{.<span.class="tok-str">'h |
| 14980 | 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"> |
| 149a0 | 27 65 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | 'e'</span>,.<span.class="tok-str |
| 149c0 | 22 3e 27 6c 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | ">'l'</span>,.<span.class="tok-s |
| 149e0 | 74 72 22 3e 27 6c 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | tr">'l'</span>,.<span.class="tok |
| 14a00 | 2d 73 74 72 22 3e 27 6f 27 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | -str">'o'</span>.};..<span.class |
| 14a20 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 67 65 74 20 74 68 65 20 73 69 7a 65 20 6f | ="tok-comment">//.get.the.size.o |
| 14a40 | 66 20 61 6e 20 61 72 72 61 79 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | f.an.array</span>.<span.class="t |
| 14a60 | 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 73 73 | ok-kw">comptime</span>.{.....ass |
| 14a80 | 65 72 74 28 6d 65 73 73 61 67 65 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ert(message.len.==.<span.class=" |
| 14aa0 | 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 61 6e 20 | tok-number">5</span>);.}..<span. |
| 14ac0 | 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 74 72 69 6e 67 20 | class="tok-comment">//.a.string. |
| 14ae0 | 6c 69 74 65 72 61 6c 20 69 73 20 61 6e 20 61 72 72 61 79 20 6c 69 74 65 72 61 6c 3c 2f 73 70 61 | literal.is.an.array.literal</spa |
| 14b00 | 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 |
| 14b20 | 70 61 6e 3e 20 73 61 6d 65 5f 6d 65 73 73 61 67 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | pan>.same_message.=.<span.class= |
| 14b40 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 | "tok-str">"hello"</spa |
| 14b60 | 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 | n>;..<span.class="tok-kw">compti |
| 14b80 | 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 72 74 28 6d 65 6d 2e 65 71 6c 28 3c | me</span>.{.....assert(mem.eql(< |
| 14ba0 | 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>, |
| 14bc0 | 20 6d 65 73 73 61 67 65 2c 20 73 61 6d 65 5f 6d 65 73 73 61 67 65 29 29 3b 0a 20 20 20 20 61 73 | .message,.same_message));.....as |
| 14be0 | 73 65 72 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 | sert(<span.class="tok-builtin">@ |
| 14c00 | 74 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 6d 65 73 73 61 67 65 29 20 3d 3d 20 3c 73 70 61 6e 20 | typeOf</span>(message).==.<span. |
| 14c20 | 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 4f 66 3c 2f 73 70 61 | class="tok-builtin">@typeOf</spa |
| 14c40 | 6e 3e 28 73 61 6d 65 5f 6d 65 73 73 61 67 65 29 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | n>(same_message));.}..<span.clas |
| 14c60 | 73 3d 22 74 6f 6b 2d 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 |
| 14c80 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 74 65 72 61 74 65 20 6f 76 65 72 20 | ss="tok-str">"iterate.over. |
| 14ca0 | 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 |
| 14cc0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 73 75 6d 3a | n.class="tok-kw">var</span>.sum: |
| 14ce0 | 20 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 |
| 14d00 | 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"> |
| 14d20 | 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | 0</span>;.....<span.class="tok-k |
| 14d40 | 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 6d 65 73 73 61 67 65 29 20 7c 62 79 74 65 7c 20 7b | w">for</span>.(message).|byte|.{ |
| 14d60 | 0a 20 20 20 20 20 20 20 20 73 75 6d 20 2b 3d 20 62 79 74 65 3b 0a 20 20 20 20 7d 0a 20 20 20 20 | .........sum.+=.byte;.....}..... |
| 14d80 | 61 73 73 65 72 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 74 | assert(sum.==.<span.class="tok-t |
| 14da0 | 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ype">usize</span>(<span.class="t |
| 14dc0 | 6f 6b 2d 73 74 72 22 3e 27 68 27 3c 2f 73 70 61 6e 3e 29 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 | ok-str">'h'</span>).+.<span.clas |
| 14de0 | 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 28 3c 73 70 61 6e 20 | s="tok-type">usize</span>(<span. |
| 14e00 | 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 20 2b 20 3c 73 | class="tok-str">'e'</span>).+.<s |
| 14e20 | 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 |
| 14e40 | 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 6c 27 3c 2f 73 70 61 | >(<span.class="tok-str">'l'</spa |
| 14e60 | 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 32 | n>).*.<span.class="tok-number">2 |
| 14e80 | 3c 2f 73 70 61 6e 3e 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | </span>.+.<span.class="tok-type" |
| 14ea0 | 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | >usize</span>(<span.class="tok-s |
| 14ec0 | 74 72 22 3e 27 6f 27 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 | tr">'o'</span>));.}..<span.class |
| 14ee0 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6d 6f 64 69 66 69 61 62 6c 65 20 61 72 72 | ="tok-comment">//.modifiable.arr |
| 14f00 | 61 79 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 | ay</span>.<span.class="tok-kw">v |
| 14f20 | 61 72 3c 2f 73 70 61 6e 3e 20 73 6f 6d 65 5f 69 6e 74 65 67 65 72 73 3a 20 5b 3c 73 70 61 6e 20 | ar</span>.some_integers:.[<span. |
| 14f40 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 30 3c 2f 73 70 61 6e 3e 5d 3c 73 | class="tok-number">100</span>]<s |
| 14f60 | 70 61 6e 20 63 6c 61 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>. |
| 14f80 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e | =.<span.class="tok-null">undefin |
| 14fa0 | 65 64 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ed</span>;..<span.class="tok-kw" |
| 14fc0 | 3e 74 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 |
| 14fe0 | 72 22 3e 26 71 75 6f 74 3b 6d 6f 64 69 66 79 20 61 6e 20 61 72 72 61 79 26 71 75 6f 74 3b 3c 2f | r">"modify.an.array"</ |
| 15000 | 73 70 61 6e 3e 20 7b 0a 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" |
| 15020 | 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 73 6f 6d 65 5f 69 6e 74 65 67 65 72 73 29 20 7c 2a 69 74 | >for</span>.(some_integers).|*it |
| 15040 | 65 6d 2c 20 69 7c 20 7b 0a 20 20 20 20 20 20 20 20 69 74 65 6d 2e 2a 20 3d 20 3c 73 70 61 6e 20 | em,.i|.{.........item.*.=.<span. |
| 15060 | 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 |
| 15080 | 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</ |
| 150a0 | 73 70 61 6e 3e 2c 20 69 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 61 73 73 65 72 74 28 73 6f 6d 65 | span>,.i);.....}.....assert(some |
| 150c0 | 5f 69 6e 74 65 67 65 72 73 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | _integers[<span.class="tok-numbe |
| 150e0 | 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | r">10</span>].==.<span.class="to |
| 15100 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 61 73 73 65 72 74 | k-number">10</span>);.....assert |
| 15120 | 28 73 6f 6d 65 5f 69 6e 74 65 67 65 72 73 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | (some_integers[<span.class="tok- |
| 15140 | 6e 75 6d 62 65 72 22 3e 39 39 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | number">99</span>].==.<span.clas |
| 15160 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 39 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 | s="tok-number">99</span>);.}..<s |
| 15180 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 61 72 72 61 79 | pan.class="tok-comment">//.array |
| 151a0 | 20 63 6f 6e 63 61 74 65 6e 61 74 69 6f 6e 20 77 6f 72 6b 73 20 69 66 20 74 68 65 20 76 61 6c 75 | .concatenation.works.if.the.valu |
| 151c0 | 65 73 20 61 72 65 20 6b 6e 6f 77 6e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | es.are.known</span>.<span.class= |
| 151e0 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 61 74 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 | "tok-comment">//.at.compile.time |
| 15200 | 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | </span>.<span.class="tok-kw">con |
| 15220 | 73 74 3c 2f 73 70 61 6e 3e 20 70 61 72 74 5f 6f 6e 65 20 3d 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 | st</span>.part_one.=.[]<span.cla |
| 15240 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 | ss="tok-type">i32</span>{.<span. |
| 15260 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 | class="tok-number">1</span>,.<sp |
| 15280 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 20 | an.class="tok-number">2</span>,. |
| 152a0 | 3c 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 |
| 152c0 | 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 |
| 152e0 | 70 61 6e 3e 20 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | pan>.};.<span.class="tok-kw">con |
| 15300 | 73 74 3c 2f 73 70 61 6e 3e 20 70 61 72 74 5f 74 77 6f 20 3d 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 | st</span>.part_two.=.[]<span.cla |
| 15320 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 | ss="tok-type">i32</span>{.<span. |
| 15340 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 | class="tok-number">5</span>,.<sp |
| 15360 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 3c 2f 73 70 61 6e 3e 2c 20 | an.class="tok-number">6</span>,. |
| 15380 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 37 3c 2f 73 70 61 6e | <span.class="tok-number">7</span |
| 153a0 | 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 38 3c 2f 73 | >,.<span.class="tok-number">8</s |
| 153c0 | 70 61 6e 3e 20 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | pan>.};.<span.class="tok-kw">con |
| 153e0 | 73 74 3c 2f 73 70 61 6e 3e 20 61 6c 6c 5f 6f 66 5f 69 74 20 3d 20 70 61 72 74 5f 6f 6e 65 20 2b | st</span>.all_of_it.=.part_one.+ |
| 15400 | 2b 20 70 61 72 74 5f 74 77 6f 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | +.part_two;.<span.class="tok-kw" |
| 15420 | 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 72 74 28 6d 65 | >comptime</span>.{.....assert(me |
| 15440 | 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 | m.eql(<span.class="tok-type">i32 |
| 15460 | 3c 2f 73 70 61 6e 3e 2c 20 61 6c 6c 5f 6f 66 5f 69 74 2c 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 | </span>,.all_of_it,.[]<span.clas |
| 15480 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 | s="tok-type">i32</span>{.<span.c |
| 154a0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 | lass="tok-number">1</span>,.<spa |
| 154c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 20 3c | n.class="tok-number">2</span>,.< |
| 154e0 | 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> |
| 15500 | 2c 20 3c 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 |
| 15520 | 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c | an>,.<span.class="tok-number">5< |
| 15540 | 2f 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" |
| 15560 | 3e 36 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | >6</span>,.<span.class="tok-numb |
| 15580 | 65 72 22 3e 37 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | er">7</span>,.<span.class="tok-n |
| 155a0 | 75 6d 62 65 72 22 3e 38 3c 2f 73 70 61 6e 3e 20 7d 29 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c | umber">8</span>.}));.}..<span.cl |
| 155c0 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 72 65 6d 65 6d 62 65 72 20 74 68 | ass="tok-comment">//.remember.th |
| 155e0 | 61 74 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 73 20 61 72 65 20 61 72 72 61 79 73 3c 2f 73 | at.string.literals.are.arrays</s |
| 15600 | 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< |
| 15620 | 2f 73 70 61 6e 3e 20 68 65 6c 6c 6f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | /span>.hello.=.<span.class="tok- |
| 15640 | 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3b 0a 3c | str">"hello"</span>;.< |
| 15660 | 73 70 61 6e 20 63 6c 61 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> |
| 15680 | 20 77 6f 72 6c 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 | .world.=.<span.class="tok-str">& |
| 156a0 | 71 75 6f 74 3b 77 6f 72 6c 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 | quot;world"</span>;.<span.c |
| 156c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 68 65 6c 6c 6f | lass="tok-kw">const</span>.hello |
| 156e0 | 5f 77 6f 72 6c 64 20 3d 20 68 65 6c 6c 6f 20 2b 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | _world.=.hello.++.<span.class="t |
| 15700 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 20 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 2b 2b 20 | ok-str">"."</span>.++. |
| 15720 | 77 6f 72 6c 64 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 | world;.<span.class="tok-kw">comp |
| 15740 | 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 72 74 28 6d 65 6d 2e 65 71 6c | time</span>.{.....assert(mem.eql |
| 15760 | 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 |
| 15780 | 3e 2c 20 68 65 6c 6c 6f 5f 77 6f 72 6c 64 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | >,.hello_world,.<span.class="tok |
| 157a0 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f 20 77 6f 72 6c 64 26 71 75 6f 74 3b 3c 2f 73 | -str">"hello.world"</s |
| 157c0 | 70 61 6e 3e 29 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d | pan>));.}..<span.class="tok-comm |
| 157e0 | 65 6e 74 22 3e 2f 2f 20 2a 2a 20 64 6f 65 73 20 72 65 70 65 61 74 69 6e 67 20 70 61 74 74 65 72 | ent">//.**.does.repeating.patter |
| 15800 | 6e 73 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | ns</span>.<span.class="tok-kw">c |
| 15820 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 61 74 74 65 72 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | onst</span>.pattern.=.<span.clas |
| 15840 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 62 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | s="tok-str">"ab"</span |
| 15860 | 3e 20 2a 2a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c | >.**.<span.class="tok-number">3< |
| 15880 | 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 6d | /span>;.<span.class="tok-kw">com |
| 158a0 | 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 72 74 28 6d 65 6d 2e 65 71 | ptime</span>.{.....assert(mem.eq |
| 158c0 | 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 | l(<span.class="tok-type">u8</spa |
| 158e0 | 6e 3e 2c 20 70 61 74 74 65 72 6e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | n>,.pattern,.<span.class="tok-st |
| 15900 | 72 22 3e 26 71 75 6f 74 3b 61 62 61 62 61 62 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a | r">"ababab"</span>));. |
| 15920 | 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 | }..<span.class="tok-comment">//. |
| 15940 | 69 6e 69 74 69 61 6c 69 7a 65 20 61 6e 20 61 72 72 61 79 20 74 6f 20 7a 65 72 6f 3c 2f 73 70 61 | initialize.an.array.to.zero</spa |
| 15960 | 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 |
| 15980 | 70 61 6e 3e 20 61 6c 6c 5f 7a 65 72 6f 20 3d 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | pan>.all_zero.=.[]<span.class="t |
| 159a0 | 6f 6b 2d 74 79 70 65 22 3e 75 31 36 3c 2f 73 70 61 6e 3e 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ok-type">u16</span>{<span.class= |
| 159c0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 7d 20 2a 2a 20 3c 73 70 61 6e 20 | "tok-number">0</span>}.**.<span. |
| 159e0 | 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 0a 3c | class="tok-number">10</span>;..< |
| 15a00 | 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 |
| 15a20 | 61 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 72 74 28 61 6c 6c 5f 7a 65 72 6f 2e 6c 65 6e 20 3d 3d | an>.{.....assert(all_zero.len.== |
| 15a40 | 20 3c 73 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 |
| 15a60 | 61 6e 3e 29 3b 0a 20 20 20 20 61 73 73 65 72 74 28 61 6c 6c 5f 7a 65 72 6f 5b 3c 73 70 61 6e 20 | an>);.....assert(all_zero[<span. |
| 15a80 | 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 20 3d 3d 20 | class="tok-number">5</span>].==. |
| 15aa0 | 3c 73 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 |
| 15ac0 | 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 | >);.}..<span.class="tok-comment" |
| 15ae0 | 3e 2f 2f 20 75 73 65 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 63 6f 64 65 20 74 6f 20 69 6e 69 | >//.use.compile-time.code.to.ini |
| 15b00 | 74 69 61 6c 69 7a 65 20 61 6e 20 61 72 72 61 79 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c | tialize.an.array</span>.<span.cl |
| 15b20 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 66 61 6e 63 79 5f 61 72 | ass="tok-kw">var</span>.fancy_ar |
| 15b40 | 72 61 79 20 3d 20 69 6e 69 74 3a 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ray.=.init:.{.....<span.class="t |
| 15b60 | 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 69 6e 69 74 69 61 6c 5f 76 61 6c 75 65 3a | ok-kw">var</span>.initial_value: |
| 15b80 | 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 3c 2f 73 | .[<span.class="tok-number">10</s |
| 15ba0 | 70 61 6e 3e 5d 50 6f 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | pan>]Point.=.<span.class="tok-nu |
| 15bc0 | 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. |
| 15be0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 69 6e 69 74 69 | class="tok-kw">for</span>.(initi |
| 15c00 | 61 6c 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 | al_value).|*pt,.i|.{.........pt. |
| 15c20 | 2a 20 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 | *.=.Point{..............x.=.<spa |
| 15c40 | 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</ |
| 15c60 | 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 |
| 15c80 | 3c 2f 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 | </span>,.i),..............y.=.<s |
| 15ca0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 43 61 73 74 | pan.class="tok-builtin">@intCast |
| 15cc0 | 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 | </span>(<span.class="tok-type">i |
| 15ce0 | 33 32 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 | 32</span>,.i).*.<span.class="tok |
| 15d00 | 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 7d 3b 0a 20 20 | -number">2</span>,.........};... |
| 15d20 | 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 | ..}.....<span.class="tok-kw">bre |
| 15d40 | 61 6b 3c 2f 73 70 61 6e 3e 20 3a 69 6e 69 74 20 69 6e 69 74 69 61 6c 5f 76 61 6c 75 65 3b 0a 7d | ak</span>.:init.initial_value;.} |
| 15d60 | 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 |
| 15d80 | 61 6e 3e 20 50 6f 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | an>.Point.=.<span.class="tok-kw" |
| 15da0 | 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 78 3a 20 3c 73 70 61 6e 20 63 6c | >struct</span>.{.....x:.<span.cl |
| 15dc0 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 79 | ass="tok-type">i32</span>,.....y |
| 15de0 | 3a 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 |
| 15e00 | 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 |
| 15e20 | 73 74 3c 2f 73 70 61 6e 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"> |
| 15e40 | 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 61 6c 69 | "compile-time.array.initali |
| 15e60 | 7a 61 74 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 72 74 | zation"</span>.{.....assert |
| 15e80 | 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 6e 75 | (fancy_array[<span.class="tok-nu |
| 15ea0 | 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 73 73 | mber">4</span>].x.==.<span.class |
| 15ec0 | 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 61 73 73 | ="tok-number">4</span>);.....ass |
| 15ee0 | 65 72 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 | ert(fancy_array[<span.class="tok |
| 15f00 | 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 63 6c | -number">4</span>].y.==.<span.cl |
| 15f20 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 38 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c | ass="tok-number">8</span>);.}..< |
| 15f40 | 73 70 61 6e 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 | span.class="tok-comment">//.call |
| 15f60 | 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 6f 20 69 6e 69 74 69 61 6c 69 7a 65 20 61 6e 20 61 72 72 | .a.function.to.initialize.an.arr |
| 15f80 | 61 79 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 | ay</span>.<span.class="tok-kw">v |
| 15fa0 | 61 72 3c 2f 73 70 61 6e 3e 20 6d 6f 72 65 5f 70 6f 69 6e 74 73 20 3d 20 5b 5d 50 6f 69 6e 74 7b | ar</span>.more_points.=.[]Point{ |
| 15fc0 | 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 |
| 15fe0 | 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 |
| 16000 | 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 |
| 16020 | 3d 22 74 6f 6b 2d 6b 77 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= |
| 16040 | 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 |
| 16060 | 61 6e 20 63 6c 61 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>). |
| 16080 | 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" |
| 160a0 | 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 |
| 160c0 | 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 |
| 160e0 | 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>,.....}; |
| 16100 | 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 |
| 16120 | 61 6e 3e 20 3c 73 70 61 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">" |
| 16140 | 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 |
| 16160 | 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 61 73 73 65 | on.calls"</span>.{.....asse |
| 16180 | 72 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 | rt(more_points[<span.class="tok- |
| 161a0 | 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 |
| 161c0 | 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 61 | ss="tok-number">3</span>);.....a |
| 161e0 | 73 73 65 72 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 | ssert(more_points[<span.class="t |
| 16200 | 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. |
| 16220 | 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>);... |
| 16240 | 20 20 61 73 73 65 72 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 | ..assert(more_points.len.==.<spa |
| 16260 | 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>); |
| 16280 | 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= |
| 162a0 | 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 54 65 | "shell">$.zig.test.arrays.zig.Te |
| 162c0 | 73 74 20 31 2f 34 20 69 74 65 72 61 74 65 20 6f 76 65 72 20 61 6e 20 61 72 72 61 79 2e 2e 2e 4f | st.1/4.iterate.over.an.array...O |
| 162e0 | 4b 0a 54 65 73 74 20 32 2f 34 20 6d 6f 64 69 66 79 20 61 6e 20 61 72 72 61 79 2e 2e 2e 4f 4b 0a | K.Test.2/4.modify.an.array...OK. |
| 16300 | 54 65 73 74 20 33 2f 34 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 61 72 72 61 79 20 69 6e 69 74 | Test.3/4.compile-time.array.init |
| 16320 | 61 6c 69 7a 61 74 69 6f 6e 2e 2e 2e 4f 4b 0a 54 65 73 74 20 34 2f 34 20 61 72 72 61 79 20 69 6e | alization...OK.Test.4/4.array.in |
| 16340 | 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 77 69 74 68 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 73 | itialization.with.function.calls |
| 16360 | 2e 2e 2e 4f 4b 0a 41 6c 6c 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.tests.passed..</code>< |
| 16380 | 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 |
| 163a0 | 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 66 6f 72 22 3e 66 6f 72 3c 2f 61 3e 3c 2f 6c 69 | >.<li><a.href="#for">for</a></li |
| 163c0 | 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 53 6c 69 63 65 73 22 3e 53 6c 69 63 65 73 3c 2f | >.<li><a.href="#Slices">Slices</ |
| 163e0 | 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 | a></li>.</ul>...............<h1. |
| 16400 | 69 64 3d 22 50 6f 69 6e 74 65 72 73 22 3e 50 6f 69 6e 74 65 72 73 3c 2f 68 31 3e 0a 0a 20 20 20 | id="Pointers">Pointers</h1>..... |
| 16420 | 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>< |
| 16440 | 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 |
| 16460 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d | s="tok-kw">const</span>.assert.= |
| 16480 | 20 3c 73 70 61 6e 20 63 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 |
| 164a0 | 72 74 3c 2f 73 70 61 6e 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"> |
| 164c0 | 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 61 73 | "std"</span>).debug.as |
| 164e0 | 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 73 74 | sert;..<span.class="tok-kw">test |
| 16500 | 3c 2f 73 70 61 6e 3e 20 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 |
| 16520 | 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 3c 2f 73 70 61 | uot;address.of.syntax"</spa |
| 16540 | 6e 3e 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 |
| 16560 | 74 22 3e 2f 2f 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 | t">//.Get.the.address.of.a.varia |
| 16580 | 62 6c 65 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ble:</span>.....<span.class="tok |
| 165a0 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | -kw">const</span>.x:.<span.class |
| 165c0 | 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 |
| 165e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 20 | lass="tok-number">1234</span>;.. |
| 16600 | 20 20 20 3c 73 70 61 6e 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 |
| 16620 | 70 61 6e 3e 20 78 5f 70 74 72 20 3d 20 26 61 6d 70 3b 78 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 | pan>.x_ptr.=.&x;......<span. |
| 16640 | 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 66 65 72 65 6e 63 65 | class="tok-comment">//.Deference |
| 16660 | 20 61 20 70 6f 69 6e 74 65 72 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 73 65 72 74 28 78 5f | .a.pointer:</span>.....assert(x_ |
| 16680 | 70 74 72 2e 2a 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | ptr.*.==.<span.class="tok-number |
| 166a0 | 22 3e 31 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 | ">1234</span>);......<span.class |
| 166c0 | 3d 22 74 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 | ="tok-comment">//.When.you.get.t |
| 166e0 | 68 65 20 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 | he.address.of.a.const.variable,. |
| 16700 | 79 6f 75 20 67 65 74 20 61 20 63 6f 6e 73 74 20 70 6f 69 6e 74 65 72 2e 3c 2f 73 70 61 6e 3e 0a | you.get.a.const.pointer.</span>. |
| 16720 | 20 20 20 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | ....assert(<span.class="tok-buil |
| 16740 | 74 69 6e 22 3e 40 74 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 78 5f 70 74 72 29 20 3d 3d 20 2a 3c | tin">@typeOf</span>(x_ptr).==.*< |
| 16760 | 73 70 61 6e 20 63 6c 61 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> |
| 16780 | 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 |
| 167a0 | 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 | n>);......<span.class="tok-comme |
| 167c0 | 6e 74 22 3e 2f 2f 20 49 66 20 79 6f 75 20 77 61 6e 74 20 74 6f 20 6d 75 74 61 74 65 20 74 68 65 | nt">//.If.you.want.to.mutate.the |
| 167e0 | 20 76 61 6c 75 65 2c 20 79 6f 75 27 64 20 6e 65 65 64 20 61 6e 20 61 64 64 72 65 73 73 20 6f 66 | .value,.you'd.need.an.address.of |
| 16800 | 20 61 20 6d 75 74 61 62 6c 65 20 76 61 72 69 61 62 6c 65 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | .a.mutable.variable:</span>..... |
| 16820 | 3c 73 70 61 6e 20 63 6c 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>. |
| 16840 | 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 | y:.<span.class="tok-type">i32</s |
| 16860 | 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"> |
| 16880 | 35 36 37 38 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 | 5678</span>;.....<span.class="to |
| 168a0 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 79 5f 70 74 72 20 3d 20 26 61 6d 70 3b | k-kw">const</span>.y_ptr.=.& |
| 168c0 | 79 3b 0a 20 20 20 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | y;.....assert(<span.class="tok-b |
| 168e0 | 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 79 5f 70 74 72 29 20 3d 3d | uiltin">@typeOf</span>(y_ptr).== |
| 16900 | 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 | .*<span.class="tok-type">i32</sp |
| 16920 | 61 6e 3e 29 3b 0a 20 20 20 20 79 5f 70 74 72 2e 2a 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | an>);.....y_ptr.*.+=.<span.class |
| 16940 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 61 73 73 65 | ="tok-number">1</span>;.....asse |
| 16960 | 72 74 28 79 5f 70 74 72 2e 2a 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | rt(y_ptr.*.==.<span.class="tok-n |
| 16980 | 75 6d 62 65 72 22 3e 35 36 37 39 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c | umber">5679</span>);.}..<span.cl |
| 169a0 | 61 73 73 3d 22 74 6f 6b 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 |
| 169c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 70 6f 69 6e 74 65 72 20 61 72 72 | lass="tok-str">"pointer.arr |
| 169e0 | 61 79 20 61 63 63 65 73 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 | ay.access"</span>.{.....<sp |
| 16a00 | 61 6e 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 61 6b 69 6e 67 | an.class="tok-comment">//.Taking |
| 16a20 | 20 61 6e 20 61 64 64 72 65 73 73 20 6f 66 20 61 6e 20 69 6e 64 69 76 69 64 75 61 6c 20 65 6c 65 | .an.address.of.an.individual.ele |
| 16a40 | 6d 65 6e 74 20 67 69 76 65 73 20 61 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | ment.gives.a</span>.....<span.cl |
| 16a60 | 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 72 20 74 6f 20 | ass="tok-comment">//.pointer.to. |
| 16a80 | 61 20 73 69 6e 67 6c 65 20 69 74 65 6d 2e 20 54 68 69 73 20 6b 69 6e 64 20 6f 66 20 70 6f 69 6e | a.single.item..This.kind.of.poin |
| 16aa0 | 74 65 72 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ter</span>.....<span.class="tok- |
| 16ac0 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 64 6f 65 73 20 6e 6f 74 20 73 75 70 70 6f 72 74 20 70 6f 69 | comment">//.does.not.support.poi |
| 16ae0 | 6e 74 65 72 20 61 72 69 74 68 6d 65 74 69 63 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 | nter.arithmetic.</span>.....<spa |
| 16b00 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 72 72 61 | n.class="tok-kw">var</span>.arra |
| 16b20 | 79 20 3d 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c | y.=.[]<span.class="tok-type">u8< |
| 16b40 | 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | /span>{.<span.class="tok-number" |
| 16b60 | 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 |
| 16b80 | 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 |
| 16ba0 | 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | umber">3</span>,.<span.class="to |
| 16bc0 | 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | k-number">4</span>,.<span.class= |
| 16be0 | 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 |
| 16c00 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 | ss="tok-number">6</span>,.<span. |
| 16c20 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 37 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 | class="tok-number">7</span>,.<sp |
| 16c40 | 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 2c 20 | an.class="tok-number">8</span>,. |
| 16c60 | 3c 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 |
| 16c80 | 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</ |
| 16ca0 | 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | span>.};.....<span.class="tok-kw |
| 16cc0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 74 72 20 3d 20 26 61 6d 70 3b 61 72 72 61 79 5b | ">const</span>.ptr.=.&array[ |
| 16ce0 | 3c 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 |
| 16d00 | 3e 5d 3b 0a 20 20 20 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | >];.....assert(<span.class="tok- |
| 16d20 | 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 70 74 72 29 20 3d 3d 20 | builtin">@typeOf</span>(ptr).==. |
| 16d40 | 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 61 6e | *<span.class="tok-type">u8</span |
| 16d60 | 3e 29 3b 0a 0a 20 20 20 20 61 73 73 65 72 74 28 61 72 72 61 79 5b 3c 73 70 61 6e 20 63 6c 61 73 | >);......assert(array[<span.clas |
| 16d80 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 | s="tok-number">2</span>].==.<spa |
| 16da0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 3b 0a | n.class="tok-number">3</span>);. |
| 16dc0 | 20 20 20 20 70 74 72 2e 2a 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | ....ptr.*.+=.<span.class="tok-nu |
| 16de0 | 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 61 73 73 65 72 74 28 61 72 72 61 79 | mber">1</span>;.....assert(array |
| 16e00 | 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 | [<span.class="tok-number">2</spa |
| 16e20 | 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | n>].==.<span.class="tok-number"> |
| 16e40 | 34 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | 4</span>);.}..<span.class="tok-k |
| 16e60 | 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- |
| 16e80 | 73 74 72 22 3e 26 71 75 6f 74 3b 70 6f 69 6e 74 65 72 20 73 6c 69 63 69 6e 67 26 71 75 6f 74 3b | str">"pointer.slicing" |
| 16ea0 | 3c 2f 73 70 61 6e 3e 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 |
| 16ec0 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 6e 20 5a 69 67 2c 20 77 65 20 70 72 65 66 65 72 20 73 6c 69 | omment">//.In.Zig,.we.prefer.sli |
| 16ee0 | 63 65 73 20 6f 76 65 72 20 70 6f 69 6e 74 65 72 73 20 74 6f 20 6e 75 6c 6c 2d 74 65 72 6d 69 6e | ces.over.pointers.to.null-termin |
| 16f00 | 61 74 65 64 20 61 72 72 61 79 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | ated.arrays.</span>.....<span.cl |
| 16f20 | 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 74 75 72 | ass="tok-comment">//.You.can.tur |
| 16f40 | 6e 20 61 6e 20 61 72 72 61 79 20 69 6e 74 6f 20 61 20 73 6c 69 63 65 20 75 73 69 6e 67 20 73 6c | n.an.array.into.a.slice.using.sl |
| 16f60 | 69 63 65 20 73 79 6e 74 61 78 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ice.syntax:</span>.....<span.cla |
| 16f80 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 72 72 61 79 20 3d 20 5b | ss="tok-kw">var</span>.array.=.[ |
| 16fa0 | 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 |
| 16fc0 | 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 |
| 16fe0 | 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 |
| 17000 | 3c 2f 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 |
| 17020 | 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 |
| 17040 | 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- |
| 17060 | 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 |
| 17080 | 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 |
| 170a0 | 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 |
| 170c0 | 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 |
| 170e0 | 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 |
| 17100 | 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> |
| 17120 | 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 |
| 17140 | 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 |
| 17160 | 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 |
| 17180 | 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>];.. |
| 171a0 | 20 20 20 61 73 73 65 72 74 28 73 6c 69 63 65 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 | ...assert(slice.len.==.<span.cla |
| 171c0 | 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>);...... |
| 171e0 | 3c 73 70 61 6e 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 | <span.class="tok-comment">//.Sli |
| 17200 | 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 |
| 17220 | 20 74 68 65 72 65 66 6f 72 65 20 70 72 6f 74 65 63 74 65 64 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | .therefore.protected</span>..... |
| 17240 | 3c 73 70 61 6e 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 67 61 | <span.class="tok-comment">//.aga |
| 17260 | 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 |
| 17280 | 76 69 6f 72 2e 20 54 68 69 73 20 69 73 20 6f 6e 65 20 72 65 61 73 6f 6e 3c 2f 73 70 61 6e 3e 0a | vior..This.is.one.reason</span>. |
| 172a0 | 20 20 20 20 3c 73 70 61 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">// |
| 172c0 | 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 3c 2f | .we.prefer.slices.to.pointers.</ |
| 172e0 | 73 70 61 6e 3e 0a 20 20 20 20 61 73 73 65 72 74 28 61 72 72 61 79 5b 3c 73 70 61 6e 20 63 6c 61 | span>.....assert(array[<span.cla |
| 17300 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 | ss="tok-number">3</span>].==.<sp |
| 17320 | 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>); |
| 17340 | 0a 20 20 20 20 73 6c 69 63 65 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | .....slice[<span.class="tok-numb |
| 17360 | 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | er">1</span>].+=.<span.class="to |
| 17380 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 61 73 73 65 72 74 28 61 | k-number">1</span>;.....assert(a |
| 173a0 | 72 72 61 79 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c | rray[<span.class="tok-number">3< |
| 173c0 | 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 |
| 173e0 | 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | er">5</span>);.}..<span.class="t |
| 17400 | 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 | ok-kw">comptime</span>.{.....<sp |
| 17420 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 50 6f 69 6e 74 65 | an.class="tok-comment">//.Pointe |
| 17440 | 72 73 20 77 6f 72 6b 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 74 6f 6f 2c 20 61 73 20 | rs.work.at.compile-time.too,.as. |
| 17460 | 6c 6f 6e 67 20 61 73 20 79 6f 75 20 64 6f 6e 27 74 20 75 73 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 | long.as.you.don't.use</span>.... |
| 17480 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 40 70 | .<span.class="tok-comment">//.@p |
| 174a0 | 74 72 43 61 73 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 | trCast.</span>.....<span.class=" |
| 174c0 | 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 |
| 174e0 | 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. |
| 17500 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 | class="tok-number">1</span>;.... |
| 17520 | 20 3c 73 70 61 6e 20 63 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 |
| 17540 | 6e 3e 20 70 74 72 20 3d 20 26 61 6d 70 3b 78 3b 0a 20 20 20 20 70 74 72 2e 2a 20 2b 3d 20 3c 73 | n>.ptr.=.&x;.....ptr.*.+=.<s |
| 17560 | 70 61 6e 20 63 6c 61 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>; |
| 17580 | 0a 20 20 20 20 78 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | .....x.+=.<span.class="tok-numbe |
| 175a0 | 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 61 73 73 65 72 74 28 70 74 72 2e 2a 20 3d 3d | r">1</span>;.....assert(ptr.*.== |
| 175c0 | 20 3c 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 |
| 175e0 | 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 | n>);.}..<span.class="tok-kw">tes |
| 17600 | 74 3c 2f 73 70 61 6e 3e 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">& |
| 17620 | 71 75 6f 74 3b 40 70 74 72 54 6f 49 6e 74 20 61 6e 64 20 40 69 6e 74 54 6f 50 74 72 26 71 75 6f | quot;@ptrToInt.and.@intToPtr&quo |
| 17640 | 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 |
| 17660 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 6f 20 63 6f 6e 76 65 72 74 20 61 6e 20 69 6e 74 65 67 | -comment">//.To.convert.an.integ |
| 17680 | 65 72 20 61 64 64 72 65 73 73 20 69 6e 74 6f 20 61 20 70 6f 69 6e 74 65 72 2c 20 75 73 65 20 40 | er.address.into.a.pointer,.use.@ |
| 176a0 | 69 6e 74 54 6f 50 74 72 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | intToPtr:</span>.....<span.class |
| 176c0 | 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 3c 73 70 | ="tok-kw">const</span>.ptr.=.<sp |
| 176e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 54 6f 50 74 72 | an.class="tok-builtin">@intToPtr |
| 17700 | 3c 2f 73 70 61 6e 3e 28 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | </span>(*<span.class="tok-type"> |
| 17720 | 69 33 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | i32</span>,.<span.class="tok-num |
| 17740 | 62 65 72 22 3e 30 78 64 65 61 64 62 65 65 66 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 | ber">0xdeadbeef</span>);......<s |
| 17760 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 6f 20 63 6f | pan.class="tok-comment">//.To.co |
| 17780 | 6e 76 65 72 74 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 61 6e 20 69 6e 74 65 67 65 72 2c 20 75 | nvert.a.pointer.to.an.integer,.u |
| 177a0 | 73 65 20 40 70 74 72 54 6f 49 6e 74 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 | se.@ptrToInt:</span>.....<span.c |
| 177c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 64 64 72 20 | lass="tok-kw">const</span>.addr. |
| 177e0 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 74 72 | =.<span.class="tok-builtin">@ptr |
| 17800 | 54 6f 49 6e 74 3c 2f 73 70 61 6e 3e 28 70 74 72 29 3b 0a 0a 20 20 20 20 61 73 73 65 72 74 28 3c | ToInt</span>(ptr);......assert(< |
| 17820 | 73 70 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 4f 66 | span.class="tok-builtin">@typeOf |
| 17840 | 3c 2f 73 70 61 6e 3e 28 61 64 64 72 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | </span>(addr).==.<span.class="to |
| 17860 | 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 61 73 73 65 72 | k-type">usize</span>);.....asser |
| 17880 | 74 28 61 64 64 72 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | t(addr.==.<span.class="tok-numbe |
| 178a0 | 72 22 3e 30 78 64 65 61 64 62 65 65 66 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 | r">0xdeadbeef</span>);.}..<span. |
| 178c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b | class="tok-kw">comptime</span>.{ |
| 178e0 | 0a 20 20 20 20 3c 73 70 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">/ |
| 17900 | 2f 20 5a 69 67 20 69 73 20 61 62 6c 65 20 74 6f 20 64 6f 20 74 68 69 73 20 61 74 20 63 6f 6d 70 | /.Zig.is.able.to.do.this.at.comp |
| 17920 | 69 6c 65 2d 74 69 6d 65 2c 20 61 73 20 6c 6f 6e 67 20 61 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | ile-time,.as.long.as</span>..... |
| 17940 | 3c 73 70 61 6e 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 74 72 | <span.class="tok-comment">//.ptr |
| 17960 | 20 69 73 20 6e 65 76 65 72 20 64 65 72 65 66 65 72 65 6e 63 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 | .is.never.dereferenced.</span>.. |
| 17980 | 20 20 20 3c 73 70 61 6e 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 |
| 179a0 | 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 62 75 69 6c | pan>.ptr.=.<span.class="tok-buil |
| 179c0 | 74 69 6e 22 3e 40 69 6e 74 54 6f 50 74 72 3c 2f 73 70 61 6e 3e 28 2a 3c 73 70 61 6e 20 63 6c 61 | tin">@intToPtr</span>(*<span.cla |
| 179e0 | 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 61 6e 20 | ss="tok-type">i32</span>,.<span. |
| 17a00 | 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 66 3c 2f 73 | class="tok-number">0xdeadbeef</s |
| 17a20 | 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pan>);.....<span.class="tok-kw"> |
| 17a40 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 64 64 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | const</span>.addr.=.<span.class= |
| 17a60 | 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 3e 28 70 | "tok-builtin">@ptrToInt</span>(p |
| 17a80 | 74 72 29 3b 0a 20 20 20 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | tr);.....assert(<span.class="tok |
| 17aa0 | 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 61 64 64 72 29 20 3d | -builtin">@typeOf</span>(addr).= |
| 17ac0 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f | =.<span.class="tok-type">usize</ |
| 17ae0 | 73 70 61 6e 3e 29 3b 0a 20 20 20 20 61 73 73 65 72 74 28 61 64 64 72 20 3d 3d 20 3c 73 70 61 6e | span>);.....assert(addr.==.<span |
| 17b00 | 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 66 3c 2f | .class="tok-number">0xdeadbeef</ |
| 17b20 | 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | span>);.}..<span.class="tok-kw"> |
| 17b40 | 74 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 |
| 17b60 | 22 3e 26 71 75 6f 74 3b 76 6f 6c 61 74 69 6c 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a | ">"volatile"</span>.{. |
| 17b80 | 20 20 20 20 3c 73 70 61 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">// |
| 17ba0 | 20 49 6e 20 5a 69 67 2c 20 6c 6f 61 64 73 20 61 6e 64 20 73 74 6f 72 65 73 20 61 72 65 20 61 73 | .In.Zig,.loads.and.stores.are.as |
| 17bc0 | 73 75 6d 65 64 20 74 6f 20 6e 6f 74 20 68 61 76 65 20 73 69 64 65 20 65 66 66 65 63 74 73 2e 3c | sumed.to.not.have.side.effects.< |
| 17be0 | 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 |
| 17c00 | 65 6e 74 22 3e 2f 2f 20 49 66 20 61 20 67 69 76 65 6e 20 6c 6f 61 64 20 6f 72 20 73 74 6f 72 65 | ent">//.If.a.given.load.or.store |
| 17c20 | 20 73 68 6f 75 6c 64 20 68 61 76 65 20 73 69 64 65 20 65 66 66 65 63 74 73 2c 20 73 75 63 68 20 | .should.have.side.effects,.such. |
| 17c40 | 61 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 | as</span>.....<span.class="tok-c |
| 17c60 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4d 65 6d 6f 72 79 20 4d 61 70 70 65 64 20 49 6e 70 75 74 2f 4f | omment">//.Memory.Mapped.Input/O |
| 17c80 | 75 74 70 75 74 20 28 4d 4d 49 4f 29 2c 20 75 73 65 20 60 76 6f 6c 61 74 69 6c 65 60 3a 3c 2f 73 | utput.(MMIO),.use.`volatile`:</s |
| 17ca0 | 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | pan>.....<span.class="tok-kw">co |
| 17cc0 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 6d 69 6f 5f 70 74 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | nst</span>.mmio_ptr.=.<span.clas |
| 17ce0 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 54 6f 50 74 72 3c 2f 73 70 61 6e 3e | s="tok-builtin">@intToPtr</span> |
| 17d00 | 28 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 6f 6c 61 74 69 6c 65 3c | (*<span.class="tok-kw">volatile< |
| 17d20 | 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 |
| 17d40 | 3c 2f 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 |
| 17d60 | 22 3e 30 78 31 32 33 34 35 36 37 38 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e | ">0x12345678</span>);......<span |
| 17d80 | 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 77 20 6c 6f 61 64 | .class="tok-comment">//.Now.load |
| 17da0 | 73 20 61 6e 64 20 73 74 6f 72 65 73 20 77 69 74 68 20 6d 6d 69 6f 5f 70 74 72 20 61 72 65 20 67 | s.and.stores.with.mmio_ptr.are.g |
| 17dc0 | 75 61 72 61 6e 74 65 65 64 20 74 6f 20 61 6c 6c 20 68 61 70 70 65 6e 3c 2f 73 70 61 6e 3e 0a 20 | uaranteed.to.all.happen</span>.. |
| 17de0 | 20 20 20 3c 73 70 61 6e 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">//. |
| 17e00 | 61 6e 64 20 69 6e 20 74 68 65 20 73 61 6d 65 20 6f 72 64 65 72 20 61 73 20 69 6e 20 73 6f 75 72 | and.in.the.same.order.as.in.sour |
| 17e20 | 63 65 20 63 6f 64 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 73 65 72 74 28 3c 73 70 61 6e | ce.code.</span>.....assert(<span |
| 17e40 | 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 4f 66 3c 2f 73 70 | .class="tok-builtin">@typeOf</sp |
| 17e60 | 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 3d 22 74 | an>(mmio_ptr).==.*<span.class="t |
| 17e80 | 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 63 6c 61 | ok-kw">volatile</span>.<span.cla |
| 17ea0 | 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 0a 0a 3c 73 70 | ss="tok-type">u8</span>);.}..<sp |
| 17ec0 | 61 6e 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 |
| 17ee0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6f 70 74 69 6f 6e | pan.class="tok-str">"option |
| 17f00 | 61 6c 20 70 6f 69 6e 74 65 72 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c | al.pointers"</span>.{.....< |
| 17f20 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 50 6f 69 6e | span.class="tok-comment">//.Poin |
| 17f40 | 74 65 72 73 20 63 61 6e 6e 6f 74 20 62 65 20 6e 75 6c 6c 2e 20 49 66 20 79 6f 75 20 77 61 6e 74 | ters.cannot.be.null..If.you.want |
| 17f60 | 20 61 20 6e 75 6c 6c 20 70 6f 69 6e 74 65 72 2c 20 75 73 65 20 74 68 65 20 6f 70 74 69 6f 6e 61 | .a.null.pointer,.use.the.optiona |
| 17f80 | 6c 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f | l</span>.....<span.class="tok-co |
| 17fa0 | 6d 6d 65 6e 74 22 3e 2f 2f 20 70 72 65 66 69 78 20 60 3f 60 20 74 6f 20 6d 61 6b 65 20 74 68 65 | mment">//.prefix.`?`.to.make.the |
| 17fc0 | 20 70 6f 69 6e 74 65 72 20 74 79 70 65 20 6f 70 74 69 6f 6e 61 6c 2e 3c 2f 73 70 61 6e 3e 0a 20 | .pointer.type.optional.</span>.. |
| 17fe0 | 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 |
| 18000 | 6e 3e 20 70 74 72 3a 20 3f 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | n>.ptr:.?*<span.class="tok-type" |
| 18020 | 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 |
| 18040 | 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ull">null</span>;......<span.cla |
| 18060 | 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. |
| 18080 | 63 6c 61 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 |
| 180a0 | 70 61 6e 20 63 6c 61 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>; |
| 180c0 | 0a 20 20 20 20 70 74 72 20 3d 20 26 61 6d 70 3b 78 3b 0a 0a 20 20 20 20 61 73 73 65 72 74 28 70 | .....ptr.=.&x;......assert(p |
| 180e0 | 74 72 2e 3f 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 | tr.?.*.==.<span.class="tok-numbe |
| 18100 | 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | r">1</span>);......<span.class=" |
| 18120 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4f 70 74 69 6f 6e 61 6c 20 70 6f 69 6e 74 65 72 | tok-comment">//.Optional.pointer |
| 18140 | 73 20 61 72 65 20 74 68 65 20 73 61 6d 65 20 73 69 7a 65 20 61 73 20 6e 6f 72 6d 61 6c 20 70 6f | s.are.the.same.size.as.normal.po |
| 18160 | 69 6e 74 65 72 73 2c 20 62 65 63 61 75 73 65 20 70 6f 69 6e 74 65 72 3c 2f 73 70 61 6e 3e 0a 20 | inters,.because.pointer</span>.. |
| 18180 | 20 20 20 3c 73 70 61 6e 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">//. |
| 181a0 | 76 61 6c 75 65 20 30 20 69 73 20 75 73 65 64 20 61 73 20 74 68 65 20 6e 75 6c 6c 20 76 61 6c 75 | value.0.is.used.as.the.null.valu |
| 181c0 | 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 | e.</span>.....assert(<span.class |
| 181e0 | 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 3f 2a | ="tok-builtin">@sizeOf</span>(?* |
| 18200 | 3c 73 70 61 6e 20 63 6c 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 |
| 18220 | 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | >).==.<span.class="tok-builtin"> |
| 18240 | 40 73 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | @sizeOf</span>(*<span.class="tok |
| 18260 | 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c | -type">i32</span>));.}..<span.cl |
| 18280 | 61 73 73 3d 22 74 6f 6b 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 |
| 182a0 | 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 61 73 | lass="tok-str">"pointer.cas |
| 182c0 | 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 73 70 61 6e 20 63 6c | ting"</span>.{.....<span.cl |
| 182e0 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 6f 20 63 6f 6e 76 65 72 74 20 | ass="tok-comment">//.To.convert. |
| 18300 | 6f 6e 65 20 70 6f 69 6e 74 65 72 20 74 79 70 65 20 74 6f 20 61 6e 6f 74 68 65 72 2c 20 75 73 65 | one.pointer.type.to.another,.use |
| 18320 | 20 40 70 74 72 43 61 73 74 2e 20 54 68 69 73 20 69 73 20 61 6e 20 75 6e 73 61 66 65 3c 2f 73 70 | .@ptrCast..This.is.an.unsafe</sp |
| 18340 | 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 |
| 18360 | 22 3e 2f 2f 20 6f 70 65 72 61 74 69 6f 6e 20 74 68 61 74 20 5a 69 67 20 63 61 6e 6e 6f 74 20 70 | ">//.operation.that.Zig.cannot.p |
| 18380 | 72 6f 74 65 63 74 20 79 6f 75 20 61 67 61 69 6e 73 74 2e 20 55 73 65 20 40 70 74 72 43 61 73 74 | rotect.you.against..Use.@ptrCast |
| 183a0 | 20 6f 6e 6c 79 20 77 68 65 6e 20 6f 74 68 65 72 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 | .only.when.other</span>.....<spa |
| 183c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 63 6f 6e 76 65 72 73 | n.class="tok-comment">//.convers |
| 183e0 | 69 6f 6e 73 20 61 72 65 20 6e 6f 74 20 70 6f 73 73 69 62 6c 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 | ions.are.not.possible.</span>... |
| 18400 | 20 20 3c 73 70 61 6e 20 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 |
| 18420 | 61 6e 3e 20 62 79 74 65 73 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 | an>.bytes.<span.class="tok-kw">a |
| 18440 | 6c 69 67 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | lign</span>(<span.class="tok-bui |
| 18460 | 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 |
| 18480 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 29 20 3d 20 5b 5d 3c 73 | s="tok-type">u32</span>)).=.[]<s |
| 184a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 7b 20 | pan.class="tok-type">u8</span>{. |
| 184c0 | 3c 73 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 | <span.class="tok-number">0x12</s |
| 184e0 | 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 |
| 18500 | 78 31 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | x12</span>,.<span.class="tok-num |
| 18520 | 62 65 72 22 3e 30 78 31 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ber">0x12</span>,.<span.class="t |
| 18540 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 32 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 | ok-number">0x12</span>.};.....<s |
| 18560 | 70 61 6e 20 63 6c 61 73 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>. |
| 18580 | 75 33 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 | u32_ptr.=.<span.class="tok-built |
| 185a0 | 69 6e 22 3e 40 70 74 72 43 61 73 74 3c 2f 73 70 61 6e 3e 28 2a 3c 73 70 61 6e 20 63 6c 61 73 73 | in">@ptrCast</span>(*<span.class |
| 185c0 | 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 |
| 185e0 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 26 61 6d 70 3b 62 | ss="tok-type">u32</span>,.&b |
| 18600 | 79 74 65 73 29 3b 0a 20 20 20 20 61 73 73 65 72 74 28 75 33 32 5f 70 74 72 2e 2a 20 3d 3d 20 3c | ytes);.....assert(u32_ptr.*.==.< |
| 18620 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 32 31 32 31 32 | span.class="tok-number">0x121212 |
| 18640 | 31 32 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | 12</span>);......<span.class="to |
| 18660 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 45 76 65 6e 20 74 68 69 73 20 65 78 61 6d 70 6c 65 20 | k-comment">//.Even.this.example. |
| 18680 | 69 73 20 63 6f 6e 74 72 69 76 65 64 20 2d 20 74 68 65 72 65 20 61 72 65 20 62 65 74 74 65 72 20 | is.contrived.-.there.are.better. |
| 186a0 | 77 61 79 73 20 74 6f 20 64 6f 20 74 68 65 20 61 62 6f 76 65 20 74 68 61 6e 3c 2f 73 70 61 6e 3e | ways.to.do.the.above.than</span> |
| 186c0 | 0a 20 20 20 20 3c 73 70 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">/ |
| 186e0 | 2f 20 70 6f 69 6e 74 65 72 20 63 61 73 74 69 6e 67 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 | /.pointer.casting..For.example,. |
| 18700 | 75 73 69 6e 67 20 61 20 73 6c 69 63 65 20 6e 61 72 72 6f 77 69 6e 67 20 63 61 73 74 3a 3c 2f 73 | using.a.slice.narrowing.cast:</s |
| 18720 | 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | pan>.....<span.class="tok-kw">co |
| 18740 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 75 33 32 5f 76 61 6c 75 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | nst</span>.u32_value.=.<span.cla |
| 18760 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 62 79 74 65 73 54 6f 53 6c 69 63 65 3c 2f | ss="tok-builtin">@bytesToSlice</ |
| 18780 | 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 | span>(<span.class="tok-type">u32 |
| 187a0 | 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 74 6f 6b 2d | </span>,.bytes[<span.class="tok- |
| 187c0 | 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 6c 61 73 73 | number">0</span>..])[<span.class |
| 187e0 | 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 20 61 73 73 | ="tok-number">0</span>];.....ass |
| 18800 | 65 72 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 3d 22 74 6f | ert(u32_value.==.<span.class="to |
| 18820 | 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 32 31 32 31 32 31 32 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 | k-number">0x12121212</span>);... |
| 18840 | 20 20 20 3c 73 70 61 6e 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">//. |
| 18860 | 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 73 74 20 73 | And.even.another.way,.the.most.s |
| 18880 | 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 3c 2f 73 70 | traightforward.way.to.do.it:</sp |
| 188a0 | 61 6e 3e 0a 20 20 20 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | an>.....assert(<span.class="tok- |
| 188c0 | 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 61 6e 20 63 | builtin">@bitCast</span>(<span.c |
| 188e0 | 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 62 79 74 65 | lass="tok-type">u32</span>,.byte |
| 18900 | 73 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 | s).==.<span.class="tok-number">0 |
| 18920 | 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 63 6c 61 73 | x12121212</span>);.}..<span.clas |
| 18940 | 73 3d 22 74 6f 6b 2d 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 |
| 18960 | 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 68 69 6c 64 | ss="tok-str">"pointer.child |
| 18980 | 20 74 79 70 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | .type"</span>.{.....<span.c |
| 189a0 | 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 72 20 74 79 | lass="tok-comment">//.pointer.ty |
| 189c0 | 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 63 68 20 74 | pes.have.a.`child`.field.which.t |
| 189e0 | 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 20 74 6f 2e | ells.you.the.type.they.point.to. |
| 18a00 | 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 73 65 72 74 28 28 2a 3c 73 70 61 6e 20 63 6c 61 73 73 | </span>.....assert((*<span.class |
| 18a20 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 2e 43 68 69 6c 64 20 3d 3d | ="tok-type">u32</span>).Child.== |
| 18a40 | 20 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 |
| 18a60 | 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 |
| 18a80 | 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. |
| 18aa0 | 54 65 73 74 20 31 2f 38 20 61 64 64 72 65 73 73 20 6f 66 20 73 79 6e 74 61 78 2e 2e 2e 4f 4b 0a | Test.1/8.address.of.syntax...OK. |
| 18ac0 | 54 65 73 74 20 32 2f 38 20 70 6f 69 6e 74 65 72 20 61 72 72 61 79 20 61 63 63 65 73 73 2e 2e 2e | Test.2/8.pointer.array.access... |
| 18ae0 | 4f 4b 0a 54 65 73 74 20 33 2f 38 20 70 6f 69 6e 74 65 72 20 73 6c 69 63 69 6e 67 2e 2e 2e 4f 4b | OK.Test.3/8.pointer.slicing...OK |
| 18b00 | 0a 54 65 73 74 20 34 2f 38 20 40 70 74 72 54 6f 49 6e 74 20 61 6e 64 20 40 69 6e 74 54 6f 50 74 | .Test.4/8.@ptrToInt.and.@intToPt |
| 18b20 | 72 2e 2e 2e 4f 4b 0a 54 65 73 74 20 35 2f 38 20 76 6f 6c 61 74 69 6c 65 2e 2e 2e 4f 4b 0a 54 65 | r...OK.Test.5/8.volatile...OK.Te |
| 18b40 | 73 74 20 36 2f 38 20 6f 70 74 69 6f 6e 61 6c 20 70 6f 69 6e 74 65 72 73 2e 2e 2e 4f 4b 0a 54 65 | st.6/8.optional.pointers...OK.Te |
| 18b60 | 73 74 20 37 2f 38 20 70 6f 69 6e 74 65 72 20 63 61 73 74 69 6e 67 2e 2e 2e 4f 4b 0a 54 65 73 74 | st.7/8.pointer.casting...OK.Test |
| 18b80 | 20 38 2f 38 20 70 6f 69 6e 74 65 72 20 63 68 69 6c 64 20 74 79 70 65 2e 2e 2e 4f 4b 0a 41 6c 6c | .8/8.pointer.child.type...OK.All |
| 18ba0 | 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>.... |
| 18bc0 | 20 20 20 20 3c 68 32 20 69 64 3d 22 41 6c 69 67 6e 6d 65 6e 74 22 3e 41 6c 69 67 6e 6d 65 6e 74 | ....<h2.id="Alignment">Alignment |
| 18be0 | 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 20 74 79 70 65 | </h2>........<p>.......Each.type |
| 18c00 | 20 68 61 73 20 61 6e 20 3c 73 74 72 6f 6e 67 3e 61 6c 69 67 6e 6d 65 6e 74 3c 2f 73 74 72 6f 6e | .has.an.<strong>alignment</stron |
| 18c20 | 67 3e 20 2d 20 61 20 6e 75 6d 62 65 72 20 6f 66 20 62 79 74 65 73 20 73 75 63 68 20 74 68 61 74 | g>.-.a.number.of.bytes.such.that |
| 18c40 | 2c 0a 20 20 20 20 20 20 77 68 65 6e 20 61 20 76 61 6c 75 65 20 6f 66 20 74 68 65 20 74 79 70 65 | ,.......when.a.value.of.the.type |
| 18c60 | 20 69 73 20 6c 6f 61 64 65 64 20 66 72 6f 6d 20 6f 72 20 73 74 6f 72 65 64 20 74 6f 20 6d 65 6d | .is.loaded.from.or.stored.to.mem |
| 18c80 | 6f 72 79 2c 0a 20 20 20 20 20 20 74 68 65 20 6d 65 6d 6f 72 79 20 61 64 64 72 65 73 73 20 6d 75 | ory,.......the.memory.address.mu |
| 18ca0 | 73 74 20 62 65 20 65 76 65 6e 6c 79 20 64 69 76 69 73 69 62 6c 65 20 62 79 20 74 68 69 73 20 6e | st.be.evenly.divisible.by.this.n |
| 18cc0 | 75 6d 62 65 72 2e 20 59 6f 75 20 63 61 6e 20 75 73 65 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 | umber..You.can.use.......<a.href |
| 18ce0 | 3d 22 23 61 6c 69 67 6e 4f 66 22 3e 40 61 6c 69 67 6e 4f 66 3c 2f 61 3e 20 74 6f 20 66 69 6e 64 | ="#alignOf">@alignOf</a>.to.find |
| 18d00 | 20 6f 75 74 20 74 68 69 73 20 76 61 6c 75 65 20 66 6f 72 20 61 6e 79 20 74 79 70 65 2e 0a 20 20 | .out.this.value.for.any.type.... |
| 18d20 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 6c 69 67 6e 6d 65 | ....</p>.......<p>.......Alignme |
| 18d40 | 6e 74 20 64 65 70 65 6e 64 73 20 6f 6e 20 74 68 65 20 43 50 55 20 61 72 63 68 69 74 65 63 74 75 | nt.depends.on.the.CPU.architectu |
| 18d60 | 72 65 2c 20 62 75 74 20 69 73 20 61 6c 77 61 79 73 20 61 20 70 6f 77 65 72 20 6f 66 20 74 77 6f | re,.but.is.always.a.power.of.two |
| 18d80 | 2c 20 61 6e 64 0a 20 20 20 20 20 20 6c 65 73 73 20 74 68 61 6e 20 3c 63 6f 64 65 20 63 6c 61 73 | ,.and.......less.than.<code.clas |
| 18da0 | 73 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" |
| 18dc0 | 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=" |
| 18de0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 39 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 | tok-number">29</span></code>.... |
| 18e00 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 5a 69 67 2c | ....</p>.......<p>.......In.Zig, |
| 18e20 | 20 61 20 70 6f 69 6e 74 65 72 20 74 79 70 65 20 68 61 73 20 61 6e 20 61 6c 69 67 6e 6d 65 6e 74 | .a.pointer.type.has.an.alignment |
| 18e40 | 20 76 61 6c 75 65 2e 20 49 66 20 74 68 65 20 76 61 6c 75 65 20 69 73 20 65 71 75 61 6c 20 74 6f | .value..If.the.value.is.equal.to |
| 18e60 | 20 74 68 65 0a 20 20 20 20 20 20 61 6c 69 67 6e 6d 65 6e 74 20 6f 66 20 74 68 65 20 75 6e 64 65 | .the.......alignment.of.the.unde |
| 18e80 | 72 6c 79 69 6e 67 20 74 79 70 65 2c 20 69 74 20 63 61 6e 20 62 65 20 6f 6d 69 74 74 65 64 20 66 | rlying.type,.it.can.be.omitted.f |
| 18ea0 | 72 6f 6d 20 74 68 65 20 74 79 70 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | rom.the.type:.......</p>.......< |
| 18ec0 | 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> |
| 18ee0 | 3c 63 6f 64 65 20 63 6c 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 |
| 18f00 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 3c 73 70 | ok-kw">const</span>.assert.=.<sp |
| 18f20 | 61 6e 20 63 6c 61 73 73 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</ |
| 18f40 | 73 70 61 6e 3e 28 3c 73 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 |
| 18f60 | 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 61 73 73 65 72 74 | t;std"</span>).debug.assert |
| 18f80 | 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 |
| 18fa0 | 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 62 | an>.builtin.=.<span.class="tok-b |
| 18fc0 | 75 69 6c 74 69 6e 22 3e 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 |
| 18fe0 | 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 3b | ss="tok-str">"builtin" |
| 19000 | 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"> |
| 19020 | 74 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 |
| 19040 | 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" |
| 19060 | 3c 2f 73 70 61 6e 3e 20 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 |
| 19080 | 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 |
| 190a0 | 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 |
| 190c0 | 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>;.....< |
| 190e0 | 73 70 61 6e 20 63 6c 61 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> |
| 19100 | 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 |
| 19120 | 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. |
| 19140 | 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 4f 66 3c 2f 73 70 61 | class="tok-builtin">@typeOf</spa |
| 19160 | 6e 3e 28 78 29 29 3b 0a 20 20 20 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | n>(x));.....assert(<span.class=" |
| 19180 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 26 61 6d 70 | tok-builtin">@typeOf</span>(& |
| 191a0 | 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 |
| 191c0 | 33 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 61 73 73 65 72 74 28 2a 3c 73 70 61 6e 20 63 6c | 32</span>);.....assert(*<span.cl |
| 191e0 | 61 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 |
| 19200 | 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>( |
| 19220 | 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 |
| 19240 | 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 |
| 19260 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 62 75 69 6c 74 69 6e 2e 61 72 | s="tok-kw">if</span>.(builtin.ar |
| 19280 | 63 68 20 3d 3d 20 62 75 69 6c 74 69 6e 2e 41 72 63 68 2e 78 38 36 5f 36 34 29 20 7b 0a 20 20 20 | ch.==.builtin.Arch.x86_64).{.... |
| 192a0 | 20 20 20 20 20 61 73 73 65 72 74 28 28 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | .....assert((*<span.class="tok-t |
| 192c0 | 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 2e 61 6c 69 67 6e 6d 65 6e 74 20 3d 3d 20 3c 73 | ype">i32</span>).alignment.==.<s |
| 192e0 | 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>) |
| 19300 | 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 65 | ;.....}.}</code></pre><pre><code |
| 19320 | 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 |
| 19340 | 69 67 0a 54 65 73 74 20 31 2f 31 20 76 61 72 69 61 62 6c 65 20 61 6c 69 67 6e 6d 65 6e 74 2e 2e | ig.Test.1/1.variable.alignment.. |
| 19360 | 2e 4f 4b 0a 41 6c 6c 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 | .OK.All.tests.passed..</code></p |
| 19380 | 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 49 6e 20 74 68 65 20 73 61 6d 65 20 77 61 79 20 74 68 | re>........<p>In.the.same.way.th |
| 193a0 | 61 74 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2a 3c 73 70 61 6e 20 63 6c | at.a.<code.class="zig">*<span.cl |
| 193c0 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ass="tok-type">i32</span></code> |
| 193e0 | 20 63 61 6e 20 62 65 20 3c 61 20 68 72 65 66 3d 22 23 49 6d 70 6c 69 63 69 74 2d 43 61 73 74 73 | .can.be.<a.href="#Implicit-Casts |
| 19400 | 22 3e 69 6d 70 6c 69 63 69 74 6c 79 20 63 61 73 74 3c 2f 61 3e 20 74 6f 20 61 0a 20 20 20 20 20 | ">implicitly.cast</a>.to.a...... |
| 19420 | 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2a 3c 73 70 61 6e 20 63 6c | .....<code.class="zig">*<span.cl |
| 19440 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | ass="tok-kw">const</span>.<span. |
| 19460 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | class="tok-type">i32</span></cod |
| 19480 | 65 3e 2c 20 61 20 70 6f 69 6e 74 65 72 20 77 69 74 68 20 61 20 6c 61 72 67 65 72 20 61 6c 69 67 | e>,.a.pointer.with.a.larger.alig |
| 194a0 | 6e 6d 65 6e 74 20 63 61 6e 20 62 65 20 69 6d 70 6c 69 63 69 74 6c 79 0a 20 20 20 20 20 20 63 61 | nment.can.be.implicitly.......ca |
| 194c0 | 73 74 20 74 6f 20 61 20 70 6f 69 6e 74 65 72 20 77 69 74 68 20 61 20 73 6d 61 6c 6c 65 72 20 61 | st.to.a.pointer.with.a.smaller.a |
| 194e0 | 6c 69 67 6e 6d 65 6e 74 2c 20 62 75 74 20 6e 6f 74 20 76 69 63 65 20 76 65 72 73 61 2e 0a 20 20 | lignment,.but.not.vice.versa.... |
| 19500 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 59 6f 75 20 63 61 6e | ....</p>.......<p>.......You.can |
| 19520 | 20 73 70 65 63 69 66 79 20 61 6c 69 67 6e 6d 65 6e 74 20 6f 6e 20 76 61 72 69 61 62 6c 65 73 20 | .specify.alignment.on.variables. |
| 19540 | 61 6e 64 20 66 75 6e 63 74 69 6f 6e 73 2e 20 49 66 20 79 6f 75 20 64 6f 20 74 68 69 73 2c 20 74 | and.functions..If.you.do.this,.t |
| 19560 | 68 65 6e 0a 20 20 20 20 20 20 70 6f 69 6e 74 65 72 73 20 74 6f 20 74 68 65 6d 20 67 65 74 20 74 | hen.......pointers.to.them.get.t |
| 19580 | 68 65 20 73 70 65 63 69 66 69 65 64 20 61 6c 69 67 6e 6d 65 6e 74 3a 0a 20 20 20 20 20 20 3c 2f | he.specified.alignment:.......</ |
| 195a0 | 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 |
| 195c0 | 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 |
| 195e0 | 6e 20 63 6c 61 73 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 | n.class="tok-kw">const</span>.as |
| 19600 | 73 65 72 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | sert.=.<span.class="tok-builtin" |
| 19620 | 3e 40 69 6d 70 6f 72 74 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 |
| 19640 | 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 |
| 19660 | 62 75 67 2e 61 73 73 65 72 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | bug.assert;..<span.class="tok-kw |
| 19680 | 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 66 6f 6f 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ">var</span>.foo:.<span.class="t |
| 196a0 | 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 61 73 73 3d 22 | ok-type">u8</span>.<span.class=" |
| 196c0 | 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | tok-kw">align</span>(<span.class |
| 196e0 | 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 20 | ="tok-number">4</span>).=.<span. |
| 19700 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 30 3c 2f 73 70 61 6e 3e 3b 0a 0a | class="tok-number">100</span>;.. |
| 19720 | 3c 73 70 61 6e 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> |
| 19740 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 67 6c 6f | .<span.class="tok-str">"glo |
| 19760 | 62 61 6c 20 76 61 72 69 61 62 6c 65 20 61 6c 69 67 6e 6d 65 6e 74 26 71 75 6f 74 3b 3c 2f 73 70 | bal.variable.alignment"</sp |
| 19780 | 61 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | an>.{.....assert(<span.class="to |
| 197a0 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 26 61 6d 70 3b 66 | k-builtin">@typeOf</span>(&f |
| 197c0 | 6f 6f 29 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 74 6f | oo).alignment.==.<span.class="to |
| 197e0 | 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 61 73 73 65 72 74 28 | k-number">4</span>);.....assert( |
| 19800 | 3c 73 70 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 4f | <span.class="tok-builtin">@typeO |
| 19820 | 66 3c 2f 73 70 61 6e 3e 28 26 61 6d 70 3b 66 6f 6f 29 20 3d 3d 20 2a 3c 73 70 61 6e 20 63 6c 61 | f</span>(&foo).==.*<span.cla |
| 19840 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 | ss="tok-kw">align</span>(<span.c |
| 19860 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 | lass="tok-number">4</span>).<spa |
| 19880 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 3b 0a 20 | n.class="tok-type">u8</span>);.. |
| 198a0 | 20 20 20 3c 73 70 61 6e 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 |
| 198c0 | 70 61 6e 3e 20 73 6c 69 63 65 20 3d 20 28 2a 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | pan>.slice.=.(*[<span.class="tok |
| 198e0 | 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | -number">1</span>]<span.class="t |
| 19900 | 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 28 26 61 6d 70 3b 66 6f 6f 29 5b 3c 73 | ok-type">u8</span>)(&foo)[<s |
| 19920 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e | pan.class="tok-number">0</span>. |
| 19940 | 2e 5d 3b 0a 20 20 20 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .];.....assert(<span.class="tok- |
| 19960 | 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 73 6c 69 63 65 29 20 3d | builtin">@typeOf</span>(slice).= |
| 19980 | 3d 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e 3c 2f | =.[]<span.class="tok-kw">align</ |
| 199a0 | 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 | span>(<span.class="tok-number">4 |
| 199c0 | 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"> |
| 199e0 | 75 38 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | u8</span>);.}..<span.class="tok- |
| 19a00 | 6b 77 22 3e 66 6e 3c 2f 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 |
| 19a20 | 6e 22 3e 64 65 72 70 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | n">derp</span>().<span.class="to |
| 19a40 | 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=" |
| 19a60 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 | tok-builtin">@sizeOf</span>(<spa |
| 19a80 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 29 | n.class="tok-type">usize</span>) |
| 19aa0 | 20 2a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 | .*.<span.class="tok-number">2</s |
| 19ac0 | 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 |
| 19ae0 | 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 72 | </span>.{.<span.class="tok-kw">r |
| 19b00 | 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | eturn</span>.<span.class="tok-nu |
| 19b20 | 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 20 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | mber">1234</span>;.}.<span.class |
| 19b40 | 3d 22 74 6f 6b 2d 6b 77 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= |
| 19b60 | 22 74 6f 6b 2d 66 6e 22 3e 6e 6f 6f 70 31 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c | "tok-fn">noop1</span>().<span.cl |
| 19b80 | 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. |
| 19ba0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 | class="tok-number">1</span>).<sp |
| 19bc0 | 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>. |
| 19be0 | 7b 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e | {}.<span.class="tok-kw">fn</span |
| 19c00 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6e 6f 6f 70 34 3c 2f 73 70 | >.<span.class="tok-fn">noop4</sp |
| 19c20 | 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e | an>().<span.class="tok-kw">align |
| 19c40 | 3c 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" |
| 19c60 | 3e 34 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | >4</span>).<span.class="tok-type |
| 19c80 | 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ">void</span>.{}..<span.class="t |
| 19ca0 | 6f 6b 2d 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=" |
| 19cc0 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 75 6e 63 74 69 6f 6e 20 61 6c 69 67 6e 6d 65 6e | tok-str">"function.alignmen |
| 19ce0 | 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 72 74 28 64 65 72 70 | t"</span>.{.....assert(derp |
| 19d00 | 28 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | ().==.<span.class="tok-number">1 |
| 19d20 | 32 33 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c | 234</span>);.....assert(<span.cl |
| 19d40 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 4f 66 3c 2f 73 70 61 6e 3e | ass="tok-builtin">@typeOf</span> |
| 19d60 | 28 6e 6f 6f 70 31 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | (noop1).==.<span.class="tok-kw"> |
| 19d80 | 66 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | fn</span>().<span.class="tok-kw" |
| 19da0 | 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | >align</span>(<span.class="tok-n |
| 19dc0 | 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | umber">1</span>).<span.class="to |
| 19de0 | 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 61 73 73 65 72 74 | k-type">void</span>);.....assert |
| 19e00 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 | (<span.class="tok-builtin">@type |
| 19e20 | 4f 66 3c 2f 73 70 61 6e 3e 28 6e 6f 6f 70 34 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | Of</span>(noop4).==.<span.class= |
| 19e40 | 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 | "tok-kw">fn</span>().<span.class |
| 19e60 | 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 | ="tok-kw">align</span>(<span.cla |
| 19e80 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 | ss="tok-number">4</span>).<span. |
| 19ea0 | 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 20 | class="tok-type">void</span>);.. |
| 19ec0 | 20 20 20 6e 6f 6f 70 31 28 29 3b 0a 20 20 20 20 6e 6f 6f 70 34 28 29 3b 0a 7d 3c 2f 63 6f 64 65 | ...noop1();.....noop4();.}</code |
| 19ee0 | 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"> |
| 19f00 | 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 31 2f 32 20 67 6c 6f | $.zig.test.test.zig.Test.1/2.glo |
| 19f20 | 62 61 6c 20 76 61 72 69 61 62 6c 65 20 61 6c 69 67 6e 6d 65 6e 74 2e 2e 2e 4f 4b 0a 54 65 73 74 | bal.variable.alignment...OK.Test |
| 19f40 | 20 32 2f 32 20 66 75 6e 63 74 69 6f 6e 20 61 6c 69 67 6e 6d 65 6e 74 2e 2e 2e 4f 4b 0a 41 6c 6c | .2/2.function.alignment...OK.All |
| 19f60 | 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>.... |
| 19f80 | 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 6e | ....<p>.......If.you.have.a.poin |
| 19fa0 | 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 20 | ter.or.a.slice.that.has.a.small. |
| 19fc0 | 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 20 | alignment,.but.you.know.that.it. |
| 19fe0 | 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 67 | actually.......has.a.bigger.alig |
| 1a000 | 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 3e | nment,.use.<a.href="#alignCast"> |
| 1a020 | 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 20 | @alignCast</a>.to.change.the.... |
| 1a040 | 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 70 | ...pointer.into.a.more.aligned.p |
| 1a060 | 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 69 | ointer..This.is.a.no-op.at.runti |
| 1a080 | 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 3d | me,.but.inserts.a.......<a.href= |
| 1a0a0 | 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 73 | "#Incorrect-Pointer-Alignment">s |
| 1a0c0 | 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 20 | afety.check</a>:.......</p>..... |
| 1a0e0 | 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 |
| 1a100 | 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 |
| 1a120 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 | ="tok-kw">const</span>.assert.=. |
| 1a140 | 3c 73 70 61 6e 20 63 6c 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 |
| 1a160 | 74 3c 2f 73 70 61 6e 3e 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">& |
| 1a180 | 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 61 73 73 | quot;std"</span>).debug.ass |
| 1a1a0 | 65 72 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c | ert;..<span.class="tok-kw">test< |
| 1a1c0 | 2f 73 70 61 6e 3e 20 3c 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 |
| 1a1e0 | 6f 74 3b 70 6f 69 6e 74 65 72 20 61 6c 69 67 6e 6d 65 6e 74 20 73 61 66 65 74 79 26 71 75 6f 74 | ot;pointer.alignment.safety" |
| 1a200 | 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- |
| 1a220 | 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 72 72 61 79 20 3c 73 70 61 6e 20 63 6c 61 73 73 | kw">var</span>.array.<span.class |
| 1a240 | 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 | ="tok-kw">align</span>(<span.cla |
| 1a260 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 29 20 3d 20 5b 5d 3c 73 | ss="tok-number">4</span>).=.[]<s |
| 1a280 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 7b | pan.class="tok-type">u32</span>{ |
| 1a2a0 | 20 3c 73 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 | .<span.class="tok-number">0x1111 |
| 1a2c0 | 31 31 31 31 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | 1111</span>,.<span.class="tok-nu |
| 1a2e0 | 6d 62 65 72 22 3e 30 78 31 31 31 31 31 31 31 31 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c | mber">0x11111111</span>.};.....< |
| 1a300 | 73 70 61 6e 20 63 6c 61 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> |
| 1a320 | 20 62 79 74 65 73 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | .bytes.=.<span.class="tok-builti |
| 1a340 | 6e 22 3e 40 73 6c 69 63 65 54 6f 42 79 74 65 73 3c 2f 73 70 61 6e 3e 28 61 72 72 61 79 5b 3c 73 | n">@sliceToBytes</span>(array[<s |
| 1a360 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e | pan.class="tok-number">0</span>. |
| 1a380 | 2e 5d 29 3b 0a 20 20 20 20 61 73 73 65 72 74 28 66 6f 6f 28 62 79 74 65 73 29 20 3d 3d 20 3c 73 | .]);.....assert(foo(bytes).==.<s |
| 1a3a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 31 31 31 31 31 31 | pan.class="tok-number">0x1111111 |
| 1a3c0 | 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 6b 2d 6b 77 | 1</span>);.}.<span.class="tok-kw |
| 1a3e0 | 22 3e 66 6e 3c 2f 73 70 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" |
| 1a400 | 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 62 79 74 65 73 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 | >foo</span>(bytes:.[]<span.class |
| 1a420 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 | ="tok-type">u8</span>).<span.cla |
| 1a440 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c | ss="tok-type">u32</span>.{.....< |
| 1a460 | 73 70 61 6e 20 63 6c 61 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> |
| 1a480 | 20 73 6c 69 63 65 34 20 3d 20 62 79 74 65 73 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | .slice4.=.bytes[<span.class="tok |
| 1a4a0 | 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2e 2e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | -number">1</span>..<span.class=" |
| 1a4c0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 5d 3b 0a 20 20 20 20 3c 73 70 61 6e | tok-number">5</span>];.....<span |
| 1a4e0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 69 6e 74 | .class="tok-kw">const</span>.int |
| 1a500 | 5f 73 6c 69 63 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 | _slice.=.<span.class="tok-builti |
| 1a520 | 6e 22 3e 40 62 79 74 65 73 54 6f 53 6c 69 63 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c | n">@bytesToSlice</span>(<span.cl |
| 1a540 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e | ass="tok-type">u32</span>,.<span |
| 1a560 | 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< |
| 1a580 | 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"> |
| 1a5a0 | 34 3c 2f 73 70 61 6e 3e 2c 20 73 6c 69 63 65 34 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | 4</span>,.slice4));.....<span.cl |
| 1a5c0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 69 6e 74 5f 73 | ass="tok-kw">return</span>.int_s |
| 1a5e0 | 6c 69 63 65 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c | lice[<span.class="tok-number">0< |
| 1a600 | 2f 73 70 61 6e 3e 5d 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 | /span>];.}</code></pre><pre><cod |
| 1a620 | 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. |
| 1a640 | 7a 69 67 0a 54 65 73 74 20 31 2f 31 20 70 6f 69 6e 74 65 72 20 61 6c 69 67 6e 6d 65 6e 74 20 73 | zig.Test.1/1.pointer.alignment.s |
| 1a660 | 61 66 65 74 79 2e 2e 2e 69 6e 63 6f 72 72 65 63 74 20 61 6c 69 67 6e 6d 65 6e 74 0a 3c 73 70 61 | afety...incorrect.alignment.<spa |
| 1a680 | 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 64 65 76 2f 7a | n.class="t37_1">/home/andy/dev/z |
| 1a6a0 | 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 31 30 3a 35 36 3c 2f 73 70 | ig/docgen_tmp/test.zig:10:56</sp |
| 1a6c0 | 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 32 62 66 | an>:.<span.class="t2_0">0x2052bf |
| 1a6e0 | 20 69 6e 20 3f 3f 3f 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 | .in.???.(test)</span>.....const. |
| 1a700 | 69 6e 74 5f 73 6c 69 63 65 20 3d 20 40 62 79 74 65 73 54 6f 53 6c 69 63 65 28 75 33 32 2c 20 40 | int_slice.=.@bytesToSlice(u32,.@ |
| 1a720 | 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 20 20 20 20 | alignCast(4,.slice4));.......... |
| 1a740 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| 1a760 | 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 |
| 1a780 | 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">/ |
| 1a7a0 | 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 | home/andy/dev/zig/docgen_tmp/tes |
| 1a7c0 | 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 61 73 73 3d 22 | t.zig:6:15</span>:.<span.class=" |
| 1a7e0 | 74 32 5f 30 22 3e 30 78 32 30 35 30 61 37 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 | t2_0">0x2050a7.in.???.(test)</sp |
| 1a800 | 61 6e 3e 0a 20 20 20 20 61 73 73 65 72 74 28 66 6f 6f 28 62 79 74 65 73 29 20 3d 3d 20 30 78 31 | an>.....assert(foo(bytes).==.0x1 |
| 1a820 | 31 31 31 31 31 31 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 | 1111111);...............<span.cl |
| 1a840 | 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 |
| 1a860 | 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c | ="t37_1">/home/andy/dev/zig/buil |
| 1a880 | 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 74 65 73 74 5f 72 75 6e 6e 65 | d/lib/zig/std/special/test_runne |
| 1a8a0 | 72 2e 7a 69 67 3a 31 33 3a 32 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | r.zig:13:25</span>:.<span.class= |
| 1a8c0 | 22 74 32 5f 30 22 3e 30 78 32 32 32 61 63 61 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 | "t2_0">0x222aca.in.???.(test)</s |
| 1a8e0 | 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 69 66 20 28 74 65 73 74 5f 66 6e 2e 66 75 6e 63 28 29 29 | pan>.........if.(test_fn.func()) |
| 1a900 | 20 7c 5f 7c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c | .|_|.{.........................< |
| 1a920 | 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 |
| 1a940 | 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 64 65 76 2f 7a | n.class="t37_1">/home/andy/dev/z |
| 1a960 | 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f | ig/build/lib/zig/std/special/boo |
| 1a980 | 74 73 74 72 61 70 2e 7a 69 67 3a 39 36 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 | tstrap.zig:96:22</span>:.<span.c |
| 1a9a0 | 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 38 37 62 20 69 6e 20 3f 3f 3f 20 28 74 65 73 | lass="t2_0">0x22287b.in.???.(tes |
| 1a9c0 | 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 6f 74 2e 6d 61 69 6e 28 | t)</span>.............root.main( |
| 1a9e0 | 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 20 20 | ).catch.|err|.{................. |
| 1aa00 | 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 |
| 1aa20 | 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 |
| 1aa40 | 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 | /dev/zig/build/lib/zig/std/speci |
| 1aa60 | 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 37 30 3a 32 30 3c 2f 73 70 61 6e 3e 3a 20 3c | al/bootstrap.zig:70:20</span>:.< |
| 1aa80 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 37 66 35 20 69 6e 20 3f 3f | span.class="t2_0">0x2227f5.in.?? |
| 1aaa0 | 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 63 61 6c 6c 4d | ?.(test)</span>.....return.callM |
| 1aac0 | 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 3c 73 70 61 6e 20 | ain();....................<span. |
| 1aae0 | 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 |
| 1ab00 | 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 | ss="t37_1">/home/andy/dev/zig/bu |
| 1ab20 | 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 | ild/lib/zig/std/special/bootstra |
| 1ab40 | 70 2e 7a 69 67 3a 36 34 3a 33 39 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | p.zig:64:39</span>:.<span.class= |
| 1ab60 | 22 74 32 5f 30 22 3e 30 78 32 32 32 36 35 38 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 | "t2_0">0x222658.in.???.(test)</s |
| 1ab80 | 70 61 6e 3e 0a 20 20 20 20 73 74 64 2e 6f 73 2e 70 6f 73 69 78 2e 65 78 69 74 28 63 61 6c 6c 4d | pan>.....std.os.posix.exit(callM |
| 1aba0 | 61 69 6e 57 69 74 68 41 72 67 73 28 61 72 67 63 2c 20 61 72 67 76 2c 20 65 6e 76 70 29 29 3b 0a | ainWithArgs(argc,.argv,.envp));. |
| 1abc0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| 1abe0 | 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 |
| 1ac00 | 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 |
| 1ac20 | 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 | y/dev/zig/build/lib/zig/std/spec |
| 1ac40 | 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 33 37 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c | ial/bootstrap.zig:37:5</span>:.< |
| 1ac60 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 35 31 30 20 69 6e 20 3f 3f | span.class="t2_0">0x222510.in.?? |
| 1ac80 | 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 6e 6f 49 6e 6c 69 6e 65 43 61 6c | ?.(test)</span>.....@noInlineCal |
| 1aca0 | 6c 28 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 29 3b 0a 20 20 20 20 3c 73 70 | l(posixCallMainAndExit);.....<sp |
| 1acc0 | 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 0a 54 65 73 74 73 | an.class="t32_1">^</span>..Tests |
| 1ace0 | 20 66 61 69 6c 65 64 2e 20 55 73 65 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 6d 6d 61 | .failed..Use.the.following.comma |
| 1ad00 | 6e 64 20 74 6f 20 72 65 70 72 6f 64 75 63 65 20 74 68 65 20 66 61 69 6c 75 72 65 3a 0a 2f 68 6f | nd.to.reproduce.the.failure:./ho |
| 1ad20 | 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 0a | me/andy/dev/zig/docgen_tmp/test. |
| 1ad40 | 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. |
| 1ad60 | 69 64 3d 22 54 79 70 65 2d 42 61 73 65 64 2d 41 6c 69 61 73 2d 41 6e 61 6c 79 73 69 73 22 3e 54 | id="Type-Based-Alias-Analysis">T |
| 1ad80 | 79 70 65 20 42 61 73 65 64 20 41 6c 69 61 73 20 41 6e 61 6c 79 73 69 73 3c 2f 68 32 3e 0a 0a 20 | ype.Based.Alias.Analysis</h2>... |
| 1ada0 | 20 20 20 20 20 3c 70 3e 5a 69 67 20 75 73 65 73 20 54 79 70 65 20 42 61 73 65 64 20 41 6c 69 61 | .....<p>Zig.uses.Type.Based.Alia |
| 1adc0 | 73 20 41 6e 61 6c 79 73 69 73 20 28 61 6c 73 6f 20 6b 6e 6f 77 6e 20 61 73 20 53 74 72 69 63 74 | s.Analysis.(also.known.as.Strict |
| 1ade0 | 20 41 6c 69 61 73 69 6e 67 29 20 74 6f 0a 20 20 20 20 20 20 70 65 72 66 6f 72 6d 20 73 6f 6d 65 | .Aliasing).to.......perform.some |
| 1ae00 | 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 73 2e 20 54 68 69 73 20 6d 65 61 6e 73 20 74 68 61 74 20 | .optimizations..This.means.that. |
| 1ae20 | 70 6f 69 6e 74 65 72 73 20 6f 66 20 64 69 66 66 65 72 65 6e 74 20 74 79 70 65 73 20 6d 75 73 74 | pointers.of.different.types.must |
| 1ae40 | 0a 20 20 20 20 20 20 6e 6f 74 20 61 6c 69 61 73 20 74 68 65 20 73 61 6d 65 20 6d 65 6d 6f 72 79 | .......not.alias.the.same.memory |
| 1ae60 | 2c 20 77 69 74 68 20 74 68 65 20 65 78 63 65 70 74 69 6f 6e 20 6f 66 20 3c 63 6f 64 65 20 63 6c | ,.with.the.exception.of.<code.cl |
| 1ae80 | 61 73 73 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" |
| 1aea0 | 3e 75 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 20 50 6f 69 6e 74 65 72 73 20 74 6f 0a 20 | >u8</span></code>..Pointers.to.. |
| 1aec0 | 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 |
| 1aee0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | .class="tok-type">u8</span></cod |
| 1af00 | 65 3e 20 63 61 6e 20 61 6c 69 61 73 20 61 6e 79 20 6d 65 6d 6f 72 79 2e 0a 20 20 20 20 20 20 3c | e>.can.alias.any.memory........< |
| 1af20 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 41 73 20 61 6e 20 65 78 61 6d 70 6c 65 2c 20 74 68 69 73 | /p>.......<p>As.an.example,.this |
| 1af40 | 20 63 6f 64 65 20 70 72 6f 64 75 63 65 73 20 75 6e 64 65 66 69 6e 65 64 20 62 65 68 61 76 69 6f | .code.produces.undefined.behavio |
| 1af60 | 72 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | r:</p>.......<pre><code.class="z |
| 1af80 | 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 70 | ig"><span.class="tok-builtin">@p |
| 1afa0 | 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 74 6f 6b 2d | trCast</span>(*<span.class="tok- |
| 1afc0 | 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | type">u32</span>,.<span.class="t |
| 1afe0 | 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ok-type">f32</span>(<span.class= |
| 1b000 | 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 29 2e 2a 3c 2f 63 | "tok-number">12.34</span>)).*</c |
| 1b020 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 49 6e 73 74 65 61 64 2c 20 75 73 65 | ode></pre>.......<p>Instead,.use |
| 1b040 | 20 3c 61 20 68 72 65 66 3d 22 23 62 69 74 43 61 73 74 22 3e 40 62 69 74 43 61 73 74 3c 2f 61 3e | .<a.href="#bitCast">@bitCast</a> |
| 1b060 | 3a 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">< |
| 1b080 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 62 69 74 43 61 73 | span.class="tok-builtin">@bitCas |
| 1b0a0 | 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | t</span>(<span.class="tok-type"> |
| 1b0c0 | 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 74 79 70 | u32</span>,.<span.class="tok-typ |
| 1b0e0 | 65 22 3e 66 33 32 3c 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 | e">f32</span>(<span.class="tok-n |
| 1b100 | 75 6d 62 65 72 22 3e 31 32 2e 33 34 3c 2f 73 70 61 6e 3e 29 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | umber">12.34</span>))</code></pr |
| 1b120 | 65 3e 0a 20 20 20 20 20 20 3c 70 3e 41 73 20 61 6e 20 61 64 64 65 64 20 62 65 6e 65 66 69 74 2c | e>.......<p>As.an.added.benefit, |
| 1b140 | 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | .the.<code.class="zig"><span.cla |
| 1b160 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 62 69 74 43 61 73 74 3c 2f 73 70 61 6e 3e | ss="tok-builtin">@bitCast</span> |
| 1b180 | 3c 2f 63 6f 64 65 3e 20 76 65 72 73 69 6f 6e 20 77 6f 72 6b 73 20 61 74 20 63 6f 6d 70 69 6c 65 | </code>.version.works.at.compile |
| 1b1a0 | 2d 74 69 6d 65 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 | -time.</p>.......<p>See.also:</p |
| 1b1c0 | 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 53 6c 69 63 65 73 22 3e 53 6c 69 63 | ><ul>.<li><a.href="#Slices">Slic |
| 1b1e0 | 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 4d 65 6d 6f 72 79 | es</a></li>.<li><a.href="#Memory |
| 1b200 | 22 3e 4d 65 6d 6f 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 | ">Memory</a></li>.</ul>......... |
| 1b220 | 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 53 6c 69 63 65 73 22 3e 53 6c 69 | .............<h1.id="Slices">Sli |
| 1b240 | 63 65 73 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 | ces</h1>........<p.class="file"> |
| 1b260 | 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 |
| 1b280 | 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 |
| 1b2a0 | 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | pan>.assert.=.<span.class="tok-b |
| 1b2c0 | 75 69 6c 74 69 6e 22 3e 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 |
| 1b2e0 | 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 |
| 1b300 | 61 6e 3e 29 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | an>).debug.assert;..<span.class= |
| 1b320 | 22 74 6f 6b 2d 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 |
| 1b340 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 61 73 69 63 20 73 6c 69 63 65 73 26 71 75 | ="tok-str">"basic.slices&qu |
| 1b360 | 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 |
| 1b380 | 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 5d 3c 73 70 61 6e | k-kw">var</span>.array.=.[]<span |
| 1b3a0 | 20 63 6c 61 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 |
| 1b3c0 | 70 61 6e 20 63 6c 61 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>, |
| 1b3e0 | 20 3c 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 |
| 1b400 | 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</ |
| 1b420 | 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"> |
| 1b440 | 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 |
| 1b460 | 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 |
| 1b480 | 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 |
| 1b4a0 | 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>.....< |
| 1b4c0 | 73 70 61 6e 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 |
| 1b4e0 | 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 |
| 1b500 | 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< |
| 1b520 | 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 |
| 1b540 | 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 |
| 1b560 | 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 |
| 1b580 | 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 |
| 1b5a0 | 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 |
| 1b5c0 | 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>. |
| 1b5e0 | 20 20 20 20 3c 73 70 61 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</ |
| 1b600 | 73 70 61 6e 3e 20 73 6c 69 63 65 20 3d 20 61 72 72 61 79 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d | span>.slice.=.array[<span.class= |
| 1b620 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 61 72 72 61 79 2e 6c 65 6e | "tok-number">0</span>..array.len |
| 1b640 | 5d 3b 0a 20 20 20 20 61 73 73 65 72 74 28 26 61 6d 70 3b 73 6c 69 63 65 5b 3c 73 70 61 6e 20 63 | ];.....assert(&slice[<span.c |
| 1b660 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 26 | lass="tok-number">0</span>].==.& |
| 1b680 | 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 6e 75 6d 62 65 | amp;array[<span.class="tok-numbe |
| 1b6a0 | 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 29 3b 0a 20 20 20 20 61 73 73 65 72 74 28 73 6c 69 63 65 2e | r">0</span>]);.....assert(slice. |
| 1b6c0 | 6c 65 6e 20 3d 3d 20 61 72 72 61 79 2e 6c 65 6e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | len.==.array.len);......<span.cl |
| 1b6e0 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 55 73 69 6e 67 20 74 68 65 20 61 | ass="tok-comment">//.Using.the.a |
| 1b700 | 64 64 72 65 73 73 2d 6f 66 20 6f 70 65 72 61 74 6f 72 20 6f 6e 20 61 20 73 6c 69 63 65 20 67 69 | ddress-of.operator.on.a.slice.gi |
| 1b720 | 76 65 73 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 61 20 73 69 6e 67 6c 65 3c 2f 73 70 61 6e 3e | ves.a.pointer.to.a.single</span> |
| 1b740 | 0a 20 20 20 20 3c 73 70 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">/ |
| 1b760 | 2f 20 69 74 65 6d 2c 20 77 68 69 6c 65 20 75 73 69 6e 67 20 74 68 65 20 60 70 74 72 60 20 66 69 | /.item,.while.using.the.`ptr`.fi |
| 1b780 | 65 6c 64 20 67 69 76 65 73 20 61 6e 20 75 6e 6b 6e 6f 77 6e 20 6c 65 6e 67 74 68 20 70 6f 69 6e | eld.gives.an.unknown.length.poin |
| 1b7a0 | 74 65 72 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 | ter.</span>.....assert(<span.cla |
| 1b7c0 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 | ss="tok-builtin">@typeOf</span>( |
| 1b7e0 | 73 6c 69 63 65 2e 70 74 72 29 20 3d 3d 20 5b 2a 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | slice.ptr).==.[*]<span.class="to |
| 1b800 | 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 61 73 73 65 72 74 28 | k-type">i32</span>);.....assert( |
| 1b820 | 3c 73 70 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 4f | <span.class="tok-builtin">@typeO |
| 1b840 | 66 3c 2f 73 70 61 6e 3e 28 26 61 6d 70 3b 73 6c 69 63 65 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d | f</span>(&slice[<span.class= |
| 1b860 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 29 20 3d 3d 20 2a 3c 73 70 61 | "tok-number">0</span>]).==.*<spa |
| 1b880 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 3b 0a | n.class="tok-type">i32</span>);. |
| 1b8a0 | 20 20 20 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | ....assert(<span.class="tok-buil |
| 1b8c0 | 74 69 6e 22 3e 40 70 74 72 54 6f 49 6e 74 3c 2f 73 70 61 6e 3e 28 73 6c 69 63 65 2e 70 74 72 29 | tin">@ptrToInt</span>(slice.ptr) |
| 1b8e0 | 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 | .==.<span.class="tok-builtin">@p |
| 1b900 | 74 72 54 6f 49 6e 74 3c 2f 73 70 61 6e 3e 28 26 61 6d 70 3b 73 6c 69 63 65 5b 3c 73 70 61 6e 20 | trToInt</span>(&slice[<span. |
| 1b920 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 29 29 3b 0a | class="tok-number">0</span>]));. |
| 1b940 | 0a 20 20 20 20 3c 73 70 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">/ |
| 1b960 | 2f 20 53 6c 69 63 65 73 20 68 61 76 65 20 61 72 72 61 79 20 62 6f 75 6e 64 73 20 63 68 65 63 6b | /.Slices.have.array.bounds.check |
| 1b980 | 69 6e 67 2e 20 49 66 20 79 6f 75 20 74 72 79 20 74 6f 20 61 63 63 65 73 73 20 73 6f 6d 65 74 68 | ing..If.you.try.to.access.someth |
| 1b9a0 | 69 6e 67 20 6f 75 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ing.out</span>.....<span.class=" |
| 1b9c0 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6f 66 20 62 6f 75 6e 64 73 2c 20 79 6f 75 27 6c | tok-comment">//.of.bounds,.you'l |
| 1b9e0 | 6c 20 67 65 74 20 61 20 73 61 66 65 74 79 20 63 68 65 63 6b 20 66 61 69 6c 75 72 65 3a 3c 2f 73 | l.get.a.safety.check.failure:</s |
| 1ba00 | 70 61 6e 3e 0a 20 20 20 20 73 6c 69 63 65 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | pan>.....slice[<span.class="tok- |
| 1ba20 | 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 5d 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | number">10</span>].+=.<span.clas |
| 1ba40 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 | s="tok-number">1</span>;......<s |
| 1ba60 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4e 6f 74 65 20 | pan.class="tok-comment">//.Note. |
| 1ba80 | 74 68 61 74 20 60 73 6c 69 63 65 2e 70 74 72 60 20 64 6f 65 73 20 6e 6f 74 20 69 6e 76 6f 6b 65 | that.`slice.ptr`.does.not.invoke |
| 1baa0 | 20 73 61 66 65 74 79 20 63 68 65 63 6b 69 6e 67 2c 20 77 68 69 6c 65 20 60 26 61 6d 70 3b 73 6c | .safety.checking,.while.`&sl |
| 1bac0 | 69 63 65 5b 30 5d 60 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ice[0]`</span>.....<span.class=" |
| 1bae0 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 61 73 73 65 72 74 73 20 74 68 61 74 20 74 68 65 | tok-comment">//.asserts.that.the |
| 1bb00 | 20 73 6c 69 63 65 20 68 61 73 20 6c 65 6e 20 26 67 74 3b 3d 20 31 2e 3c 2f 73 70 61 6e 3e 0a 7d | .slice.has.len.>=.1.</span>.} |
| 1bb20 | 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 |
| 1bb40 | 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 31 | hell">$.zig.test.test.zig.Test.1 |
| 1bb60 | 2f 31 20 62 61 73 69 63 20 73 6c 69 63 65 73 2e 2e 2e 69 6e 64 65 78 20 6f 75 74 20 6f 66 20 62 | /1.basic.slices...index.out.of.b |
| 1bb80 | 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 68 6f 6d 65 2f | ounds.<span.class="t37_1">/home/ |
| 1bba0 | 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 | andy/dev/zig/docgen_tmp/test.zig |
| 1bbc0 | 3a 32 31 3a 31 30 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 | :21:10</span>:.<span.class="t2_0 |
| 1bbe0 | 22 3e 30 78 32 30 35 31 35 36 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a | ">0x205156.in.???.(test)</span>. |
| 1bc00 | 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 20 20 3c 73 70 | ....slice[10].+=.1;..........<sp |
| 1bc20 | 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. |
| 1bc40 | 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 64 65 76 2f 7a 69 67 | class="t37_1">/home/andy/dev/zig |
| 1bc60 | 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 74 65 73 74 5f | /build/lib/zig/std/special/test_ |
| 1bc80 | 72 75 6e 6e 65 72 2e 7a 69 67 3a 31 33 3a 32 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 | runner.zig:13:25</span>:.<span.c |
| 1bca0 | 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 61 38 61 20 69 6e 20 3f 3f 3f 20 28 74 65 73 | lass="t2_0">0x222a8a.in.???.(tes |
| 1bcc0 | 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 69 66 20 28 74 65 73 74 5f 66 6e 2e 66 75 | t)</span>.........if.(test_fn.fu |
| 1bce0 | 6e 63 28 29 29 20 7c 5f 7c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | nc()).|_|.{..................... |
| 1bd00 | 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> |
| 1bd20 | 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/ |
| 1bd40 | 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 | dev/zig/build/lib/zig/std/specia |
| 1bd60 | 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 39 36 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 | l/bootstrap.zig:96:22</span>:.<s |
| 1bd80 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 38 33 62 20 69 6e 20 3f 3f 3f | pan.class="t2_0">0x22283b.in.??? |
| 1bda0 | 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 6f 74 2e | .(test)</span>.............root. |
| 1bdc0 | 6d 61 69 6e 28 29 20 63 61 74 63 68 20 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 | main().catch.|err|.{............ |
| 1bde0 | 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">^< |
| 1be00 | 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 |
| 1be20 | 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f | /andy/dev/zig/build/lib/zig/std/ |
| 1be40 | 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 37 30 3a 32 30 3c 2f 73 70 61 | special/bootstrap.zig:70:20</spa |
| 1be60 | 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 37 62 35 20 | n>:.<span.class="t2_0">0x2227b5. |
| 1be80 | 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 | in.???.(test)</span>.....return. |
| 1bea0 | 63 61 6c 6c 4d 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 3c | callMain();....................< |
| 1bec0 | 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 |
| 1bee0 | 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 64 65 76 2f 7a | n.class="t37_1">/home/andy/dev/z |
| 1bf00 | 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f | ig/build/lib/zig/std/special/boo |
| 1bf20 | 74 73 74 72 61 70 2e 7a 69 67 3a 36 34 3a 33 39 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 | tstrap.zig:64:39</span>:.<span.c |
| 1bf40 | 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 36 31 38 20 69 6e 20 3f 3f 3f 20 28 74 65 73 | lass="t2_0">0x222618.in.???.(tes |
| 1bf60 | 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 74 64 2e 6f 73 2e 70 6f 73 69 78 2e 65 78 69 74 28 | t)</span>.....std.os.posix.exit( |
| 1bf80 | 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 28 61 72 67 63 2c 20 61 72 67 76 2c 20 65 6e 76 | callMainWithArgs(argc,.argv,.env |
| 1bfa0 | 70 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 | p));............................ |
| 1bfc0 | 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">^ |
| 1bfe0 | 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 |
| 1c000 | 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 | e/andy/dev/zig/build/lib/zig/std |
| 1c020 | 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 33 37 3a 35 3c 2f 73 70 61 | /special/bootstrap.zig:37:5</spa |
| 1c040 | 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 34 64 30 20 | n>:.<span.class="t2_0">0x2224d0. |
| 1c060 | 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 6e 6f 49 6e 6c 69 | in.???.(test)</span>.....@noInli |
| 1c080 | 6e 65 43 61 6c 6c 28 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 29 3b 0a 20 20 | neCall(posixCallMainAndExit);... |
| 1c0a0 | 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 0a | ..<span.class="t32_1">^</span>.. |
| 1c0c0 | 54 65 73 74 73 20 66 61 69 6c 65 64 2e 20 55 73 65 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 | Tests.failed..Use.the.following. |
| 1c0e0 | 63 6f 6d 6d 61 6e 64 20 74 6f 20 72 65 70 72 6f 64 75 63 65 20 74 68 65 20 66 61 69 6c 75 72 65 | command.to.reproduce.the.failure |
| 1c100 | 3a 0a 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f | :./home/andy/dev/zig/docgen_tmp/ |
| 1c120 | 74 65 73 74 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 68 69 | test.</code></pre>........<p>Thi |
| 1c140 | 73 20 69 73 20 6f 6e 65 20 72 65 61 73 6f 6e 20 77 65 20 70 72 65 66 65 72 20 73 6c 69 63 65 73 | s.is.one.reason.we.prefer.slices |
| 1c160 | 20 74 6f 20 70 6f 69 6e 74 65 72 73 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 | .to.pointers.</p>.......<p.class |
| 1c180 | 3d 22 66 69 6c 65 22 3e 73 6c 69 63 65 73 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 | ="file">slices.zig</p><pre><code |
| 1c1a0 | 20 63 6c 61 73 73 3d 22 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 |
| 1c1c0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 3c 73 70 61 6e 20 63 6c | ">const</span>.assert.=.<span.cl |
| 1c1e0 | 61 73 73 3d 22 74 6f 6b 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> |
| 1c200 | 28 3c 73 70 61 6e 20 63 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 |
| 1c220 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 3c 73 70 | "</span>).debug.assert;.<sp |
| 1c240 | 61 6e 20 63 6c 61 73 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 |
| 1c260 | 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">@ |
| 1c280 | 69 6d 70 6f 72 74 3c 2f 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 |
| 1c2a0 | 74 72 22 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; |
| 1c2c0 | 0a 3c 73 70 61 6e 20 63 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 |
| 1c2e0 | 6e 3e 20 66 6d 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | n>.fmt.=.<span.class="tok-builti |
| 1c300 | 6e 22 3e 40 69 6d 70 6f 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 |
| 1c320 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e | ok-str">"std"</span>). |
| 1c340 | 66 6d 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c | fmt;..<span.class="tok-kw">test< |
| 1c360 | 2f 73 70 61 6e 3e 20 3c 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 |
| 1c380 | 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 74 | ot;using.slices.for.strings" |
| 1c3a0 | 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- |
| 1c3c0 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 5a 69 67 20 68 61 73 20 6e 6f 20 63 6f 6e 63 65 70 74 20 6f | comment">//.Zig.has.no.concept.o |
| 1c3e0 | 66 20 73 74 72 69 6e 67 73 2e 20 53 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 73 20 61 72 65 20 61 | f.strings..String.literals.are.a |
| 1c400 | 72 72 61 79 73 20 6f 66 20 75 38 2c 20 61 6e 64 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 | rrays.of.u8,.and</span>.....<spa |
| 1c420 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 69 6e 20 67 65 6e 65 | n.class="tok-comment">//.in.gene |
| 1c440 | 72 61 6c 20 74 68 65 20 73 74 72 69 6e 67 20 74 79 70 65 20 69 73 20 5b 5d 75 38 20 28 73 6c 69 | ral.the.string.type.is.[]u8.(sli |
| 1c460 | 63 65 20 6f 66 20 75 38 29 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ce.of.u8).</span>.....<span.clas |
| 1c480 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 48 65 72 65 20 77 65 20 69 6d 70 6c 69 | s="tok-comment">//.Here.we.impli |
| 1c4a0 | 63 69 74 6c 79 20 63 61 73 74 20 5b 35 5d 75 38 20 74 6f 20 5b 5d 63 6f 6e 73 74 20 75 38 3c 2f | citly.cast.[5]u8.to.[]const.u8</ |
| 1c4c0 | 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 |
| 1c4e0 | 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 73 | onst</span>.hello:.[]<span.class |
| 1c500 | 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 |
| 1c520 | 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. |
| 1c540 | 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" |
| 1c560 | 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 |
| 1c580 | 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 63 | w">const</span>.world:.[]<span.c |
| 1c5a0 | 6c 61 73 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 |
| 1c5c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 | .class="tok-type">u8</span>.=.<s |
| 1c5e0 | 70 61 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 8c | pan.class="tok-str">"...... |
| 1c600 | 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 3d | "</span>;......<span.class= |
| 1c620 | 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 72 | "tok-kw">var</span>.all_together |
| 1c640 | 3a 20 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 30 3c | :.[<span.class="tok-number">100< |
| 1c660 | 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 |
| 1c680 | 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 | </span>.=.<span.class="tok-null" |
| 1c6a0 | 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 61 | >undefined</span>;.....<span.cla |
| 1c6c0 | 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 20 | ss="tok-comment">//.You.can.use. |
| 1c6e0 | 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 76 | slice.syntax.on.an.array.to.conv |
| 1c700 | 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 6e | ert.an.array.into.a.slice.</span |
| 1c720 | 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 | >.....<span.class="tok-kw">const |
| 1c740 | 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 6c | </span>.all_together_slice.=.all |
| 1c760 | 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 65 | _together[<span.class="tok-numbe |
| 1c780 | 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 3d | r">0</span>..];.....<span.class= |
| 1c7a0 | 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 6e | "tok-comment">//.String.concaten |
| 1c7c0 | 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 20 | ation.example.</span>.....<span. |
| 1c7e0 | 63 6c 61 73 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 | class="tok-kw">const</span>.hell |
| 1c800 | 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 74 | o_world.=.<span.class="tok-kw">t |
| 1c820 | 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 74 | ry</span>.fmt.bufPrint(all_toget |
| 1c840 | 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 22 | her_slice,.<span.class="tok-str" |
| 1c860 | 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 68 65 6c 6c 6f | >"{}.{}"</span>,.hello |
| 1c880 | 2c 20 77 6f 72 6c 64 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 | ,.world);......<span.class="tok- |
| 1c8a0 | 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 20 63 61 6e 20 75 | comment">//.Generally,.you.can.u |
| 1c8c0 | 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 75 74 20 77 68 65 | se.UTF-8.and.not.worry.about.whe |
| 1c8e0 | 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 0a 20 20 20 20 3c | ther.something.is.a</span>.....< |
| 1c900 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 73 74 72 69 | span.class="tok-comment">//.stri |
| 1c920 | 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 65 61 6c 20 77 69 | ng..If.you.don't.need.to.deal.wi |
| 1c940 | 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 6e 6f 20 6e 65 65 | th.individual.characters,.no.nee |
| 1c960 | 64 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f | d</span>.....<span.class="tok-co |
| 1c980 | 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 3e 0a 20 20 20 20 | mment">//.to.decode.</span>..... |
| 1c9a0 | 61 73 73 65 72 74 28 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | assert(mem.eql(<span.class="tok- |
| 1c9c0 | 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 6c 64 2c 20 3c 73 | type">u8</span>,.hello_world,.<s |
| 1c9e0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f 20 | pan.class="tok-str">"hello. |
| 1ca00 | 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 3c 73 70 61 6e 20 | ......"</span>));.}..<span. |
| 1ca20 | 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 |
| 1ca40 | 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 63 65 20 70 6f 69 | .class="tok-str">"slice.poi |
| 1ca60 | 6e 74 65 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | nter"</span>.{.....<span.cl |
| 1ca80 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 72 72 61 79 3a 20 5b | ass="tok-kw">var</span>.array:.[ |
| 1caa0 | 3c 73 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 |
| 1cac0 | 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 | n>]<span.class="tok-type">u8</sp |
| 1cae0 | 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 | an>.=.<span.class="tok-null">und |
| 1cb00 | 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 22 | efined</span>;.....<span.class=" |
| 1cb20 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 74 72 20 3d 20 26 61 6d 70 3b | tok-kw">const</span>.ptr.=.& |
| 1cb40 | 61 72 72 61 79 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d | array;......<span.class="tok-com |
| 1cb60 | 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 6e 67 20 73 79 6e | ment">//.You.can.use.slicing.syn |
| 1cb80 | 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 6e 74 6f 20 61 20 | tax.to.convert.a.pointer.into.a. |
| 1cba0 | 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 61 73 73 3d 22 74 | slice:</span>.....<span.class="t |
| 1cbc0 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 6c 69 63 65 20 3d 20 70 74 72 5b | ok-kw">const</span>.slice.=.ptr[ |
| 1cbe0 | 3c 73 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 |
| 1cc00 | 3e 2e 2e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 | >..<span.class="tok-number">5</s |
| 1cc20 | 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 73 73 3d 22 74 6f | pan>];.....slice[<span.class="to |
| 1cc40 | 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 6e 20 63 6c 61 73 | k-number">2</span>].=.<span.clas |
| 1cc60 | 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 61 73 73 | s="tok-number">3</span>;.....ass |
| 1cc80 | 65 72 74 28 73 6c 69 63 65 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | ert(slice[<span.class="tok-numbe |
| 1cca0 | 72 22 3e 32 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | r">2</span>].==.<span.class="tok |
| 1ccc0 | 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | -number">3</span>);.....<span.cl |
| 1cce0 | 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 6c 69 63 65 20 69 | ass="tok-comment">//.The.slice.i |
| 1cd00 | 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 64 20 61 20 6d 75 | s.mutable.because.we.sliced.a.mu |
| 1cd20 | 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 61 73 73 65 72 74 | table.pointer.</span>.....assert |
| 1cd40 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 | (<span.class="tok-builtin">@type |
| 1cd60 | 4f 66 3c 2f 73 70 61 6e 3e 28 73 6c 69 63 65 29 20 3d 3d 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 | Of</span>(slice).==.[]<span.clas |
| 1cd80 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 | s="tok-type">u8</span>);......<s |
| 1cda0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 59 6f 75 20 63 | pan.class="tok-comment">//.You.c |
| 1cdc0 | 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 6e 3e 0a 20 20 | an.also.slice.a.slice:</span>... |
| 1cde0 | 20 20 3c 73 70 61 6e 20 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 |
| 1ce00 | 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 61 73 73 3d 22 | an>.slice2.=.slice[<span.class=" |
| 1ce20 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2e 2e 3c 73 70 61 6e 20 63 6c 61 73 | tok-number">2</span>..<span.clas |
| 1ce40 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 5d 3b 0a 20 20 20 20 61 73 | s="tok-number">3</span>];.....as |
| 1ce60 | 73 65 72 74 28 73 6c 69 63 65 32 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | sert(slice2.len.==.<span.class=" |
| 1ce80 | 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 61 73 73 65 72 | tok-number">1</span>);.....asser |
| 1cea0 | 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 75 6d 62 65 72 | t(slice2[<span.class="tok-number |
| 1cec0 | 22 3e 30 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ">0</span>].==.<span.class="tok- |
| 1cee0 | 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | number">3</span>);.}..<span.clas |
| 1cf00 | 73 3d 22 74 6f 6b 2d 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 |
| 1cf20 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 6c 69 63 65 20 77 69 64 65 6e 69 6e | ss="tok-str">"slice.widenin |
| 1cf40 | 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 73 | g"</span>.{.....<span.class |
| 1cf60 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 5a 69 67 20 73 75 70 70 6f 72 74 73 20 73 | ="tok-comment">//.Zig.supports.s |
| 1cf80 | 6c 69 63 65 20 77 69 64 65 6e 69 6e 67 20 61 6e 64 20 73 6c 69 63 65 20 6e 61 72 72 6f 77 69 6e | lice.widening.and.slice.narrowin |
| 1cfa0 | 67 2e 20 43 61 73 74 20 61 20 73 6c 69 63 65 20 6f 66 20 75 38 3c 2f 73 70 61 6e 3e 0a 20 20 20 | g..Cast.a.slice.of.u8</span>.... |
| 1cfc0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 6f | .<span.class="tok-comment">//.to |
| 1cfe0 | 20 61 20 73 6c 69 63 65 20 6f 66 20 61 6e 79 74 68 69 6e 67 20 65 6c 73 65 2c 20 61 6e 64 20 5a | .a.slice.of.anything.else,.and.Z |
| 1d000 | 69 67 20 77 69 6c 6c 20 70 65 72 66 6f 72 6d 20 74 68 65 20 6c 65 6e 67 74 68 20 63 6f 6e 76 65 | ig.will.perform.the.length.conve |
| 1d020 | 72 73 69 6f 6e 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | rsion.</span>.....<span.class="t |
| 1d040 | 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 3c 73 70 61 6e 20 | ok-kw">const</span>.array.<span. |
| 1d060 | 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 |
| 1d080 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 6c 69 67 6e 4f 66 3c 2f | n.class="tok-builtin">@alignOf</ |
| 1d0a0 | 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 | span>(<span.class="tok-type">u32 |
| 1d0c0 | 3c 2f 73 70 61 6e 3e 29 29 20 3d 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | </span>)).=.[]<span.class="tok-t |
| 1d0e0 | 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ype">u8</span>{.<span.class="tok |
| 1d100 | 2d 6e 75 6d 62 65 72 22 3e 30 78 31 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | -number">0x12</span>,.<span.clas |
| 1d120 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 | s="tok-number">0x12</span>,.<spa |
| 1d140 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 32 3c 2f 73 70 61 6e 3e | n.class="tok-number">0x12</span> |
| 1d160 | 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 32 3c | ,.<span.class="tok-number">0x12< |
| 1d180 | 2f 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" |
| 1d1a0 | 3e 30 78 31 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 | >0x13</span>,.<span.class="tok-n |
| 1d1c0 | 75 6d 62 65 72 22 3e 30 78 31 33 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | umber">0x13</span>,.<span.class= |
| 1d1e0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 33 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 | "tok-number">0x13</span>,.<span. |
| 1d200 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 33 3c 2f 73 70 61 6e 3e 20 7d | class="tok-number">0x13</span>.} |
| 1d220 | 3b 0a 20 20 20 20 3c 73 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 |
| 1d240 | 3c 2f 73 70 61 6e 3e 20 73 6c 69 63 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | </span>.slice.=.<span.class="tok |
| 1d260 | 2d 62 75 69 6c 74 69 6e 22 3e 40 62 79 74 65 73 54 6f 53 6c 69 63 65 3c 2f 73 70 61 6e 3e 28 3c | -builtin">@bytesToSlice</span>(< |
| 1d280 | 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> |
| 1d2a0 | 2c 20 61 72 72 61 79 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | ,.array[<span.class="tok-number" |
| 1d2c0 | 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 5d 29 3b 0a 20 20 20 20 61 73 73 65 72 74 28 73 6c 69 63 65 2e | >0</span>..]);.....assert(slice. |
| 1d2e0 | 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"> |
| 1d300 | 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 61 73 73 65 72 74 28 73 6c 69 63 65 5b 3c 73 70 61 | 2</span>);.....assert(slice[<spa |
| 1d320 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 20 3d | n.class="tok-number">0</span>].= |
| 1d340 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 32 31 | =.<span.class="tok-number">0x121 |
| 1d360 | 32 31 32 31 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 61 73 73 65 72 74 28 73 6c 69 63 65 5b | 21212</span>);.....assert(slice[ |
| 1d380 | 3c 73 70 61 6e 20 63 6c 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 |
| 1d3a0 | 3e 5d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 | >].==.<span.class="tok-number">0 |
| 1d3c0 | 78 31 33 31 33 31 33 31 33 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | x13131313</span>);.}</code></pre |
| 1d3e0 | 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. |
| 1d400 | 74 65 73 74 20 73 6c 69 63 65 73 2e 7a 69 67 0a 54 65 73 74 20 31 2f 33 20 75 73 69 6e 67 20 73 | test.slices.zig.Test.1/3.using.s |
| 1d420 | 6c 69 63 65 73 20 66 6f 72 20 73 74 72 69 6e 67 73 2e 2e 2e 4f 4b 0a 54 65 73 74 20 32 2f 33 20 | lices.for.strings...OK.Test.2/3. |
| 1d440 | 73 6c 69 63 65 20 70 6f 69 6e 74 65 72 2e 2e 2e 4f 4b 0a 54 65 73 74 20 33 2f 33 20 73 6c 69 63 | slice.pointer...OK.Test.3/3.slic |
| 1d460 | 65 20 77 69 64 65 6e 69 6e 67 2e 2e 2e 4f 4b 0a 41 6c 6c 20 74 65 73 74 73 20 70 61 73 73 65 64 | e.widening...OK.All.tests.passed |
| 1d480 | 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 |
| 1d4a0 | 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 50 6f 69 6e 74 65 | so:</p><ul>.<li><a.href="#Pointe |
| 1d4c0 | 72 73 22 3e 50 6f 69 6e 74 65 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 | rs">Pointers</a></li>.<li><a.hre |
| 1d4e0 | 66 3d 22 23 66 6f 72 22 3e 66 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 | f="#for">for</a></li>.<li><a.hre |
| 1d500 | 66 3d 22 23 41 72 72 61 79 73 22 3e 41 72 72 61 79 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c | f="#Arrays">Arrays</a></li>.</ul |
| 1d520 | 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 73 74 72 75 63 74 22 3e | >...............<h1.id="struct"> |
| 1d540 | 73 74 72 75 63 74 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 | struct</h1>........<p.class="fil |
| 1d560 | 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 |
| 1d580 | 73 73 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 |
| 1d5a0 | 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>.< |
| 1d5c0 | 73 70 61 6e 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. |
| 1d5e0 | 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 |
| 1d600 | 64 65 72 20 6f 66 20 66 69 65 6c 64 73 20 61 6e 64 20 77 68 65 74 68 65 72 20 6f 72 3c 2f 73 70 | der.of.fields.and.whether.or</sp |
| 1d620 | 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">// |
| 1d640 | 20 6e 6f 74 20 74 68 65 72 65 20 77 69 6c 6c 20 62 65 20 70 61 64 64 69 6e 67 2e 3c 2f 73 70 61 | .not.there.will.be.padding.</spa |
| 1d660 | 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 |
| 1d680 | 70 61 6e 3e 20 50 6f 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | pan>.Point.=.<span.class="tok-kw |
| 1d6a0 | 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 78 3a 20 3c 73 70 61 6e 20 63 | ">struct</span>.{.....x:.<span.c |
| 1d6c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 | lass="tok-type">f32</span>,..... |
| 1d6e0 | 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 2f 73 | y:.<span.class="tok-type">f32</s |
| 1d700 | 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 | pan>,.};..<span.class="tok-comme |
| 1d720 | 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 74 20 | nt">//.Maybe.we.want.to.pass.it. |
| 1d740 | 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 74 69 | to.OpenGL.so.we.want.to.be.parti |
| 1d760 | 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 3d 22 | cular.about</span>.<span.class=" |
| 1d780 | 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 61 72 | tok-comment">//.how.the.bytes.ar |
| 1d7a0 | 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 3d 22 | e.arranged.</span>.<span.class=" |
| 1d7c0 | 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 3c 73 | tok-kw">const</span>.Point2.=.<s |
| 1d7e0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 61 63 6b 65 64 3c 2f 73 70 61 6e 3e | pan.class="tok-kw">packed</span> |
| 1d800 | 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 |
| 1d820 | 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 74 79 | an>.{.....x:.<span.class="tok-ty |
| 1d840 | 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 6c 61 | pe">f32</span>,.....y:.<span.cla |
| 1d860 | 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 0a 3c | ss="tok-type">f32</span>,.};...< |
| 1d880 | 73 70 61 6e 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 |
| 1d8a0 | 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 73 70 | are.an.instance.of.a.struct.</sp |
| 1d8c0 | 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | an>.<span.class="tok-kw">const</ |
| 1d8e0 | 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 61 6e | span>.p.=.Point.{......x.=.<span |
| 1d900 | 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 3e 2c | .class="tok-number">0.12</span>, |
| 1d920 | 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 62 65 | ......y.=.<span.class="tok-numbe |
| 1d940 | 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 73 3d | r">0.34</span>,.};..<span.class= |
| 1d960 | 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 6f 74 | "tok-comment">//.Maybe.we're.not |
| 1d980 | 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 20 66 | .ready.to.fill.out.some.of.the.f |
| 1d9a0 | 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 2d 6b | ields.</span>.<span.class="tok-k |
| 1d9c0 | 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 20 2e | w">var</span>.p2.=.Point.{...... |
| 1d9e0 | 78 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 31 | x.=.<span.class="tok-number">0.1 |
| 1da00 | 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 2e 79 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | 2</span>,......y.=.<span.class=" |
| 1da20 | 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 0a 0a | tok-null">undefined</span>,.};.. |
| 1da40 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 74 72 | <span.class="tok-comment">//.Str |
| 1da60 | 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 73 70 | ucts.can.have.methods</span>.<sp |
| 1da80 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 74 72 75 63 74 | an.class="tok-comment">//.Struct |
| 1daa0 | 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 20 61 | .methods.are.not.special,.they.a |
| 1dac0 | 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 6e 20 | re.only.namespaced</span>.<span. |
| 1dae0 | 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 6e 73 | class="tok-comment">//.functions |
| 1db00 | 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 6e 74 | .that.you.can.call.with.dot.synt |
| 1db20 | 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 22 3e | ax.</span>.<span.class="tok-kw"> |
| 1db40 | 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 73 3d | const</span>.Vec3.=.<span.class= |
| 1db60 | 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 78 3a 20 | "tok-kw">struct</span>.{.....x:. |
| 1db80 | 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 |
| 1dba0 | 3e 2c 0a 20 20 20 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | >,.....y:.<span.class="tok-type" |
| 1dbc0 | 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 73 3d | >f32</span>,.....z:.<span.class= |
| 1dbe0 | 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 0a 0a 20 20 20 20 3c 73 70 61 | "tok-type">f32</span>,......<spa |
| 1dc00 | 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 |
| 1dc20 | 6e 20 63 6c 61 73 73 3d 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 |
| 1dc40 | 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 20 3c | .class="tok-fn">init</span>(x:.< |
| 1dc60 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e | span.class="tok-type">f32</span> |
| 1dc80 | 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 32 3c | ,.y:.<span.class="tok-type">f32< |
| 1dca0 | 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 70 65 | /span>,.z:.<span.class="tok-type |
| 1dcc0 | 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 73 70 | ">f32</span>).Vec3.{.........<sp |
| 1dce0 | 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>. |
| 1dd00 | 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 20 20 | Vec3.{..............x.=.x,...... |
| 1dd20 | 20 20 20 20 20 20 20 2e 79 20 3d 20 79 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 2e 7a 20 3d 20 | ........y.=.y,..............z.=. |
| 1dd40 | 7a 2c 0a 20 20 20 20 20 20 20 20 7d 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 | z,.........};.....}......<span.c |
| 1dd60 | 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 |
| 1dd80 | 6c 61 73 73 3d 22 74 6f 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 |
| 1dda0 | 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 2a 3c | ass="tok-fn">dot</span>(self:.*< |
| 1ddc0 | 73 70 61 6e 20 63 6c 61 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> |
| 1dde0 | 20 56 65 63 33 2c 20 6f 74 68 65 72 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .Vec3,.other:.*<span.class="tok- |
| 1de00 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 56 65 63 33 29 20 3c 73 70 61 6e 20 63 6c 61 | kw">const</span>.Vec3).<span.cla |
| 1de20 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 | ss="tok-type">f32</span>.{...... |
| 1de40 | 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</ |
| 1de60 | 73 70 61 6e 3e 20 73 65 6c 66 2e 78 20 2a 20 6f 74 68 65 72 2e 78 20 2b 20 73 65 6c 66 2e 79 20 | span>.self.x.*.other.x.+.self.y. |
| 1de80 | 2a 20 6f 74 68 65 72 2e 79 20 2b 20 73 65 6c 66 2e 7a 20 2a 20 6f 74 68 65 72 2e 7a 3b 0a 20 20 | *.other.y.+.self.z.*.other.z;... |
| 1dea0 | 20 20 7d 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | ..}.};..<span.class="tok-kw">con |
| 1dec0 | 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | st</span>.assert.=.<span.class=" |
| 1dee0 | 74 6f 6b 2d 62 75 69 6c 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 |
| 1df00 | 6e 20 63 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" |
| 1df20 | 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 3c 73 70 61 6e 20 63 6c | ;</span>).debug.assert;.<span.cl |
| 1df40 | 61 73 73 3d 22 74 6f 6b 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 |
| 1df60 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 64 6f 74 20 70 72 6f 64 75 63 74 | lass="tok-str">"dot.product |
| 1df80 | 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= |
| 1dfa0 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 76 31 20 3d 20 56 65 63 33 2e | "tok-kw">const</span>.v1.=.Vec3. |
| 1dfc0 | 69 6e 69 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 2e | init(<span.class="tok-number">1. |
| 1dfe0 | 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | 0</span>,.<span.class="tok-numbe |
| 1e000 | 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- |
| 1e020 | 6e 75 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | number">0.0</span>);.....<span.c |
| 1e040 | 6c 61 73 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 | lass="tok-kw">const</span>.v2.=. |
| 1e060 | 56 65 63 33 2e 69 6e 69 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | Vec3.init(<span.class="tok-numbe |
| 1e080 | 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- |
| 1e0a0 | 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= |
| 1e0c0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 61 73 | "tok-number">0.0</span>);.....as |
| 1e0e0 | 73 65 72 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 | sert(v1.dot(v2).==.<span.class=" |
| 1e100 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 | tok-number">0.0</span>);......<s |
| 1e120 | 70 61 6e 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 | pan.class="tok-comment">//.Other |
| 1e140 | 20 74 68 61 6e 20 62 65 69 6e 67 20 61 76 61 69 6c 61 62 6c 65 20 74 6f 20 63 61 6c 6c 20 77 69 | .than.being.available.to.call.wi |
| 1e160 | 74 68 20 64 6f 74 20 73 79 6e 74 61 78 2c 20 73 74 72 75 63 74 20 6d 65 74 68 6f 64 73 20 61 72 | th.dot.syntax,.struct.methods.ar |
| 1e180 | 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 |
| 1e1a0 | 6d 6d 65 6e 74 22 3e 2f 2f 20 6e 6f 74 20 73 70 65 63 69 61 6c 2e 20 59 6f 75 20 63 61 6e 20 72 | mment">//.not.special..You.can.r |
| 1e1c0 | 65 66 65 72 65 6e 63 65 20 74 68 65 6d 20 61 73 20 61 6e 79 20 6f 74 68 65 72 20 64 65 63 6c 61 | eference.them.as.any.other.decla |
| 1e1e0 | 72 61 74 69 6f 6e 20 69 6e 73 69 64 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 | ration.inside</span>.....<span.c |
| 1e200 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 68 65 20 73 74 72 75 63 74 | lass="tok-comment">//.the.struct |
| 1e220 | 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 73 65 72 74 28 56 65 63 33 2e 64 6f 74 28 76 31 2c | :</span>.....assert(Vec3.dot(v1, |
| 1e240 | 20 76 32 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | .v2).==.<span.class="tok-number" |
| 1e260 | 3e 30 2e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >0.0</span>);.}..<span.class="to |
| 1e280 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 74 72 75 63 74 73 20 63 61 6e 20 68 61 76 65 20 67 | k-comment">//.Structs.can.have.g |
| 1e2a0 | 6c 6f 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 | lobal.declarations.</span>.<span |
| 1e2c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 74 72 75 63 74 73 20 | .class="tok-comment">//.Structs. |
| 1e2e0 | 63 61 6e 20 68 61 76 65 20 30 20 66 69 65 6c 64 73 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 | can.have.0.fields.</span>.<span. |
| 1e300 | 63 6c 61 73 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 | class="tok-kw">const</span>.Empt |
| 1e320 | 79 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c | y.=.<span.class="tok-kw">struct< |
| 1e340 | 2f 73 70 61 6e 3e 20 7b 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 |
| 1e360 | 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 |
| 1e380 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 50 49 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ">const</span>.PI.=.<span.class= |
| 1e3a0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 2e 31 34 3c 2f 73 70 61 6e 3e 3b 0a 7d 3b 0a 3c 73 70 | "tok-number">3.14</span>;.};.<sp |
| 1e3c0 | 61 6e 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 |
| 1e3e0 | 70 61 6e 20 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 | pan.class="tok-str">"struct |
| 1e400 | 20 6e 61 6d 65 73 70 61 63 65 64 20 76 61 72 69 61 62 6c 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | .namespaced.variable"</span |
| 1e420 | 3e 20 7b 0a 20 20 20 20 61 73 73 65 72 74 28 45 6d 70 74 79 2e 50 49 20 3d 3d 20 3c 73 70 61 6e | >.{.....assert(Empty.PI.==.<span |
| 1e440 | 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 29 | .class="tok-number">3.14</span>) |
| 1e460 | 3b 0a 20 20 20 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | ;.....assert(<span.class="tok-bu |
| 1e480 | 69 6c 74 69 6e 22 3e 40 73 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 45 6d 70 74 79 29 20 3d 3d 20 | iltin">@sizeOf</span>(Empty).==. |
| 1e4a0 | 3c 73 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 |
| 1e4c0 | 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e | >);......<span.class="tok-commen |
| 1e4e0 | 74 22 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 | t">//.you.can.still.instantiate. |
| 1e500 | 61 6e 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 | an.empty.struct</span>.....<span |
| 1e520 | 20 63 6c 61 73 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 | .class="tok-kw">const</span>.doe |
| 1e540 | 73 5f 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 | s_nothing.=.Empty.{};.}..<span.c |
| 1e560 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 73 74 72 75 63 74 20 66 69 65 | lass="tok-comment">//.struct.fie |
| 1e580 | 6c 64 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 | ld.order.is.determined.by.the.co |
| 1e5a0 | 6d 70 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 | mpiler.for.optimal.performance.< |
| 1e5c0 | 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" |
| 1e5e0 | 3e 2f 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 | >//.however,.you.can.still.calcu |
| 1e600 | 6c 61 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 | late.a.struct.base.pointer.given |
| 1e620 | 20 61 20 66 69 65 6c 64 20 70 6f 69 6e 74 65 72 3a 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 | .a.field.pointer:</span>.<span.c |
| 1e640 | 6c 61 73 73 3d 22 74 6f 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 |
| 1e660 | 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 73 65 74 59 42 61 73 65 64 4f 6e 58 3c 2f 73 70 61 6e 3e | ass="tok-fn">setYBasedOnX</span> |
| 1e680 | 28 78 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c | (x:.*<span.class="tok-type">f32< |
| 1e6a0 | 2f 73 70 61 6e 3e 2c 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | /span>,.y:.<span.class="tok-type |
| 1e6c0 | 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | ">f32</span>).<span.class="tok-t |
| 1e6e0 | 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 |
| 1e700 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 6f 69 6e 74 20 3d | ss="tok-kw">const</span>.point.= |
| 1e720 | 20 3c 73 70 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 | .<span.class="tok-builtin">@fiel |
| 1e740 | 64 50 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 | dParentPtr</span>(Point,.<span.c |
| 1e760 | 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 |
| 1e780 | 61 6e 3e 2c 20 78 29 3b 0a 20 20 20 20 70 6f 69 6e 74 2e 79 20 3d 20 79 3b 0a 7d 0a 3c 73 70 61 | an>,.x);.....point.y.=.y;.}.<spa |
| 1e7a0 | 6e 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 |
| 1e7c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 69 65 6c 64 20 70 | an.class="tok-str">"field.p |
| 1e7e0 | 61 72 65 6e 74 20 70 6f 69 6e 74 65 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | arent.pointer"</span>.{.... |
| 1e800 | 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> |
| 1e820 | 20 70 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 | .point.=.Point.{..........x.=.<s |
| 1e840 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 31 32 33 34 3c 2f 73 | pan.class="tok-number">0.1234</s |
| 1e860 | 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 2e 79 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | pan>,..........y.=.<span.class=" |
| 1e880 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 35 36 37 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d | tok-number">0.5678</span>,.....} |
| 1e8a0 | 3b 0a 20 20 20 20 73 65 74 59 42 61 73 65 64 4f 6e 58 28 26 61 6d 70 3b 70 6f 69 6e 74 2e 78 2c | ;.....setYBasedOnX(&point.x, |
| 1e8c0 | 20 3c 73 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 | .<span.class="tok-number">0.9</s |
| 1e8e0 | 70 61 6e 3e 29 3b 0a 20 20 20 20 61 73 73 65 72 74 28 70 6f 69 6e 74 2e 79 20 3d 3d 20 3c 73 70 | pan>);.....assert(point.y.==.<sp |
| 1e900 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 2e 39 3c 2f 73 70 61 6e 3e | an.class="tok-number">0.9</span> |
| 1e920 | 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"> |
| 1e940 | 2f 2f 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 | //.You.can.return.a.struct.from. |
| 1e960 | 61 20 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 | a.function..This.is.how.we.do.ge |
| 1e980 | 6e 65 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 | nerics</span>.<span.class="tok-c |
| 1e9a0 | 6f 6d 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 | omment">//.in.Zig:</span>.<span. |
| 1e9c0 | 63 6c 61 73 73 3d 22 74 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 |
| 1e9e0 | 6c 61 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 | lass="tok-fn">LinkedList</span>( |
| 1ea00 | 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 |
| 1ea20 | 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 | pan>.T:.<span.class="tok-type">t |
| 1ea40 | 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | ype</span>).<span.class="tok-typ |
| 1ea60 | 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | e">type</span>.{.....<span.class |
| 1ea80 | 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 |
| 1eaa0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | ass="tok-kw">struct</span>.{.... |
| 1eac0 | 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 | .....<span.class="tok-kw">pub</s |
| 1eae0 | 70 61 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< |
| 1eb00 | 2f 73 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 | /span>.Node.=.<span.class="tok-k |
| 1eb20 | 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 20 20 20 20 70 | w">struct</span>.{.............p |
| 1eb40 | 72 65 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 | rev:.?*Node,.............next:.? |
| 1eb60 | 2a 4e 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 | *Node,.............data:.T,..... |
| 1eb80 | 20 20 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 | ....};..........first:.?*Node,.. |
| 1eba0 | 20 20 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 | .......last:..?*Node,.........le |
| 1ebc0 | 6e 3a 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 | n:...<span.class="tok-type">usiz |
| 1ebe0 | 65 3c 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 | e</span>,.....};.}..<span.class= |
| 1ec00 | 22 74 6f 6b 2d 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 |
| 1ec20 | 3d 22 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 | ="tok-str">"linked.list&quo |
| 1ec40 | 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 |
| 1ec60 | 2d 63 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 | -comment">//.Functions.called.at |
| 1ec80 | 20 63 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 | .compile-time.are.memoized..This |
| 1eca0 | 20 6d 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 | .means.you.can</span>.....<span. |
| 1ecc0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 64 6f 20 74 68 69 73 3a 3c | class="tok-comment">//.do.this:< |
| 1ece0 | 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 73 65 72 74 28 4c 69 6e 6b 65 64 4c 69 73 74 28 3c 73 70 | /span>.....assert(LinkedList(<sp |
| 1ed00 | 61 6e 20 63 6c 61 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>). |
| 1ed20 | 3d 3d 20 4c 69 6e 6b 65 64 4c 69 73 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | ==.LinkedList(<span.class="tok-t |
| 1ed40 | 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | ype">i32</span>));......<span.cl |
| 1ed60 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6c 69 73 74 20 3d 20 4c | ass="tok-kw">var</span>.list.=.L |
| 1ed80 | 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 65 22 | inkedList(<span.class="tok-type" |
| 1eda0 | 3e 69 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 | >i32</span>).{..........first.=. |
| 1edc0 | 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 |
| 1ede0 | 6e 3e 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 | n>,..........last.=.<span.class= |
| 1ee00 | 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 | "tok-null">null</span>,......... |
| 1ee20 | 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 72 22 3e | .len.=.<span.class="tok-number"> |
| 1ee40 | 30 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 20 20 20 20 61 73 73 65 72 74 28 6c 69 73 74 | 0</span>,.....};.....assert(list |
| 1ee60 | 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | .len.==.<span.class="tok-number" |
| 1ee80 | 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >0</span>);......<span.class="to |
| 1eea0 | 6b 2d 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 | k-comment">//.Since.types.are.fi |
| 1eec0 | 72 73 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 | rst.class.values.you.can.instant |
| 1eee0 | 69 61 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 | iate.the.type</span>.....<span.c |
| 1ef00 | 6c 61 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 | lass="tok-comment">//.by.assigni |
| 1ef20 | 6e 67 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 | ng.it.to.a.variable:</span>..... |
| 1ef40 | 3c 73 70 61 6e 20 63 6c 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 |
| 1ef60 | 3e 20 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 | >.ListOfInts.=.LinkedList(<span. |
| 1ef80 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 | class="tok-type">i32</span>);... |
| 1efa0 | 20 20 61 73 73 65 72 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 | ..assert(ListOfInts.==.LinkedLis |
| 1efc0 | 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 |
| 1efe0 | 61 6e 3e 29 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | an>));......<span.class="tok-kw" |
| 1f000 | 3e 76 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 | >var</span>.node.=.ListOfInts.No |
| 1f020 | 64 65 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 | de.{..........prev.=.<span.class |
| 1f040 | 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 | ="tok-null">null</span>,........ |
| 1f060 | 20 2e 6e 65 78 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e | ..next.=.<span.class="tok-null"> |
| 1f080 | 6e 75 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 | null</span>,..........data.=.<sp |
| 1f0a0 | 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 |
| 1f0c0 | 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 |
| 1f0e0 | 77 22 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 | w">var</span>.list2.=.LinkedList |
| 1f100 | 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 |
| 1f120 | 6e 3e 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 | n>).{..........first.=.&node |
| 1f140 | 2c 0a 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 | ,..........last.=.&node,.... |
| 1f160 | 20 20 20 20 20 2e 6c 65 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | ......len.=.<span.class="tok-num |
| 1f180 | 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 20 20 20 20 61 73 73 65 72 74 | ber">1</span>,.....};.....assert |
| 1f1a0 | 28 6c 69 73 74 32 2e 66 69 72 73 74 2e 3f 2e 64 61 74 61 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 | (list2.first.?.data.==.<span.cla |
| 1f1c0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c | ss="tok-number">1234</span>);.}< |
| 1f1e0 | 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 |
| 1f200 | 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 73 74 72 75 63 74 73 2e 7a 69 67 0a 54 65 73 74 | ell">$.zig.test.structs.zig.Test |
| 1f220 | 20 31 2f 34 20 64 6f 74 20 70 72 6f 64 75 63 74 2e 2e 2e 4f 4b 0a 54 65 73 74 20 32 2f 34 20 73 | .1/4.dot.product...OK.Test.2/4.s |
| 1f240 | 74 72 75 63 74 20 6e 61 6d 65 73 70 61 63 65 64 20 76 61 72 69 61 62 6c 65 2e 2e 2e 4f 4b 0a 54 | truct.namespaced.variable...OK.T |
| 1f260 | 65 73 74 20 33 2f 34 20 66 69 65 6c 64 20 70 61 72 65 6e 74 20 70 6f 69 6e 74 65 72 2e 2e 2e 4f | est.3/4.field.parent.pointer...O |
| 1f280 | 4b 0a 54 65 73 74 20 34 2f 34 20 6c 69 6e 6b 65 64 20 6c 69 73 74 2e 2e 2e 4f 4b 0a 41 6c 6c 20 | K.Test.4/4.linked.list...OK.All. |
| 1f2a0 | 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>..... |
| 1f2c0 | 20 20 20 3c 68 32 20 69 64 3d 22 70 61 63 6b 65 64 2d 73 74 72 75 63 74 22 3e 70 61 63 6b 65 64 | ...<h2.id="packed-struct">packed |
| 1f2e0 | 20 73 74 72 75 63 74 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 3c 63 6f 64 65 20 63 6c 61 | .struct</h2>........<p><code.cla |
| 1f300 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 61 | ss="zig"><span.class="tok-kw">pa |
| 1f320 | 63 6b 65 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 73 74 72 75 63 74 73 20 68 61 76 65 20 | cked</span></code>.structs.have. |
| 1f340 | 67 75 61 72 61 6e 74 65 65 64 20 69 6e 2d 6d 65 6d 6f 72 79 20 6c 61 79 6f 75 74 2e 3c 2f 70 3e | guaranteed.in-memory.layout.</p> |
| 1f360 | 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 20 62 69 74 20 66 69 65 6c 64 73 3c 2f 70 3e 0a 20 20 | .......<p>TODO.bit.fields</p>... |
| 1f380 | 20 20 20 20 3c 70 3e 54 4f 44 4f 20 61 6c 69 67 6e 6d 65 6e 74 3c 2f 70 3e 0a 20 20 20 20 20 20 | ....<p>TODO.alignment</p>....... |
| 1f3a0 | 3c 70 3e 54 4f 44 4f 20 65 6e 64 69 61 6e 6e 65 73 73 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e | <p>TODO.endianness</p>.......<p> |
| 1f3c0 | 54 4f 44 4f 20 40 62 69 74 4f 66 66 73 65 74 4f 66 20 61 6e 64 20 40 62 79 74 65 4f 66 66 73 65 | TODO.@bitOffsetOf.and.@byteOffse |
| 1f3e0 | 74 4f 66 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 20 6d 65 6e 74 69 6f 6e 20 68 6f | tOf</p>.......<p>TODO.mention.ho |
| 1f400 | 77 20 76 6f 6c 61 74 69 6c 65 20 6c 6f 61 64 73 20 61 6e 64 20 73 74 6f 72 65 73 20 6f 66 20 62 | w.volatile.loads.and.stores.of.b |
| 1f420 | 69 74 20 70 61 63 6b 65 64 20 66 69 65 6c 64 73 20 63 6f 75 6c 64 20 62 65 20 6d 6f 72 65 20 65 | it.packed.fields.could.be.more.e |
| 1f440 | 66 66 69 63 69 65 6e 74 20 77 68 65 6e 0a 20 20 20 20 20 20 64 6f 6e 65 20 62 79 20 68 61 6e 64 | fficient.when.......done.by.hand |
| 1f460 | 20 69 6e 73 74 65 61 64 20 6f 66 20 77 69 74 68 20 70 61 63 6b 65 64 20 73 74 72 75 63 74 3c 2f | .instead.of.with.packed.struct</ |
| 1f480 | 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 74 72 75 63 74 2d 4e | p>..............<h2.id="struct-N |
| 1f4a0 | 61 6d 69 6e 67 22 3e 73 74 72 75 63 74 20 4e 61 6d 69 6e 67 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 | aming">struct.Naming</h2>....... |
| 1f4c0 | 20 3c 70 3e 53 69 6e 63 65 20 61 6c 6c 20 73 74 72 75 63 74 73 20 61 72 65 20 61 6e 6f 6e 79 6d | .<p>Since.all.structs.are.anonym |
| 1f4e0 | 6f 75 73 2c 20 5a 69 67 20 69 6e 66 65 72 73 20 74 68 65 20 74 79 70 65 20 6e 61 6d 65 20 62 61 | ous,.Zig.infers.the.type.name.ba |
| 1f500 | 73 65 64 20 6f 6e 20 61 20 66 65 77 20 72 75 6c 65 73 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 | sed.on.a.few.rules.</p>.......<u |
| 1f520 | 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 66 20 74 68 65 20 73 74 72 75 63 74 20 69 | l>...........<li>If.the.struct.i |
| 1f540 | 73 20 69 6e 20 74 68 65 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 65 78 70 72 65 73 73 69 | s.in.the.initialization.expressi |
| 1f560 | 6f 6e 20 6f 66 20 61 20 76 61 72 69 61 62 6c 65 2c 20 69 74 20 67 65 74 73 20 6e 61 6d 65 64 20 | on.of.a.variable,.it.gets.named. |
| 1f580 | 61 66 74 65 72 0a 20 20 20 20 20 20 20 20 20 20 74 68 61 74 20 76 61 72 69 61 62 6c 65 2e 3c 2f | after...........that.variable.</ |
| 1f5a0 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 66 20 74 68 65 20 73 74 72 75 63 74 20 | li>...........<li>If.the.struct. |
| 1f5c0 | 69 73 20 69 6e 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | is.in.the.<code.class="zig"><spa |
| 1f5e0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c 2f | n.class="tok-kw">return</span></ |
| 1f600 | 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 2c 20 69 74 20 67 65 74 73 20 6e 61 6d 65 64 20 | code>.expression,.it.gets.named. |
| 1f620 | 61 66 74 65 72 0a 20 20 20 20 20 20 20 20 20 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 69 74 20 | after...........the.function.it. |
| 1f640 | 69 73 20 72 65 74 75 72 6e 69 6e 67 20 66 72 6f 6d 2c 20 77 69 74 68 20 74 68 65 20 70 61 72 61 | is.returning.from,.with.the.para |
| 1f660 | 6d 65 74 65 72 20 76 61 6c 75 65 73 20 73 65 72 69 61 6c 69 7a 65 64 2e 3c 2f 6c 69 3e 0a 20 20 | meter.values.serialized.</li>... |
| 1f680 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 4f 74 68 65 72 77 69 73 65 2c 20 74 68 65 20 73 74 72 75 63 | ........<li>Otherwise,.the.struc |
| 1f6a0 | 74 20 67 65 74 73 20 61 20 6e 61 6d 65 20 73 75 63 68 20 61 73 20 3c 63 6f 64 65 3e 28 61 6e 6f | t.gets.a.name.such.as.<code>(ano |
| 1f6c0 | 6e 79 6d 6f 75 73 20 73 74 72 75 63 74 20 61 74 20 66 69 6c 65 2e 7a 69 67 3a 37 3a 33 38 29 3c | nymous.struct.at.file.zig:7:38)< |
| 1f6e0 | 2f 63 6f 64 65 3e 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c | /code>.</li>.......</ul>.......< |
| 1f700 | 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 73 74 72 75 63 74 5f 6e 61 6d 65 2e 7a 69 67 3c 2f | p.class="file">struct_name.zig</ |
| 1f720 | 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 |
| 1f740 | 6c 61 73 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.= |
| 1f760 | 20 3c 73 70 61 6e 20 63 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 |
| 1f780 | 72 74 3c 2f 73 70 61 6e 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"> |
| 1f7a0 | 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. |
| 1f7c0 | 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. |
| 1f7e0 | 63 6c 61 73 73 3d 22 74 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 |
| 1f800 | 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 | lass="tok-fn">main</span>().<spa |
| 1f820 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b | n.class="tok-type">void</span>.{ |
| 1f840 | 0a 20 20 20 20 3c 73 70 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< |
| 1f860 | 2f 73 70 61 6e 3e 20 46 6f 6f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | /span>.Foo.=.<span.class="tok-kw |
| 1f880 | 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 7d 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 | ">struct</span>.{};.....std.debu |
| 1f8a0 | 67 2e 77 61 72 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 | g.warn(<span.class="tok-str">&qu |
| 1f8c0 | 6f 74 3b 76 61 72 69 61 62 6c 65 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 | ot;variable:.{}\n"</span>,. |
| 1f8e0 | 3c 73 70 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 |
| 1f900 | 61 6d 65 3c 2f 73 70 61 6e 3e 28 46 6f 6f 29 29 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e | ame</span>(Foo));.....std.debug. |
| 1f920 | 77 61 72 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | warn(<span.class="tok-str">" |
| 1f940 | 3b 61 6e 6f 6e 79 6d 6f 75 73 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 3c | ;anonymous:.{}\n"</span>,.< |
| 1f960 | 73 70 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 | span.class="tok-builtin">@typeNa |
| 1f980 | 6d 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 | me</span>(<span.class="tok-kw">s |
| 1f9a0 | 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 7d 29 29 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 | truct</span>.{}));.....std.debug |
| 1f9c0 | 2e 77 61 72 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f | .warn(<span.class="tok-str">&quo |
| 1f9e0 | 74 3b 66 75 6e 63 74 69 6f 6e 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 3c | t;function:.{}\n"</span>,.< |
| 1fa00 | 73 70 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 | span.class="tok-builtin">@typeNa |
| 1fa20 | 6d 65 3c 2f 73 70 61 6e 3e 28 4c 69 73 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | me</span>(List(<span.class="tok- |
| 1fa40 | 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 29 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c | type">i32</span>)));.}..<span.cl |
| 1fa60 | 61 73 73 3d 22 74 6f 6b 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 |
| 1fa80 | 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 4c 69 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c | ss="tok-fn">List</span>(<span.cl |
| 1faa0 | 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:. |
| 1fac0 | 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 |
| 1fae0 | 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< |
| 1fb00 | 2f 73 70 61 6e 3e 20 7b 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 |
| 1fb20 | 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ">return</span>.<span.class="tok |
| 1fb40 | 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 78 3a 20 | -kw">struct</span>.{.........x:. |
| 1fb60 | 54 2c 0a 20 20 20 20 7d 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f | T,.....};.}</code></pre><pre><co |
| 1fb80 | 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 |
| 1fba0 | 20 73 74 72 75 63 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 | .struct_name.zig.$../struct_name |
| 1fbc0 | 0a 76 61 72 69 61 62 6c 65 3a 20 46 6f 6f 0a 61 6e 6f 6e 79 6d 6f 75 73 3a 20 28 61 6e 6f 6e 79 | .variable:.Foo.anonymous:.(anony |
| 1fbe0 | 6d 6f 75 73 20 73 74 72 75 63 74 20 61 74 20 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 | mous.struct.at./home/andy/dev/zi |
| 1fc00 | 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 73 74 72 75 63 74 5f 6e 61 6d 65 2e 7a 69 67 3a 36 3a 34 | g/docgen_tmp/struct_name.zig:6:4 |
| 1fc20 | 39 29 0a 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 | 9).function:.List(i32).</code></ |
| 1fc40 | 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c | pre>...............<p>See.also:< |
| 1fc60 | 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e | /p><ul>.<li><a.href="#comptime"> |
| 1fc80 | 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 | comptime</a></li>.<li><a.href="# |
| 1fca0 | 66 69 65 6c 64 50 61 72 65 6e 74 50 74 72 22 3e 40 66 69 65 6c 64 50 61 72 65 6e 74 50 74 72 3c | fieldParentPtr">@fieldParentPtr< |
| 1fcc0 | 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 | /a></li>.</ul>...............<h1 |
| 1fce0 | 20 69 64 3d 22 65 6e 75 6d 22 3e 65 6e 75 6d 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 20 63 | .id="enum">enum</h1>........<p.c |
| 1fd00 | 6c 61 73 73 3d 22 66 69 6c 65 22 3e 65 6e 75 6d 73 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 | lass="file">enums.zig</p><pre><c |
| 1fd20 | 6f 64 65 20 63 6c 61 73 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 |
| 1fd40 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 3c 73 70 61 6e | -kw">const</span>.assert.=.<span |
| 1fd60 | 20 63 6c 61 73 73 3d 22 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 |
| 1fd80 | 61 6e 3e 28 3c 73 70 61 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">" |
| 1fda0 | 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 0a | std"</span>).debug.assert;. |
| 1fdc0 | 3c 73 70 61 6e 20 63 6c 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 |
| 1fde0 | 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 69 6e | >.mem.=.<span.class="tok-builtin |
| 1fe00 | 22 3e 40 69 6d 70 6f 72 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 |
| 1fe20 | 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 |
| 1fe40 | 65 6d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f | em;..<span.class="tok-comment">/ |
| 1fe60 | 2f 20 44 65 63 6c 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 | /.Declare.an.enum.</span>.<span. |
| 1fe80 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 54 79 70 65 | class="tok-kw">const</span>.Type |
| 1fea0 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 | .=.<span.class="tok-kw">enum</sp |
| 1fec0 | 61 6e 3e 20 7b 0a 20 20 20 20 4f 6b 2c 0a 20 20 20 20 4e 6f 74 4f 6b 2c 0a 7d 3b 0a 0a 3c 73 70 | an>.{.....Ok,.....NotOk,.};..<sp |
| 1fee0 | 61 6e 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 61 72 | an.class="tok-comment">//.Declar |
| 1ff00 | 65 20 61 20 73 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 | e.a.specific.instance.of.the.enu |
| 1ff20 | 6d 20 76 61 72 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 | m.variant.</span>.<span.class="t |
| 1ff40 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 20 3d 20 54 79 70 65 2e 4f 6b 3b | ok-kw">const</span>.c.=.Type.Ok; |
| 1ff60 | 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 49 | ..<span.class="tok-comment">//.I |
| 1ff80 | 66 20 79 6f 75 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 | f.you.want.access.to.the.ordinal |
| 1ffa0 | 20 76 61 6c 75 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 | .value.of.an.enum,.you</span>.<s |
| 1ffc0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 63 61 6e 20 73 | pan.class="tok-comment">//.can.s |
| 1ffe0 | 70 65 63 69 66 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 | pecify.the.tag.type.</span>.<spa |
| 20000 | 6e 20 63 6c 61 73 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 | n.class="tok-kw">const</span>.Va |
| 20020 | 6c 75 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 65 6e 75 6d 3c | lue.=.<span.class="tok-kw">enum< |
| 20040 | 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 32 | /span>(<span.class="tok-type">u2 |
| 20060 | 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 5a 65 72 6f 2c 0a 20 20 20 20 4f 6e 65 2c 0a 20 20 | </span>).{.....Zero,.....One,... |
| 20080 | 20 20 54 77 6f 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 | ..Two,.};..<span.class="tok-comm |
| 200a0 | 65 6e 74 22 3e 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 | ent">//.Now.you.can.cast.between |
| 200c0 | 20 75 32 20 61 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 | .u2.and.Value.</span>.<span.clas |
| 200e0 | 73 3d 22 74 6f 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 | s="tok-comment">//.The.ordinal.v |
| 20100 | 61 6c 75 65 20 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 | alue.starts.from.0,.counting.up. |
| 20120 | 66 6f 72 20 65 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 | for.each.member.</span>.<span.cl |
| 20140 | 61 73 73 3d 22 74 6f 6b 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 |
| 20160 | 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 6f 72 64 69 6e 61 | lass="tok-str">"enum.ordina |
| 20180 | 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 61 73 73 65 72 | l.value"</span>.{.....asser |
| 201a0 | 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 65 6e 75 | t(<span.class="tok-builtin">@enu |
| 201c0 | 6d 54 6f 49 6e 74 3c 2f 73 70 61 6e 3e 28 56 61 6c 75 65 2e 5a 65 72 6f 29 20 3d 3d 20 3c 73 70 | mToInt</span>(Value.Zero).==.<sp |
| 201e0 | 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>); |
| 20200 | 0a 20 20 20 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | .....assert(<span.class="tok-bui |
| 20220 | 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 65 2e 4f 6e | ltin">@enumToInt</span>(Value.On |
| 20240 | 65 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 | e).==.<span.class="tok-number">1 |
| 20260 | 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 | </span>);.....assert(<span.class |
| 20280 | 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 3e | ="tok-builtin">@enumToInt</span> |
| 202a0 | 28 56 61 6c 75 65 2e 54 77 6f 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | (Value.Two).==.<span.class="tok- |
| 202c0 | 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | number">2</span>);.}..<span.clas |
| 202e0 | 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 6f 76 65 72 72 | s="tok-comment">//.You.can.overr |
| 20300 | 69 64 65 20 74 68 65 20 6f 72 64 69 6e 61 6c 20 76 61 6c 75 65 20 66 6f 72 20 61 6e 20 65 6e 75 | ide.the.ordinal.value.for.an.enu |
| 20320 | 6d 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | m.</span>.<span.class="tok-kw">c |
| 20340 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 56 61 6c 75 65 32 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | onst</span>.Value2.=.<span.class |
| 20360 | 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 | ="tok-kw">enum</span>(<span.clas |
| 20380 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 48 | s="tok-type">u32</span>).{.....H |
| 203a0 | 75 6e 64 72 65 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | undred.=.<span.class="tok-number |
| 203c0 | 22 3e 31 30 30 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 54 68 6f 75 73 61 6e 64 20 3d 20 3c 73 70 | ">100</span>,.....Thousand.=.<sp |
| 203e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 30 30 3c 2f 73 70 61 6e | an.class="tok-number">1000</span |
| 20400 | 3e 2c 0a 20 20 20 20 4d 69 6c 6c 69 6f 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >,.....Million.=.<span.class="to |
| 20420 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 30 30 30 30 30 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 3c 73 70 | k-number">1000000</span>,.};.<sp |
| 20440 | 61 6e 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 |
| 20460 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 65 74 20 65 6e | pan.class="tok-str">"set.en |
| 20480 | 75 6d 20 6f 72 64 69 6e 61 6c 20 76 61 6c 75 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a | um.ordinal.value"</span>.{. |
| 204a0 | 20 20 20 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | ....assert(<span.class="tok-buil |
| 204c0 | 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 65 32 2e 48 75 | tin">@enumToInt</span>(Value2.Hu |
| 204e0 | 6e 64 72 65 64 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | ndred).==.<span.class="tok-numbe |
| 20500 | 72 22 3e 31 30 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 61 73 73 65 72 74 28 3c 73 70 61 6e | r">100</span>);.....assert(<span |
| 20520 | 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 74 3c | .class="tok-builtin">@enumToInt< |
| 20540 | 2f 73 70 61 6e 3e 28 56 61 6c 75 65 32 2e 54 68 6f 75 73 61 6e 64 29 20 3d 3d 20 3c 73 70 61 6e | /span>(Value2.Thousand).==.<span |
| 20560 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 30 30 3c 2f 73 70 61 6e 3e 29 | .class="tok-number">1000</span>) |
| 20580 | 3b 0a 20 20 20 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | ;.....assert(<span.class="tok-bu |
| 205a0 | 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 65 32 2e | iltin">@enumToInt</span>(Value2. |
| 205c0 | 4d 69 6c 6c 69 6f 6e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | Million).==.<span.class="tok-num |
| 205e0 | 62 65 72 22 3e 31 30 30 30 30 30 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 | ber">1000000</span>);.}..<span.c |
| 20600 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 45 6e 75 6d 73 20 63 61 6e 20 | lass="tok-comment">//.Enums.can. |
| 20620 | 68 61 76 65 20 6d 65 74 68 6f 64 73 2c 20 74 68 65 20 73 61 6d 65 20 61 73 20 73 74 72 75 63 74 | have.methods,.the.same.as.struct |
| 20640 | 73 20 61 6e 64 20 75 6e 69 6f 6e 73 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | s.and.unions.</span>.<span.class |
| 20660 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 45 6e 75 6d 20 6d 65 74 68 6f 64 73 20 61 | ="tok-comment">//.Enum.methods.a |
| 20680 | 72 65 20 6e 6f 74 20 73 70 65 63 69 61 6c 2c 20 74 68 65 79 20 61 72 65 20 6f 6e 6c 79 20 6e 61 | re.not.special,.they.are.only.na |
| 206a0 | 6d 65 73 70 61 63 65 64 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | mespaced</span>.<span.class="tok |
| 206c0 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 66 75 6e 63 74 69 6f 6e 73 20 74 68 61 74 20 79 6f 75 20 | -comment">//.functions.that.you. |
| 206e0 | 63 61 6e 20 63 61 6c 6c 20 77 69 74 68 20 64 6f 74 20 73 79 6e 74 61 78 2e 3c 2f 73 70 61 6e 3e | can.call.with.dot.syntax.</span> |
| 20700 | 0a 3c 73 70 61 6e 20 63 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 |
| 20720 | 6e 3e 20 53 75 69 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 | n>.Suit.=.<span.class="tok-kw">e |
| 20740 | 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 43 6c 75 62 73 2c 0a 20 20 20 20 53 70 61 64 | num</span>.{.....Clubs,.....Spad |
| 20760 | 65 73 2c 0a 20 20 20 20 44 69 61 6d 6f 6e 64 73 2c 0a 20 20 20 20 48 65 61 72 74 73 2c 0a 0a 20 | es,.....Diamonds,.....Hearts,... |
| 20780 | 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 |
| 207a0 | 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 |
| 207c0 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 69 73 43 6c 75 62 73 3c 2f | >.<span.class="tok-fn">isClubs</ |
| 207e0 | 73 70 61 6e 3e 28 73 65 6c 66 3a 20 53 75 69 74 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | span>(self:.Suit).<span.class="t |
| 20800 | 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c | ok-type">bool</span>.{.........< |
| 20820 | 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 |
| 20840 | 3e 20 73 65 6c 66 20 3d 3d 20 53 75 69 74 2e 43 6c 75 62 73 3b 0a 20 20 20 20 7d 0a 7d 3b 0a 3c | >.self.==.Suit.Clubs;.....}.};.< |
| 20860 | 73 70 61 6e 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>. |
| 20880 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 6e 75 6d | <span.class="tok-str">"enum |
| 208a0 | 20 6d 65 74 68 6f 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e | .method"</span>.{.....<span |
| 208c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 20 3d | .class="tok-kw">const</span>.p.= |
| 208e0 | 20 53 75 69 74 2e 53 70 61 64 65 73 3b 0a 20 20 20 20 61 73 73 65 72 74 28 21 70 2e 69 73 43 6c | .Suit.Spades;.....assert(!p.isCl |
| 20900 | 75 62 73 28 29 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d | ubs());.}..<span.class="tok-comm |
| 20920 | 65 6e 74 22 3e 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 | ent">//.An.enum.variant.of.diffe |
| 20940 | 72 65 6e 74 20 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 | rent.types.can.be.switched.upon. |
| 20960 | 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e | </span>.<span.class="tok-kw">con |
| 20980 | 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 |
| 209a0 | 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 53 74 72 69 6e 67 2c 0a 20 | -kw">enum</span>.{.....String,.. |
| 209c0 | 20 20 20 4e 75 6d 62 65 72 2c 0a 20 20 20 20 4e 6f 6e 65 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c | ...Number,.....None,.};.<span.cl |
| 209e0 | 61 73 73 3d 22 74 6f 6b 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 |
| 20a00 | 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 76 61 72 69 61 6e | lass="tok-str">"enum.varian |
| 20a20 | 74 20 73 77 69 74 63 68 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 | t.switch"</span>.{.....<spa |
| 20a40 | 6e 20 63 6c 61 73 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 | n.class="tok-kw">const</span>.p. |
| 20a60 | 3d 20 46 6f 6f 2e 4e 75 6d 62 65 72 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | =.Foo.Number;.....<span.class="t |
| 20a80 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 77 68 61 74 5f 69 73 5f 69 74 20 3d | ok-kw">const</span>.what_is_it.= |
| 20aa0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 | .<span.class="tok-kw">switch</sp |
| 20ac0 | 61 6e 3e 20 28 70 29 20 7b 0a 20 20 20 20 20 20 20 20 46 6f 6f 2e 53 74 72 69 6e 67 20 3d 26 67 | an>.(p).{.........Foo.String.=&g |
| 20ae0 | 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 74 | t;.<span.class="tok-str">"t |
| 20b00 | 68 69 73 20 69 73 20 61 20 73 74 72 69 6e 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 0a 20 20 | his.is.a.string"</span>,... |
| 20b20 | 20 20 20 20 20 20 46 6f 6f 2e 4e 75 6d 62 65 72 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 | ......Foo.Number.=>.<span.cla |
| 20b40 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 68 69 73 20 69 73 20 61 20 6e 75 6d | ss="tok-str">"this.is.a.num |
| 20b60 | 62 65 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 46 6f 6f 2e 4e 6f | ber"</span>,.........Foo.No |
| 20b80 | 6e 65 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 | ne.=>.<span.class="tok-str">& |
| 20ba0 | 71 75 6f 74 3b 74 68 69 73 20 69 73 20 61 20 6e 6f 6e 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | quot;this.is.a.none"</span> |
| 20bc0 | 2c 0a 20 20 20 20 7d 3b 0a 20 20 20 20 61 73 73 65 72 74 28 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 | ,.....};.....assert(mem.eql(<spa |
| 20be0 | 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 77 68 | n.class="tok-type">u8</span>,.wh |
| 20c00 | 61 74 5f 69 73 5f 69 74 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e | at_is_it,.<span.class="tok-str"> |
| 20c20 | 26 71 75 6f 74 3b 74 68 69 73 20 69 73 20 61 20 6e 75 6d 62 65 72 26 71 75 6f 74 3b 3c 2f 73 70 | "this.is.a.number"</sp |
| 20c40 | 61 6e 3e 29 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 | an>));.}..<span.class="tok-comme |
| 20c60 | 6e 74 22 3e 2f 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 | nt">//.@TagType.can.be.used.to.a |
| 20c80 | 63 63 65 73 73 20 74 68 65 20 69 6e 74 65 67 65 72 20 74 61 67 20 74 79 70 65 20 6f 66 20 61 6e | ccess.the.integer.tag.type.of.an |
| 20ca0 | 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 22 74 6f 6b 2d 6b | .enum.</span>.<span.class="tok-k |
| 20cc0 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 53 6d 61 6c 6c 20 3d 20 3c 73 70 61 6e 20 63 6c | w">const</span>.Small.=.<span.cl |
| 20ce0 | 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 4f | ass="tok-kw">enum</span>.{.....O |
| 20d00 | 6e 65 2c 0a 20 20 20 20 54 77 6f 2c 0a 20 20 20 20 54 68 72 65 65 2c 0a 20 20 20 20 46 6f 75 72 | ne,.....Two,.....Three,.....Four |
| 20d20 | 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f | ,.};.<span.class="tok-kw">test</ |
| 20d40 | 73 70 61 6e 3e 20 3c 73 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 |
| 20d60 | 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 20 20 20 61 73 | t;@TagType"</span>.{.....as |
| 20d80 | 73 65 72 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 | sert(<span.class="tok-builtin">@ |
| 20da0 | 54 61 67 54 79 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 | TagType</span>(Small).==.<span.c |
| 20dc0 | 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 29 3b 0a 7d 0a 0a 3c | lass="tok-type">u2</span>);.}..< |
| 20de0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 40 6d 65 6d | span.class="tok-comment">//.@mem |
| 20e00 | 62 65 72 43 6f 75 6e 74 20 74 65 6c 6c 73 20 68 6f 77 20 6d 61 6e 79 20 66 69 65 6c 64 73 20 61 | berCount.tells.how.many.fields.a |
| 20e20 | 6e 20 65 6e 75 6d 20 68 61 73 3a 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | n.enum.has:</span>.<span.class=" |
| 20e40 | 74 6f 6b 2d 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= |
| 20e60 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 40 6d 65 6d 62 65 72 43 6f 75 6e 74 26 71 75 6f | "tok-str">"@memberCount&quo |
| 20e80 | 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 61 | t;</span>.{.....assert(<span.cla |
| 20ea0 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6d 65 6d 62 65 72 43 6f 75 6e 74 3c 2f 73 | ss="tok-builtin">@memberCount</s |
| 20ec0 | 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 22 74 6f 6b 2d | pan>(Small).==.<span.class="tok- |
| 20ee0 | 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 |
| 20f00 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 40 6d 65 6d 62 65 72 4e 61 6d 65 20 74 | s="tok-comment">//.@memberName.t |
| 20f20 | 65 6c 6c 73 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 61 20 66 69 65 6c 64 20 69 6e 20 61 6e 20 65 | ells.the.name.of.a.field.in.an.e |
| 20f40 | 6e 75 6d 3a 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | num:</span>.<span.class="tok-kw" |
| 20f60 | 3e 74 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 |
| 20f80 | 72 22 3e 26 71 75 6f 74 3b 40 6d 65 6d 62 65 72 4e 61 6d 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | r">"@memberName"</span |
| 20fa0 | 3e 20 7b 0a 20 20 20 20 61 73 73 65 72 74 28 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 | >.{.....assert(mem.eql(<span.cla |
| 20fc0 | 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 |
| 20fe0 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6d 65 6d 62 65 72 4e 61 6d 65 3c 2f | lass="tok-builtin">@memberName</ |
| 21000 | 73 70 61 6e 3e 28 53 6d 61 6c 6c 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | span>(Small,.<span.class="tok-nu |
| 21020 | 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | mber">1</span>),.<span.class="to |
| 21040 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 54 77 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b | k-str">"Two"</span>)); |
| 21060 | 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">// |
| 21080 | 20 40 74 61 67 4e 61 6d 65 20 67 69 76 65 73 20 61 20 5b 5d 63 6f 6e 73 74 20 75 38 20 72 65 70 | .@tagName.gives.a.[]const.u8.rep |
| 210a0 | 72 65 73 65 6e 74 61 74 69 6f 6e 20 6f 66 20 61 6e 20 65 6e 75 6d 20 76 61 6c 75 65 3a 3c 2f 73 | resentation.of.an.enum.value:</s |
| 210c0 | 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f | pan>.<span.class="tok-kw">test</ |
| 210e0 | 73 70 61 6e 3e 20 3c 73 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 |
| 21100 | 74 3b 40 74 61 67 4e 61 6d 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 73 | t;@tagName"</span>.{.....as |
| 21120 | 73 65 72 74 28 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | sert(mem.eql(<span.class="tok-ty |
| 21140 | 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | pe">u8</span>,.<span.class="tok- |
| 21160 | 62 75 69 6c 74 69 6e 22 3e 40 74 61 67 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 53 6d 61 6c 6c 2e 54 | builtin">@tagName</span>(Small.T |
| 21180 | 68 72 65 65 29 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 | hree),.<span.class="tok-str">&qu |
| 211a0 | 6f 74 3b 54 68 72 65 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 7d 3c 2f 63 6f 64 65 | ot;Three"</span>));.}</code |
| 211c0 | 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"> |
| 211e0 | 24 20 7a 69 67 20 74 65 73 74 20 65 6e 75 6d 73 2e 7a 69 67 0a 54 65 73 74 20 31 2f 38 20 65 6e | $.zig.test.enums.zig.Test.1/8.en |
| 21200 | 75 6d 20 6f 72 64 69 6e 61 6c 20 76 61 6c 75 65 2e 2e 2e 4f 4b 0a 54 65 73 74 20 32 2f 38 20 73 | um.ordinal.value...OK.Test.2/8.s |
| 21220 | 65 74 20 65 6e 75 6d 20 6f 72 64 69 6e 61 6c 20 76 61 6c 75 65 2e 2e 2e 4f 4b 0a 54 65 73 74 20 | et.enum.ordinal.value...OK.Test. |
| 21240 | 33 2f 38 20 65 6e 75 6d 20 6d 65 74 68 6f 64 2e 2e 2e 4f 4b 0a 54 65 73 74 20 34 2f 38 20 65 6e | 3/8.enum.method...OK.Test.4/8.en |
| 21260 | 75 6d 20 76 61 72 69 61 6e 74 20 73 77 69 74 63 68 2e 2e 2e 4f 4b 0a 54 65 73 74 20 35 2f 38 20 | um.variant.switch...OK.Test.5/8. |
| 21280 | 40 54 61 67 54 79 70 65 2e 2e 2e 4f 4b 0a 54 65 73 74 20 36 2f 38 20 40 6d 65 6d 62 65 72 43 6f | @TagType...OK.Test.6/8.@memberCo |
| 212a0 | 75 6e 74 2e 2e 2e 4f 4b 0a 54 65 73 74 20 37 2f 38 20 40 6d 65 6d 62 65 72 4e 61 6d 65 2e 2e 2e | unt...OK.Test.7/8.@memberName... |
| 212c0 | 4f 4b 0a 54 65 73 74 20 38 2f 38 20 40 74 61 67 4e 61 6d 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 74 65 | OK.Test.8/8.@tagName...OK.All.te |
| 212e0 | 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>....... |
| 21300 | 20 3c 68 32 20 69 64 3d 22 65 78 74 65 72 6e 2d 65 6e 75 6d 22 3e 65 78 74 65 72 6e 20 65 6e 75 | .<h2.id="extern-enum">extern.enu |
| 21320 | 6d 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 42 79 20 64 65 66 61 75 | m</h2>........<p>.......By.defau |
| 21340 | 6c 74 2c 20 65 6e 75 6d 73 20 61 72 65 20 6e 6f 74 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 | lt,.enums.are.not.guaranteed.to. |
| 21360 | 62 65 20 63 6f 6d 70 61 74 69 62 6c 65 20 77 69 74 68 20 74 68 65 20 43 20 41 42 49 3a 0a 20 20 | be.compatible.with.the.C.ABI:... |
| 21380 | 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 |
| 213a0 | 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 |
| 213c0 | 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 |
| 213e0 | 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 65 | an>.Foo.=.<span.class="tok-kw">e |
| 21400 | 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 20 41 2c 20 42 2c 20 43 20 7d 3b 0a 3c 73 70 61 6e 20 63 6c | num</span>.{.A,.B,.C.};.<span.cl |
| 21420 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e | ass="tok-kw">export</span>.<span |
| 21440 | 20 63 6c 61 73 73 3d 22 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. |
| 21460 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 65 6e 74 72 79 3c 2f 73 70 61 6e 3e 28 66 6f 6f 3a | class="tok-fn">entry</span>(foo: |
| 21480 | 20 46 6f 6f 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 | .Foo).<span.class="tok-type">voi |
| 214a0 | 64 3c 2f 73 70 61 6e 3e 20 7b 20 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 | d</span>.{.}</code></pre><pre><c |
| 214c0 | 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 6f 62 | ode.class="shell">$.zig.build-ob |
| 214e0 | 6a 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 2f 68 | j.test.zig.<span.class="t0_1">/h |
| 21500 | 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 | ome/andy/dev/zig/docgen_tmp/test |
| 21520 | 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 22 74 | .zig:2:22:.</span><span.class="t |
| 21540 | 33 31 5f 31 22 3e 65 72 72 6f 72 3a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | 31_1">error:</span><span.class=" |
| 21560 | 74 30 5f 31 22 3e 20 70 61 72 61 6d 65 74 65 72 20 6f 66 20 74 79 70 65 20 27 46 6f 6f 27 20 6e | t0_1">.parameter.of.type.'Foo'.n |
| 21580 | 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 6c 6c | ot.allowed.in.function.with.call |
| 215a0 | 69 6e 67 20 63 6f 6e 76 65 6e 74 69 6f 6e 20 27 63 63 63 27 3c 2f 73 70 61 6e 3e 0a 65 78 70 6f | ing.convention.'ccc'</span>.expo |
| 215c0 | 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.{.... |
| 215e0 | 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=" |
| 21600 | 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 3c | t32_1">^</span>..</code></pre>.< |
| 21620 | 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 46 6f | /code></pre>........<p>.......Fo |
| 21640 | 72 20 61 20 43 2d 41 42 49 2d 63 6f 6d 70 61 74 69 62 6c 65 20 65 6e 75 6d 2c 20 75 73 65 20 3c | r.a.C-ABI-compatible.enum,.use.< |
| 21660 | 63 6f 64 65 20 63 6c 61 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 |
| 21680 | 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= |
| 216a0 | 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 3a 0a 20 20 20 | "tok-kw">enum</span></code>:.... |
| 216c0 | 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 |
| 216e0 | 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" |
| 21700 | 3e 3c 73 70 61 6e 20 63 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 |
| 21720 | 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 65 78 | n>.Foo.=.<span.class="tok-kw">ex |
| 21740 | 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" |
| 21760 | 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 20 41 2c 20 42 2c 20 43 20 7d 3b 0a 3c 73 70 61 6e 20 | >enum</span>.{.A,.B,.C.};.<span. |
| 21780 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 | class="tok-kw">export</span>.<sp |
| 217a0 | 61 6e 20 63 6c 61 73 73 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 |
| 217c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 65 6e 74 72 79 3c 2f 73 70 61 6e 3e 28 66 6f | n.class="tok-fn">entry</span>(fo |
| 217e0 | 6f 3a 20 46 6f 6f 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 | o:.Foo).<span.class="tok-type">v |
| 21800 | 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 65 3e 3c 70 72 65 3e | oid</span>.{.}</code></pre><pre> |
| 21820 | 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- |
| 21840 | 6f 62 6a 20 74 65 73 74 2e 7a 69 67 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 | obj.test.zig</code></pre>....... |
| 21860 | 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 70 61 63 6b 65 64 2d 65 6e 75 6d 22 3e 70 61 63 | ........<h2.id="packed-enum">pac |
| 21880 | 6b 65 64 20 65 6e 75 6d 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 42 79 20 64 65 66 61 75 | ked.enum</h2>........<p>By.defau |
| 218a0 | 6c 74 2c 20 74 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 | lt,.the.size.of.enums.is.not.gua |
| 218c0 | 72 61 6e 74 65 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 | ranteed.</p>.......<p><code.clas |
| 218e0 | 73 3d 22 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 |
| 21900 | 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"> |
| 21920 | 65 6e 75 6d 3c 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 | enum</span></code>.causes.the.si |
| 21940 | 7a 65 20 6f 66 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 | ze.of.the.enum.to.be.the.same.as |
| 21960 | 20 74 68 65 20 73 69 7a 65 20 6f 66 20 74 68 65 20 69 6e 74 65 67 65 72 20 74 61 67 20 74 79 70 | .the.size.of.the.integer.tag.typ |
| 21980 | 65 0a 20 20 20 20 20 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 | e.......of.the.enum:</p>.......< |
| 219a0 | 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> |
| 219c0 | 3c 63 6f 64 65 20 63 6c 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 |
| 219e0 | 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. |
| 21a00 | 63 6c 61 73 73 3d 22 74 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 |
| 21a20 | 6e 3e 28 3c 73 70 61 6e 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 |
| 21a40 | 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | td"</span>);..<span.class=" |
| 21a60 | 74 6f 6b 2d 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= |
| 21a80 | 22 74 6f 6b 2d 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 | "tok-str">"packed.enum" |
| 21aa0 | 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- |
| 21ac0 | 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. |
| 21ae0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 61 63 6b 65 64 3c 2f 73 70 61 6e 3e 20 3c 73 70 | class="tok-kw">packed</span>.<sp |
| 21b00 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 28 3c 73 | an.class="tok-kw">enum</span>(<s |
| 21b20 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 | pan.class="tok-type">u8</span>). |
| 21b40 | 7b 0a 20 20 20 20 20 20 20 20 4f 6e 65 2c 0a 20 20 20 20 20 20 20 20 54 77 6f 2c 0a 20 20 20 20 | {.........One,.........Two,..... |
| 21b60 | 20 20 20 20 54 68 72 65 65 2c 0a 20 20 20 20 7d 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e | ....Three,.....};.....std.debug. |
| 21b80 | 61 73 73 65 72 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 | assert(<span.class="tok-builtin" |
| 21ba0 | 3e 40 73 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 | >@sizeOf</span>(Number).==.<span |
| 21bc0 | 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 |
| 21be0 | 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 | an>(<span.class="tok-type">u8</s |
| 21c00 | 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 |
| 21c20 | 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 |
| 21c40 | 69 67 0a 54 65 73 74 20 31 2f 31 20 70 61 63 6b 65 64 20 65 6e 75 6d 2e 2e 2e 4f 4b 0a 41 6c 6c | ig.Test.1/1.packed.enum...OK.All |
| 21c60 | 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>.... |
| 21c80 | 20 20 20 20 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a | ...........<p>See.also:</p><ul>. |
| 21ca0 | 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 6d 65 6d 62 65 72 4e 61 6d 65 22 3e 40 6d 65 6d 62 65 | <li><a.href="#memberName">@membe |
| 21cc0 | 72 4e 61 6d 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 6d 65 6d | rName</a></li>.<li><a.href="#mem |
| 21ce0 | 62 65 72 43 6f 75 6e 74 22 3e 40 6d 65 6d 62 65 72 43 6f 75 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a | berCount">@memberCount</a></li>. |
| 21d00 | 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 74 61 67 4e 61 6d 65 22 3e 40 74 61 67 4e 61 6d 65 3c | <li><a.href="#tagName">@tagName< |
| 21d20 | 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 69 7a 65 4f 66 22 3e 40 | /a></li>.<li><a.href="#sizeOf">@ |
| 21d40 | 73 69 7a 65 4f 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 | sizeOf</a></li>.</ul>........... |
| 21d60 | 20 20 20 20 3c 68 31 20 69 64 3d 22 75 6e 69 6f 6e 22 3e 75 6e 69 6f 6e 3c 2f 68 31 3e 0a 0a 20 | ....<h1.id="union">union</h1>... |
| 21d80 | 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 75 6e 69 6f 6e 2e 7a 69 67 3c 2f | .....<p.class="file">union.zig</ |
| 21da0 | 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 |
| 21dc0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 | lass="tok-kw">const</span>.asser |
| 21de0 | 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 |
| 21e00 | 6d 70 6f 72 74 3c 2f 73 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 |
| 21e20 | 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 | r">"std"</span>).debug |
| 21e40 | 2e 61 73 73 65 72 74 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | .assert;.<span.class="tok-kw">co |
| 21e60 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 65 6d 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | nst</span>.mem.=.<span.class="to |
| 21e80 | 6b 2d 62 75 69 6c 74 69 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. |
| 21ea0 | 63 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"< |
| 21ec0 | 2f 73 70 61 6e 3e 29 2e 6d 65 6d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | /span>).mem;..<span.class="tok-c |
| 21ee0 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 41 20 75 6e 69 6f 6e 20 68 61 73 20 6f 6e 6c 79 20 31 20 61 63 | omment">//.A.union.has.only.1.ac |
| 21f00 | 74 69 76 65 20 66 69 65 6c 64 20 61 74 20 61 20 74 69 6d 65 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 | tive.field.at.a.time.</span>.<sp |
| 21f20 | 61 6e 20 63 6c 61 73 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 |
| 21f40 | 61 79 6c 6f 61 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e | ayload.=.<span.class="tok-kw">un |
| 21f60 | 69 6f 6e 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 49 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | ion</span>.{.....Int:.<span.clas |
| 21f80 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 36 34 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 46 6c 6f | s="tok-type">i64</span>,.....Flo |
| 21fa0 | 61 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f | at:.<span.class="tok-type">f64</ |
| 21fc0 | 73 70 61 6e 3e 2c 0a 20 20 20 20 42 6f 6f 6c 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | span>,.....Bool:.<span.class="to |
| 21fe0 | 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c | k-type">bool</span>,.};.<span.cl |
| 22000 | 61 73 73 3d 22 74 6f 6b 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 |
| 22020 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 69 6d 70 6c 65 20 75 6e 69 6f | lass="tok-str">"simple.unio |
| 22040 | 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | n"</span>.{.....<span.class |
| 22060 | 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 70 61 79 6c 6f 61 64 20 3d 20 50 | ="tok-kw">var</span>.payload.=.P |
| 22080 | 61 79 6c 6f 61 64 20 7b 2e 49 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ayload.{.Int.=.<span.class="tok- |
| 220a0 | 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | number">1234</span>};.....<span. |
| 220c0 | 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 79 6c 6f 61 64 2e 46 | class="tok-comment">//.payload.F |
| 220e0 | 6c 6f 61 74 20 3d 20 31 32 2e 33 34 3b 20 2f 2f 20 45 52 52 4f 52 21 20 66 69 65 6c 64 20 6e 6f | loat.=.12.34;.//.ERROR!.field.no |
| 22100 | 74 20 61 63 74 69 76 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 73 65 72 74 28 70 61 79 6c 6f | t.active</span>.....assert(paylo |
| 22120 | 61 64 2e 49 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 | ad.Int.==.<span.class="tok-numbe |
| 22140 | 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | r">1234</span>);.....<span.class |
| 22160 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 59 6f 75 20 63 61 6e 20 61 63 74 69 76 61 | ="tok-comment">//.You.can.activa |
| 22180 | 74 65 20 61 6e 6f 74 68 65 72 20 66 69 65 6c 64 20 62 79 20 61 73 73 69 67 6e 69 6e 67 20 74 68 | te.another.field.by.assigning.th |
| 221a0 | 65 20 65 6e 74 69 72 65 20 75 6e 69 6f 6e 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 70 61 79 6c 6f | e.entire.union.</span>.....paylo |
| 221c0 | 61 64 20 3d 20 50 61 79 6c 6f 61 64 20 7b 2e 46 6c 6f 61 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | ad.=.Payload.{.Float.=.<span.cla |
| 221e0 | 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 20 | ss="tok-number">12.34</span>};.. |
| 22200 | 20 20 20 61 73 73 65 72 74 28 70 61 79 6c 6f 61 64 2e 46 6c 6f 61 74 20 3d 3d 20 3c 73 70 61 6e | ...assert(payload.Float.==.<span |
| 22220 | 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> |
| 22240 | 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"> |
| 22260 | 2f 2f 20 55 6e 69 6f 6e 73 20 63 61 6e 20 62 65 20 67 69 76 65 6e 20 61 6e 20 65 6e 75 6d 20 74 | //.Unions.can.be.given.an.enum.t |
| 22280 | 61 67 20 74 79 70 65 3a 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ag.type:</span>.<span.class="tok |
| 222a0 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 43 6f 6d 70 6c 65 78 54 79 70 65 54 61 67 | -kw">const</span>.ComplexTypeTag |
| 222c0 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 | .=.<span.class="tok-kw">enum</sp |
| 222e0 | 61 6e 3e 20 7b 20 4f 6b 2c 20 4e 6f 74 4f 6b 20 7d 3b 20 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | an>.{.Ok,.NotOk.};..<span.class= |
| 22300 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 43 6f 6d 70 6c 65 78 54 79 70 | "tok-kw">const</span>.ComplexTyp |
| 22320 | 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c 2f | e.=.<span.class="tok-kw">union</ |
| 22340 | 73 70 61 6e 3e 28 43 6f 6d 70 6c 65 78 54 79 70 65 54 61 67 29 20 7b 0a 20 20 20 20 4f 6b 3a 20 | span>(ComplexTypeTag).{.....Ok:. |
| 22360 | 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> |
| 22380 | 2c 0a 20 20 20 20 4e 6f 74 4f 6b 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | ,.....NotOk:.<span.class="tok-ty |
| 223a0 | 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | pe">void</span>,.};..<span.class |
| 223c0 | 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 70 65 63 | ="tok-comment">//.Declare.a.spec |
| 223e0 | 69 66 69 63 20 69 6e 73 74 61 6e 63 65 20 6f 66 20 74 68 65 20 75 6e 69 6f 6e 20 76 61 72 69 61 | ific.instance.of.the.union.varia |
| 22400 | 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 22 3e | nt.</span>.<span.class="tok-kw"> |
| 22420 | 74 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 |
| 22440 | 22 3e 26 71 75 6f 74 3b 64 65 63 6c 61 72 65 20 75 6e 69 6f 6e 20 76 61 6c 75 65 26 71 75 6f 74 | ">"declare.union.value" |
| 22460 | 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- |
| 22480 | 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 65 | kw">const</span>.c.=.ComplexType |
| 224a0 | 20 7b 20 2e 4f 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 | .{..Ok.=.<span.class="tok-number |
| 224c0 | 22 3e 30 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 61 73 73 65 72 74 28 43 6f 6d 70 6c 65 78 | ">0</span>.};.....assert(Complex |
| 224e0 | 54 79 70 65 54 61 67 28 63 29 20 3d 3d 20 43 6f 6d 70 6c 65 78 54 79 70 65 54 61 67 2e 4f 6b 29 | TypeTag(c).==.ComplexTypeTag.Ok) |
| 22500 | 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">/ |
| 22520 | 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 |
| 22540 | 20 74 68 65 20 65 6e 75 6d 20 74 61 67 20 74 79 70 65 20 6f 66 20 61 20 75 6e 69 6f 6e 2e 3c 2f | .the.enum.tag.type.of.a.union.</ |
| 22560 | 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< |
| 22580 | 2f 73 70 61 6e 3e 20 3c 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 |
| 225a0 | 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 20 20 20 61 | ot;@TagType"</span>.{.....a |
| 225c0 | 73 73 65 72 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 | ssert(<span.class="tok-builtin"> |
| 225e0 | 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 20 3d 3d 20 | @TagType</span>(ComplexType).==. |
| 22600 | 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 61 73 73 3d | ComplexTypeTag);.}..<span.class= |
| 22620 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 55 6e 69 6f 6e 73 20 63 61 6e 20 62 65 20 6d | "tok-comment">//.Unions.can.be.m |
| 22640 | 61 64 65 20 74 6f 20 69 6e 66 65 72 20 74 68 65 20 65 6e 75 6d 20 74 61 67 20 74 79 70 65 2e 3c | ade.to.infer.the.enum.tag.type.< |
| 22660 | 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 |
| 22680 | 74 3c 2f 73 70 61 6e 3e 20 46 6f 6f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | t</span>.Foo.=.<span.class="tok- |
| 226a0 | 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 6f | kw">union</span>(<span.class="to |
| 226c0 | 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 53 74 72 69 6e 67 3a | k-kw">enum</span>).{.....String: |
| 226e0 | 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | .[]<span.class="tok-kw">const</s |
| 22700 | 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</ |
| 22720 | 73 70 61 6e 3e 2c 0a 20 20 20 20 4e 75 6d 62 65 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | span>,.....Number:.<span.class=" |
| 22740 | 74 6f 6b 2d 74 79 70 65 22 3e 75 36 34 3c 2f 73 70 61 6e 3e 2c 0a 0a 20 20 20 20 3c 73 70 61 6e | tok-type">u64</span>,......<span |
| 22760 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 76 6f 69 64 20 63 61 6e | .class="tok-comment">//.void.can |
| 22780 | 20 62 65 20 6f 6d 69 74 74 65 64 20 77 68 65 6e 20 69 6e 66 65 72 72 69 6e 67 20 65 6e 75 6d 20 | .be.omitted.when.inferring.enum. |
| 227a0 | 74 61 67 20 74 79 70 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 4e 6f 6e 65 2c 0a 7d 3b 0a 3c 73 | tag.type.</span>.....None,.};.<s |
| 227c0 | 70 61 6e 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>.< |
| 227e0 | 73 70 61 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 | span.class="tok-str">"union |
| 22800 | 20 76 61 72 69 61 6e 74 20 73 77 69 74 63 68 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | .variant.switch"</span>.{.. |
| 22820 | 20 20 20 3c 73 70 61 6e 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 |
| 22840 | 70 61 6e 3e 20 70 20 3d 20 46 6f 6f 20 7b 20 2e 4e 75 6d 62 65 72 20 3d 20 3c 73 70 61 6e 20 63 | pan>.p.=.Foo.{..Number.=.<span.c |
| 22860 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 34 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 | lass="tok-number">54</span>.};.. |
| 22880 | 20 20 20 3c 73 70 61 6e 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 |
| 228a0 | 70 61 6e 3e 20 77 68 61 74 5f 69 73 5f 69 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | pan>.what_is_it.=.<span.class="t |
| 228c0 | 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 70 29 20 7b 0a 20 20 20 20 20 | ok-kw">switch</span>.(p).{...... |
| 228e0 | 20 20 20 3c 73 70 61 6e 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">//. |
| 22900 | 43 61 70 74 75 72 65 20 62 79 20 72 65 66 65 72 65 6e 63 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | Capture.by.reference</span>..... |
| 22920 | 20 20 20 20 46 6f 6f 2e 53 74 72 69 6e 67 20 3d 26 67 74 3b 20 7c 2a 78 7c 20 62 6c 6b 3a 20 7b | ....Foo.String.=>.|*x|.blk:.{ |
| 22940 | 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 77 | .............<span.class="tok-kw |
| 22960 | 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 20 3a 62 6c 6b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ">break</span>.:blk.<span.class= |
| 22980 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 68 69 73 20 69 73 20 61 20 73 74 72 69 6e 67 | "tok-str">"this.is.a.string |
| 229a0 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 7d 2c 0a 0a 20 20 20 20 20 | "</span>;.........},....... |
| 229c0 | 20 20 20 3c 73 70 61 6e 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">//. |
| 229e0 | 43 61 70 74 75 72 65 20 62 79 20 76 61 6c 75 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 | Capture.by.value</span>......... |
| 22a00 | 46 6f 6f 2e 4e 75 6d 62 65 72 20 3d 26 67 74 3b 20 7c 78 7c 20 62 6c 6b 3a 20 7b 0a 20 20 20 20 | Foo.Number.=>.|x|.blk:.{..... |
| 22a20 | 20 20 20 20 20 20 20 20 61 73 73 65 72 74 28 78 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ........assert(x.==.<span.class= |
| 22a40 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 | "tok-number">54</span>);........ |
| 22a60 | 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c | .....<span.class="tok-kw">break< |
| 22a80 | 2f 73 70 61 6e 3e 20 3a 62 6c 6b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | /span>.:blk.<span.class="tok-str |
| 22aa0 | 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 75 6f 74 3b 3c 2f | ">"this.is.a.number"</ |
| 22ac0 | 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 7d 2c 0a 0a 20 20 20 20 20 20 20 20 46 6f 6f 2e 4e | span>;.........},..........Foo.N |
| 22ae0 | 6f 6e 65 20 3d 26 67 74 3b 20 62 6c 6b 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 | one.=>.blk:.{.............<sp |
| 22b00 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 20 3a | an.class="tok-kw">break</span>.: |
| 22b20 | 62 6c 6b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b | blk.<span.class="tok-str">" |
| 22b40 | 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 3b 0a 20 20 20 | this.is.a.none"</span>;.... |
| 22b60 | 20 20 20 20 20 7d 2c 0a 20 20 20 20 7d 3b 0a 20 20 20 20 61 73 73 65 72 74 28 6d 65 6d 2e 65 71 | .....},.....};.....assert(mem.eq |
| 22b80 | 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 | l(<span.class="tok-type">u8</spa |
| 22ba0 | 6e 3e 2c 20 77 68 61 74 5f 69 73 5f 69 74 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | n>,.what_is_it,.<span.class="tok |
| 22bc0 | 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 75 6f | -str">"this.is.a.number&quo |
| 22be0 | 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 |
| 22c00 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 55 6e 69 6f 6e 73 20 63 61 6e 20 68 61 76 65 20 6d 65 74 | -comment">//.Unions.can.have.met |
| 22c20 | 68 6f 64 73 20 6a 75 73 74 20 6c 69 6b 65 20 73 74 72 75 63 74 73 20 61 6e 64 20 65 6e 75 6d 73 | hods.just.like.structs.and.enums |
| 22c40 | 3a 3c 2f 73 70 61 6e 3e 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | :</span>..<span.class="tok-kw">c |
| 22c60 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 56 61 72 69 61 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | onst</span>.Variant.=.<span.clas |
| 22c80 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c | s="tok-kw">union</span>(<span.cl |
| 22ca0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 | ass="tok-kw">enum</span>).{..... |
| 22cc0 | 49 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c | Int:.<span.class="tok-type">i32< |
| 22ce0 | 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 42 6f 6f 6c 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | /span>,.....Bool:.<span.class="t |
| 22d00 | 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 0a 0a 20 20 20 20 3c 73 70 61 6e | ok-type">bool</span>,......<span |
| 22d20 | 20 63 6c 61 73 73 3d 22 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. |
| 22d40 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 74 72 75 74 68 79 3c 2f 73 70 61 6e 3e 28 73 65 6c | class="tok-fn">truthy</span>(sel |
| 22d60 | 66 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | f:.*<span.class="tok-kw">const</ |
| 22d80 | 73 70 61 6e 3e 20 56 61 72 69 61 6e 74 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | span>.Variant).<span.class="tok- |
| 22da0 | 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 | type">bool</span>.{.........<spa |
| 22dc0 | 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>.< |
| 22de0 | 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 |
| 22e00 | 3e 20 28 73 65 6c 66 2e 2a 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 56 61 72 69 61 6e 74 | >.(self.*).{.............Variant |
| 22e20 | 2e 49 6e 74 20 3d 26 67 74 3b 20 7c 78 5f 69 6e 74 7c 20 78 5f 69 6e 74 20 21 3d 20 3c 73 70 61 | .Int.=>.|x_int|.x_int.!=.<spa |
| 22e40 | 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>,.. |
| 22e60 | 20 20 20 20 20 20 20 20 20 20 20 56 61 72 69 61 6e 74 2e 42 6f 6f 6c 20 3d 26 67 74 3b 20 7c 78 | ...........Variant.Bool.=>.|x |
| 22e80 | 5f 62 6f 6f 6c 7c 20 78 5f 62 6f 6f 6c 2c 0a 20 20 20 20 20 20 20 20 7d 3b 0a 20 20 20 20 7d 0a | _bool|.x_bool,.........};.....}. |
| 22ea0 | 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 |
| 22ec0 | 70 61 6e 3e 20 3c 73 70 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">" |
| 22ee0 | 3b 75 6e 69 6f 6e 20 6d 65 74 68 6f 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | ;union.method"</span>.{.... |
| 22f00 | 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> |
| 22f20 | 20 76 31 20 3d 20 56 61 72 69 61 6e 74 20 7b 20 2e 49 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | .v1.=.Variant.{..Int.=.<span.cla |
| 22f40 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 | ss="tok-number">1</span>.};..... |
| 22f60 | 3c 73 70 61 6e 20 63 6c 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>. |
| 22f80 | 76 32 20 3d 20 56 61 72 69 61 6e 74 20 7b 20 2e 42 6f 6f 6c 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | v2.=.Variant.{..Bool.=.<span.cla |
| 22fa0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 0a 20 | ss="tok-null">false</span>.};... |
| 22fc0 | 20 20 20 61 73 73 65 72 74 28 76 31 2e 74 72 75 74 68 79 28 29 29 3b 0a 20 20 20 20 61 73 73 65 | ...assert(v1.truthy());.....asse |
| 22fe0 | 72 74 28 21 76 32 2e 74 72 75 74 68 79 28 29 29 3b 0a 7d 0a 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | rt(!v2.truthy());.}...<span.clas |
| 23000 | 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 6d 61 6c 6c 20 3d 20 | s="tok-kw">const</span>.Small.=. |
| 23020 | 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 |
| 23040 | 3e 20 7b 0a 20 20 20 20 41 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | >.{.....A:.<span.class="tok-type |
| 23060 | 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 42 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ">i32</span>,.....B:.<span.class |
| 23080 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 43 3a 20 | ="tok-type">bool</span>,.....C:. |
| 230a0 | 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> |
| 230c0 | 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"> |
| 230e0 | 2f 2f 20 40 6d 65 6d 62 65 72 43 6f 75 6e 74 20 74 65 6c 6c 73 20 68 6f 77 20 6d 61 6e 79 20 66 | //.@memberCount.tells.how.many.f |
| 23100 | 69 65 6c 64 73 20 61 20 75 6e 69 6f 6e 20 68 61 73 3a 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 | ields.a.union.has:</span>.<span. |
| 23120 | 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 |
| 23140 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 40 6d 65 6d 62 65 72 43 6f | .class="tok-str">"@memberCo |
| 23160 | 75 6e 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 72 74 28 3c 73 | unt"</span>.{.....assert(<s |
| 23180 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6d 65 6d 62 65 72 43 | pan.class="tok-builtin">@memberC |
| 231a0 | 6f 75 6e 74 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 | ount</span>(Small).==.<span.clas |
| 231c0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 | s="tok-number">3</span>);.}..<sp |
| 231e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 40 6d 65 6d 62 65 | an.class="tok-comment">//.@membe |
| 23200 | 72 4e 61 6d 65 20 74 65 6c 6c 73 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 61 20 66 69 65 6c 64 20 | rName.tells.the.name.of.a.field. |
| 23220 | 69 6e 20 61 6e 20 65 6e 75 6d 3a 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | in.an.enum:</span>.<span.class=" |
| 23240 | 74 6f 6b 2d 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= |
| 23260 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 40 6d 65 6d 62 65 72 4e 61 6d 65 26 71 75 6f 74 | "tok-str">"@memberName" |
| 23280 | 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 72 74 28 6d 65 6d 2e 65 71 6c 28 3c 73 | ;</span>.{.....assert(mem.eql(<s |
| 232a0 | 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>,. |
| 232c0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6d 65 6d 62 65 | <span.class="tok-builtin">@membe |
| 232e0 | 72 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 53 6d 61 6c 6c 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | rName</span>(Small,.<span.class= |
| 23300 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 2c 20 3c 73 70 61 6e 20 63 6c | "tok-number">1</span>),.<span.cl |
| 23320 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 42 26 71 75 6f 74 3b 3c 2f 73 70 61 | ass="tok-str">"B"</spa |
| 23340 | 6e 3e 29 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e | n>));.}..<span.class="tok-commen |
| 23360 | 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 63 6f 6e 73 74 20 75 | t">//.@tagName.gives.a.[]const.u |
| 23380 | 38 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 6f 66 20 61 6e 20 65 6e 75 6d 20 76 61 6c 75 | 8.representation.of.an.enum.valu |
| 233a0 | 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 6b 2d 63 6f 6d 6d 65 | e,</span>.<span.class="tok-comme |
| 233c0 | 6e 74 22 3e 2f 2f 20 62 75 74 20 6f 6e 6c 79 20 69 66 20 74 68 65 20 75 6e 69 6f 6e 20 68 61 73 | nt">//.but.only.if.the.union.has |
| 233e0 | 20 61 6e 20 65 6e 75 6d 20 74 61 67 20 74 79 70 65 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 | .an.enum.tag.type.</span>.<span. |
| 23400 | 63 6c 61 73 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 6d 61 6c | class="tok-kw">const</span>.Smal |
| 23420 | 6c 32 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c | l2.=.<span.class="tok-kw">union< |
| 23440 | 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 |
| 23460 | 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 41 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | </span>).{.....A:.<span.class="t |
| 23480 | 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 42 3a 20 3c 73 70 61 | ok-type">i32</span>,.....B:.<spa |
| 234a0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 0a | n.class="tok-type">bool</span>,. |
| 234c0 | 20 20 20 20 43 3a 20 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 | ....C:.<span.class="tok-type">u8 |
| 234e0 | 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" |
| 23500 | 3e 74 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 |
| 23520 | 72 22 3e 26 71 75 6f 74 3b 40 74 61 67 4e 61 6d 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b | r">"@tagName"</span>.{ |
| 23540 | 0a 20 20 20 20 61 73 73 65 72 74 28 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .....assert(mem.eql(<span.class= |
| 23560 | 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 |
| 23580 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 61 67 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 | s="tok-builtin">@tagName</span>( |
| 235a0 | 53 6d 61 6c 6c 32 2e 43 29 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | Small2.C),.<span.class="tok-str" |
| 235c0 | 3e 26 71 75 6f 74 3b 43 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 7d 3c 2f 63 6f 64 65 | >"C"</span>));.}</code |
| 235e0 | 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"> |
| 23600 | 24 20 7a 69 67 20 74 65 73 74 20 75 6e 69 6f 6e 2e 7a 69 67 0a 54 65 73 74 20 31 2f 38 20 73 69 | $.zig.test.union.zig.Test.1/8.si |
| 23620 | 6d 70 6c 65 20 75 6e 69 6f 6e 2e 2e 2e 4f 4b 0a 54 65 73 74 20 32 2f 38 20 64 65 63 6c 61 72 65 | mple.union...OK.Test.2/8.declare |
| 23640 | 20 75 6e 69 6f 6e 20 76 61 6c 75 65 2e 2e 2e 4f 4b 0a 54 65 73 74 20 33 2f 38 20 40 54 61 67 54 | .union.value...OK.Test.3/8.@TagT |
| 23660 | 79 70 65 2e 2e 2e 4f 4b 0a 54 65 73 74 20 34 2f 38 20 75 6e 69 6f 6e 20 76 61 72 69 61 6e 74 20 | ype...OK.Test.4/8.union.variant. |
| 23680 | 73 77 69 74 63 68 2e 2e 2e 4f 4b 0a 54 65 73 74 20 35 2f 38 20 75 6e 69 6f 6e 20 6d 65 74 68 6f | switch...OK.Test.5/8.union.metho |
| 236a0 | 64 2e 2e 2e 4f 4b 0a 54 65 73 74 20 36 2f 38 20 40 6d 65 6d 62 65 72 43 6f 75 6e 74 2e 2e 2e 4f | d...OK.Test.6/8.@memberCount...O |
| 236c0 | 4b 0a 54 65 73 74 20 37 2f 38 20 40 6d 65 6d 62 65 72 4e 61 6d 65 2e 2e 2e 4f 4b 0a 54 65 73 74 | K.Test.7/8.@memberName...OK.Test |
| 236e0 | 20 38 2f 38 20 40 74 61 67 4e 61 6d 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 74 65 73 74 73 20 70 61 73 | .8/8.@tagName...OK.All.tests.pas |
| 23700 | 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>... |
| 23720 | 20 20 20 20 55 6e 69 6f 6e 73 20 77 69 74 68 20 61 6e 20 65 6e 75 6d 20 74 61 67 20 61 72 65 20 | ....Unions.with.an.enum.tag.are. |
| 23740 | 67 65 6e 65 72 61 74 65 64 20 61 73 20 61 20 73 74 72 75 63 74 20 77 69 74 68 20 61 20 74 61 67 | generated.as.a.struct.with.a.tag |
| 23760 | 20 66 69 65 6c 64 20 61 6e 64 20 75 6e 69 6f 6e 20 66 69 65 6c 64 2e 20 5a 69 67 0a 20 20 20 20 | .field.and.union.field..Zig..... |
| 23780 | 20 20 73 6f 72 74 73 20 74 68 65 20 6f 72 64 65 72 20 6f 66 20 74 68 65 20 74 61 67 20 61 6e 64 | ..sorts.the.order.of.the.tag.and |
| 237a0 | 20 75 6e 69 6f 6e 20 66 69 65 6c 64 20 62 79 20 74 68 65 20 6c 61 72 67 65 73 74 20 61 6c 69 67 | .union.field.by.the.largest.alig |
| 237c0 | 6e 6d 65 6e 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c | nment........</p>..............< |
| 237e0 | 68 31 20 69 64 3d 22 62 6c 6f 63 6b 73 22 3e 62 6c 6f 63 6b 73 3c 2f 68 31 3e 0a 0a 20 20 20 20 | h1.id="blocks">blocks</h1>...... |
| 23800 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 42 6c 6f 63 6b 73 20 61 72 65 20 75 73 65 64 20 74 6f 20 6c | ..<p>.......Blocks.are.used.to.l |
| 23820 | 69 6d 69 74 20 74 68 65 20 73 63 6f 70 65 20 6f 66 20 76 61 72 69 61 62 6c 65 20 64 65 63 6c 61 | imit.the.scope.of.variable.decla |
| 23840 | 72 61 74 69 6f 6e 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 | rations:.......</p>.......<p.cla |
| 23860 | 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 |
| 23880 | 20 63 6c 61 73 73 3d 22 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 |
| 238a0 | 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 |
| 238c0 | 74 72 22 3e 26 71 75 6f 74 3b 61 63 63 65 73 73 20 76 61 72 69 61 62 6c 65 20 61 66 74 65 72 20 | tr">"access.variable.after. |
| 238e0 | 62 6c 6f 63 6b 20 73 63 6f 70 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 7b | block.scope"</span>.{.....{ |
| 23900 | 0a 20 20 20 20 20 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 |
| 23920 | 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 |
| 23940 | 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 |
| 23960 | 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 20 20 20 20 78 20 2b | -number">1</span>;.....}.....x.+ |
| 23980 | 3d 20 3c 73 70 61 6e 20 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 |
| 239a0 | 61 6e 3e 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c | an>;.}</code></pre><pre><code.cl |
| 239c0 | 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. |
| 239e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 | <span.class="t0_1">/home/andy/de |
| 23a00 | 76 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 35 3a 20 3c | v/zig/docgen_tmp/test.zig:5:5:.< |
| 23a20 | 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: |
| 23a40 | 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 20 75 73 65 20 6f | </span><span.class="t0_1">.use.o |
| 23a60 | 66 20 75 6e 64 65 63 6c 61 72 65 64 20 69 64 65 6e 74 69 66 69 65 72 20 27 78 27 3c 2f 73 70 61 | f.undeclared.identifier.'x'</spa |
| 23a80 | 6e 3e 0a 20 20 20 20 78 20 2b 3d 20 31 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | n>.....x.+=.1;.....<span.class=" |
| 23aa0 | 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>... |
| 23ac0 | 20 20 20 20 20 3c 70 3e 42 6c 6f 63 6b 73 20 61 72 65 20 65 78 70 72 65 73 73 69 6f 6e 73 2e 20 | .....<p>Blocks.are.expressions.. |
| 23ae0 | 57 68 65 6e 20 6c 61 62 65 6c 65 64 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | When.labeled,.<code.class="zig"> |
| 23b00 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e | <span.class="tok-kw">break</span |
| 23b20 | 3e 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 75 73 65 64 0a 20 20 20 20 20 20 74 6f 20 72 65 | ></code>.can.be.used.......to.re |
| 23b40 | 74 75 72 6e 20 61 20 76 61 6c 75 65 20 66 72 6f 6d 20 74 68 65 20 62 6c 6f 63 6b 3a 0a 20 20 20 | turn.a.value.from.the.block:.... |
| 23b60 | 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 |
| 23b80 | 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" |
| 23ba0 | 3e 3c 73 70 61 6e 20 63 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 |
| 23bc0 | 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 |
| 23be0 | 6e 22 3e 40 69 6d 70 6f 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 |
| 23c00 | 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>); |
| 23c20 | 0a 3c 73 70 61 6e 20 63 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 |
| 23c40 | 6e 3e 20 61 73 73 65 72 74 20 3d 20 73 74 64 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 0a 3c | n>.assert.=.std.debug.assert;..< |
| 23c60 | 73 70 61 6e 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>. |
| 23c80 | 3c 73 70 61 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 | <span.class="tok-str">"labe |
| 23ca0 | 6c 65 64 20 62 72 65 61 6b 20 66 72 6f 6d 20 6c 61 62 65 6c 65 64 20 62 6c 6f 63 6b 20 65 78 70 | led.break.from.labeled.block.exp |
| 23cc0 | 72 65 73 73 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e | ression"</span>.{.....<span |
| 23ce0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 79 3a 20 3c 73 | .class="tok-kw">var</span>.y:.<s |
| 23d00 | 70 61 6e 20 63 6c 61 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>. |
| 23d20 | 3d 20 3c 73 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 | =.<span.class="tok-number">123</ |
| 23d40 | 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | span>;......<span.class="tok-kw" |
| 23d60 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 20 3d 20 62 6c 6b 3a 20 7b 0a 20 20 20 20 20 20 20 | >const</span>.x.=.blk:.{........ |
| 23d80 | 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 22 3e 31 | .y.+=.<span.class="tok-number">1 |
| 23da0 | 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | </span>;.........<span.class="to |
| 23dc0 | 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 20 3a 62 6c 6b 20 79 3b 0a 20 20 20 20 7d | k-kw">break</span>.:blk.y;.....} |
| 23de0 | 3b 0a 20 20 20 20 61 73 73 65 72 74 28 78 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ;.....assert(x.==.<span.class="t |
| 23e00 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 34 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 61 73 73 65 | ok-number">124</span>);.....asse |
| 23e20 | 72 74 28 79 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | rt(y.==.<span.class="tok-number" |
| 23e40 | 3e 31 32 34 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 | >124</span>);.}</code></pre><pre |
| 23e60 | 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 | ><code.class="shell">$.zig.test. |
| 23e80 | 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 31 2f 31 20 6c 61 62 65 6c 65 64 20 62 72 65 61 6b 20 | test.zig.Test.1/1.labeled.break. |
| 23ea0 | 66 72 6f 6d 20 6c 61 62 65 6c 65 64 20 62 6c 6f 63 6b 20 65 78 70 72 65 73 73 69 6f 6e 2e 2e 2e | from.labeled.block.expression... |
| 23ec0 | 4f 4b 0a 41 6c 6c 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 | OK.All.tests.passed..</code></pr |
| 23ee0 | 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 48 65 72 65 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | e>........<p>Here,.<code.class=" |
| 23f00 | 7a 69 67 22 3e 62 6c 6b 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 61 6e 79 20 6e 61 6d 65 2e | zig">blk</code>.can.be.any.name. |
| 23f20 | 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>. |
| 23f40 | 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 4c 61 62 65 6c 65 64 2d 77 68 69 6c 65 22 3e 4c 61 62 | <li><a.href="#Labeled-while">Lab |
| 23f60 | 65 6c 65 64 20 77 68 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d | eled.while</a></li>.<li><a.href= |
| 23f80 | 22 23 4c 61 62 65 6c 65 64 2d 66 6f 72 22 3e 4c 61 62 65 6c 65 64 20 66 6f 72 3c 2f 61 3e 3c 2f | "#Labeled-for">Labeled.for</a></ |
| 23fa0 | 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=" |
| 23fc0 | 73 77 69 74 63 68 22 3e 73 77 69 74 63 68 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 20 63 6c | switch">switch</h1>........<p.cl |
| 23fe0 | 61 73 73 3d 22 66 69 6c 65 22 3e 73 77 69 74 63 68 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 | ass="file">switch.zig</p><pre><c |
| 24000 | 6f 64 65 20 63 6c 61 73 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 |
| 24020 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 3c 73 70 61 6e | -kw">const</span>.assert.=.<span |
| 24040 | 20 63 6c 61 73 73 3d 22 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 |
| 24060 | 61 6e 3e 28 3c 73 70 61 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">" |
| 24080 | 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 0a | std"</span>).debug.assert;. |
| 240a0 | 3c 73 70 61 6e 20 63 6c 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 |
| 240c0 | 3e 20 62 75 69 6c 74 69 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | >.builtin.=.<span.class="tok-bui |
| 240e0 | 6c 74 69 6e 22 3e 40 69 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 |
| 24100 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 75 69 6c 74 69 6e 26 71 75 6f 74 3b 3c 2f | ="tok-str">"builtin"</ |
| 24120 | 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 | span>);..<span.class="tok-kw">te |
| 24140 | 73 74 3c 2f 73 70 61 6e 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"> |
| 24160 | 26 71 75 6f 74 3b 73 77 69 74 63 68 20 73 69 6d 70 6c 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | "switch.simple"</span> |
| 24180 | 20 7b 0a 20 20 20 20 3c 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 |
| 241a0 | 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 |
| 241c0 | 65 22 3e 75 36 34 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | e">u64</span>.=.<span.class="tok |
| 241e0 | 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 |
| 24200 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 7a 7a 3a 20 3c 73 | ass="tok-kw">const</span>.zz:.<s |
| 24220 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 36 34 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-type">u64</span>. |
| 24240 | 3d 20 3c 73 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 33 3c 2f | =.<span.class="tok-number">103</ |
| 24260 | 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d | span>;......<span.class="tok-com |
| 24280 | 6d 65 6e 74 22 3e 2f 2f 20 41 6c 6c 20 62 72 61 6e 63 68 65 73 20 6f 66 20 61 20 73 77 69 74 63 | ment">//.All.branches.of.a.switc |
| 242a0 | 68 20 65 78 70 72 65 73 73 69 6f 6e 20 6d 75 73 74 20 62 65 20 61 62 6c 65 20 74 6f 20 62 65 20 | h.expression.must.be.able.to.be. |
| 242c0 | 63 6f 65 72 63 65 64 20 74 6f 20 61 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | coerced.to.a</span>.....<span.cl |
| 242e0 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 63 6f 6d 6d 6f 6e 20 74 79 70 65 | ass="tok-comment">//.common.type |
| 24300 | 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f | .</span>.....<span.class="tok-co |
| 24320 | 6d 6d 65 6e 74 22 3e 2f 2f 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | mment">//</span>.....<span.class |
| 24340 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 42 72 61 6e 63 68 65 73 20 63 61 6e 6e 6f | ="tok-comment">//.Branches.canno |
| 24360 | 74 20 66 61 6c 6c 74 68 72 6f 75 67 68 2e 20 49 66 20 66 61 6c 6c 74 68 72 6f 75 67 68 20 62 65 | t.fallthrough..If.fallthrough.be |
| 24380 | 68 61 76 69 6f 72 20 69 73 20 64 65 73 69 72 65 64 2c 20 63 6f 6d 62 69 6e 65 3c 2f 73 70 61 6e | havior.is.desired,.combine</span |
| 243a0 | 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"> |
| 243c0 | 2f 2f 20 74 68 65 20 63 61 73 65 73 20 61 6e 64 20 75 73 65 20 61 6e 20 69 66 2e 3c 2f 73 70 61 | //.the.cases.and.use.an.if.</spa |
| 243e0 | 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 |
| 24400 | 74 3c 2f 73 70 61 6e 3e 20 62 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | t</span>.b.=.<span.class="tok-kw |
| 24420 | 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 61 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 | ">switch</span>.(a).{.........<s |
| 24440 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4d 75 6c 74 69 | pan.class="tok-comment">//.Multi |
| 24460 | 70 6c 65 20 63 61 73 65 73 20 63 61 6e 20 62 65 20 63 6f 6d 62 69 6e 65 64 20 76 69 61 20 61 20 | ple.cases.can.be.combined.via.a. |
| 24480 | 27 2c 27 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 | ','</span>.........<span.class=" |
| 244a0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-number">1</span>,.<span.clas |
| 244c0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 | s="tok-number">2</span>,.<span.c |
| 244e0 | 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 26 67 74 3b | lass="tok-number">3</span>.=> |
| 24500 | 20 3c 73 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 |
| 24520 | 6e 3e 2c 0a 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f | n>,..........<span.class="tok-co |
| 24540 | 6d 6d 65 6e 74 22 3e 2f 2f 20 52 61 6e 67 65 73 20 63 61 6e 20 62 65 20 73 70 65 63 69 66 69 65 | mment">//.Ranges.can.be.specifie |
| 24560 | 64 20 75 73 69 6e 67 20 74 68 65 20 2e 2e 2e 20 73 79 6e 74 61 78 2e 20 54 68 65 73 65 20 61 72 | d.using.the.....syntax..These.ar |
| 24580 | 65 20 69 6e 63 6c 75 73 69 76 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e | e.inclusive</span>.........<span |
| 245a0 | 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 74 68 20 65 6e 64 | .class="tok-comment">//.both.end |
| 245c0 | 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | s.</span>.........<span.class="t |
| 245e0 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 20 2e 2e 2e 20 3c 73 70 61 6e 20 63 6c | ok-number">5</span>.....<span.cl |
| 24600 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 30 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 | ass="tok-number">100</span>.=> |
| 24620 | 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 | ;.<span.class="tok-number">1</sp |
| 24640 | 61 6e 3e 2c 0a 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | an>,..........<span.class="tok-c |
| 24660 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 42 72 61 6e 63 68 65 73 20 63 61 6e 20 62 65 20 61 72 62 69 74 | omment">//.Branches.can.be.arbit |
| 24680 | 72 61 72 69 6c 79 20 63 6f 6d 70 6c 65 78 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c | rarily.complex.</span>.........< |
| 246a0 | 73 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 31 3c 2f 73 70 61 | span.class="tok-number">101</spa |
| 246c0 | 6e 3e 20 3d 26 67 74 3b 20 62 6c 6b 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 | n>.=>.blk:.{.............<spa |
| 246e0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 3a | n.class="tok-kw">const</span>.c: |
| 24700 | 20 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 |
| 24720 | 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 3c | n>.=.<span.class="tok-number">5< |
| 24740 | 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | /span>;.............<span.class= |
| 24760 | 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 63 20 2a 20 3c | "tok-kw">break</span>.:blk.c.*.< |
| 24780 | 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> |
| 247a0 | 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 | .+.<span.class="tok-number">1</s |
| 247c0 | 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 7d 2c 0a 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | pan>;.........},..........<span. |
| 247e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 77 69 74 63 68 69 6e 67 | class="tok-comment">//.Switching |
| 24800 | 20 6f 6e 20 61 72 62 69 74 72 61 72 79 20 65 78 70 72 65 73 73 69 6f 6e 73 20 69 73 20 61 6c 6c | .on.arbitrary.expressions.is.all |
| 24820 | 6f 77 65 64 20 61 73 20 6c 6f 6e 67 20 61 73 20 74 68 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 | owed.as.long.as.the</span>...... |
| 24840 | 20 20 20 3c 73 70 61 6e 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">//. |
| 24860 | 65 78 70 72 65 73 73 69 6f 6e 20 69 73 20 6b 6e 6f 77 6e 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 | expression.is.known.at.compile-t |
| 24880 | 69 6d 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 7a 7a 20 3d 26 67 74 3b 20 7a 7a 2c | ime.</span>.........zz.=>.zz, |
| 248a0 | 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | .........<span.class="tok-kw">co |
| 248c0 | 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 62 6c 6b 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 | mptime</span>.blk:.{............ |
| 248e0 | 20 3c 73 70 61 6e 20 63 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 |
| 24900 | 6e 3e 20 64 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 | n>.d:.<span.class="tok-type">u32 |
| 24920 | 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 |
| 24940 | 72 22 3e 35 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | r">5</span>;.............<span.c |
| 24960 | 6c 61 73 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 3a 20 3c 73 | lass="tok-kw">const</span>.e:.<s |
| 24980 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-type">u32</span>. |
| 249a0 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 30 3c 2f | =.<span.class="tok-number">100</ |
| 249c0 | 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | span>;.............<span.class=" |
| 249e0 | 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 64 20 2b 20 65 3b | tok-kw">break</span>.:blk.d.+.e; |
| 24a00 | 0a 20 20 20 20 20 20 20 20 7d 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .........}.=>.<span.class="to |
| 24a20 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 37 3c 2f 73 70 61 6e 3e 2c 0a 0a 20 20 20 20 20 20 20 20 3c | k-number">107</span>,..........< |
| 24a40 | 73 70 61 6e 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. |
| 24a60 | 65 6c 73 65 20 62 72 61 6e 63 68 20 63 61 74 63 68 65 73 20 65 76 65 72 79 74 68 69 6e 67 20 6e | else.branch.catches.everything.n |
| 24a80 | 6f 74 20 61 6c 72 65 61 64 79 20 63 61 70 74 75 72 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | ot.already.captured.</span>..... |
| 24aa0 | 20 20 20 20 3c 73 70 61 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">// |
| 24ac0 | 20 45 6c 73 65 20 62 72 61 6e 63 68 65 73 20 61 72 65 20 6d 61 6e 64 61 74 6f 72 79 20 75 6e 6c | .Else.branches.are.mandatory.unl |
| 24ae0 | 65 73 73 20 74 68 65 20 65 6e 74 69 72 65 20 72 61 6e 67 65 20 6f 66 20 76 61 6c 75 65 73 3c 2f | ess.the.entire.range.of.values</ |
| 24b00 | 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 |
| 24b20 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 69 73 20 68 61 6e 64 6c 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 | omment">//.is.handled.</span>... |
| 24b40 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c | ......<span.class="tok-kw">else< |
| 24b60 | 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | /span>.=>.<span.class="tok-nu |
| 24b80 | 6d 62 65 72 22 3e 39 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 20 61 73 73 65 | mber">9</span>,.....};......asse |
| 24ba0 | 72 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 | rt(b.==.<span.class="tok-number" |
| 24bc0 | 3e 31 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | >1</span>);.}..<span.class="tok- |
| 24be0 | 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 |
| 24c00 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 77 69 74 63 68 20 65 6e 75 6d 26 71 75 6f 74 3b 3c 2f 73 | -str">"switch.enum"</s |
| 24c20 | 70 61 6e 3e 20 7b 0a 20 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"> |
| 24c40 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 49 74 65 6d 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | const</span>.Item.=.<span.class= |
| 24c60 | 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 | "tok-kw">union</span>(<span.clas |
| 24c80 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 | s="tok-kw">enum</span>).{....... |
| 24ca0 | 20 20 41 3a 20 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< |
| 24cc0 | 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 43 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | /span>,.........C:.<span.class=" |
| 24ce0 | 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 20 78 3a 20 3c 73 70 61 6e | tok-kw">struct</span>.{.x:.<span |
| 24d00 | 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 79 3a 20 | .class="tok-type">u8</span>,.y:. |
| 24d20 | 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> |
| 24d40 | 20 7d 2c 0a 20 20 20 20 20 20 20 20 44 2c 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e | .},.........D,.....};......<span |
| 24d60 | 20 63 6c 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 20 3d 20 49 | .class="tok-kw">var</span>.a.=.I |
| 24d80 | 74 65 6d 20 7b 20 2e 41 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | tem.{..A.=.<span.class="tok-numb |
| 24da0 | 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | er">3</span>.};......<span.class |
| 24dc0 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 77 69 74 63 68 69 6e 67 20 6f 6e 20 6d | ="tok-comment">//.Switching.on.m |
| 24de0 | 6f 72 65 20 63 6f 6d 70 6c 65 78 20 65 6e 75 6d 73 20 69 73 20 61 6c 6c 6f 77 65 64 2e 3c 2f 73 | ore.complex.enums.is.allowed.</s |
| 24e00 | 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | pan>.....<span.class="tok-kw">co |
| 24e20 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | nst</span>.b.=.<span.class="tok- |
| 24e40 | 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 61 29 20 7b 0a 20 20 20 20 20 20 20 20 | kw">switch</span>.(a).{......... |
| 24e60 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 41 20 63 | <span.class="tok-comment">//.A.c |
| 24e80 | 61 70 74 75 72 65 20 67 72 6f 75 70 20 69 73 20 61 6c 6c 6f 77 65 64 20 6f 6e 20 61 20 6d 61 74 | apture.group.is.allowed.on.a.mat |
| 24ea0 | 63 68 2c 20 61 6e 64 20 77 69 6c 6c 20 72 65 74 75 72 6e 20 74 68 65 20 65 6e 75 6d 3c 2f 73 70 | ch,.and.will.return.the.enum</sp |
| 24ec0 | 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d | an>.........<span.class="tok-com |
| 24ee0 | 6d 65 6e 74 22 3e 2f 2f 20 76 61 6c 75 65 20 6d 61 74 63 68 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 | ment">//.value.matched.</span>.. |
| 24f00 | 20 20 20 20 20 20 20 49 74 65 6d 2e 41 20 3d 26 67 74 3b 20 7c 69 74 65 6d 7c 20 69 74 65 6d 2c | .......Item.A.=>.|item|.item, |
| 24f20 | 0a 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 | ..........<span.class="tok-comme |
| 24f40 | 6e 74 22 3e 2f 2f 20 41 20 72 65 66 65 72 65 6e 63 65 20 74 6f 20 74 68 65 20 6d 61 74 63 68 65 | nt">//.A.reference.to.the.matche |
| 24f60 | 64 20 76 61 6c 75 65 20 63 61 6e 20 62 65 20 6f 62 74 61 69 6e 65 64 20 75 73 69 6e 67 20 60 2a | d.value.can.be.obtained.using.`* |
| 24f80 | 60 20 73 79 6e 74 61 78 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 49 74 65 6d 2e 43 20 | `.syntax.</span>.........Item.C. |
| 24fa0 | 3d 26 67 74 3b 20 7c 2a 69 74 65 6d 7c 20 62 6c 6b 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 | =>.|*item|.blk:.{............ |
| 24fc0 | 20 69 74 65 6d 2e 2a 2e 78 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | .item.*.x.+=.<span.class="tok-nu |
| 24fe0 | 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 | mber">1</span>;.............<spa |
| 25000 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 20 3a 62 | n.class="tok-kw">break</span>.:b |
| 25020 | 6c 6b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 3c 2f 73 | lk.<span.class="tok-number">6</s |
| 25040 | 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 7d 2c 0a 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | pan>;.........},..........<span. |
| 25060 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4e 6f 20 65 6c 73 65 20 69 | class="tok-comment">//.No.else.i |
| 25080 | 73 20 72 65 71 75 69 72 65 64 20 69 66 20 74 68 65 20 74 79 70 65 73 20 63 61 73 65 73 20 77 61 | s.required.if.the.types.cases.wa |
| 250a0 | 73 20 65 78 68 61 75 73 74 69 76 65 6c 79 20 68 61 6e 64 6c 65 64 3c 2f 73 70 61 6e 3e 0a 20 20 | s.exhaustively.handled</span>... |
| 250c0 | 20 20 20 20 20 20 49 74 65 6d 2e 44 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ......Item.D.=>.<span.class=" |
| 250e0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 0a 20 20 | tok-number">8</span>,.....};.... |
| 25100 | 20 20 61 73 73 65 72 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 | ..assert(b.==.<span.class="tok-n |
| 25120 | 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | umber">3</span>);.}..<span.class |
| 25140 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 53 77 69 74 63 68 20 65 78 70 72 65 73 73 | ="tok-comment">//.Switch.express |
| 25160 | 69 6f 6e 73 20 63 61 6e 20 62 65 20 75 73 65 64 20 6f 75 74 73 69 64 65 20 61 20 66 75 6e 63 74 | ions.can.be.used.outside.a.funct |
| 25180 | 69 6f 6e 3a 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ion:</span>.<span.class="tok-kw" |
| 251a0 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6f 73 5f 6d 73 67 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | >const</span>.os_msg.=.<span.cla |
| 251c0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 62 75 69 6c 74 | ss="tok-kw">switch</span>.(built |
| 251e0 | 69 6e 2e 6f 73 29 20 7b 0a 20 20 20 20 62 75 69 6c 74 69 6e 2e 4f 73 2e 6c 69 6e 75 78 20 3d 26 | in.os).{.....builtin.Os.linux.=& |
| 25200 | 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">" |
| 25220 | 77 65 20 66 6f 75 6e 64 20 61 20 6c 69 6e 75 78 20 75 73 65 72 26 71 75 6f 74 3b 3c 2f 73 70 61 | we.found.a.linux.user"</spa |
| 25240 | 6e 3e 2c 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 | n>,.....<span.class="tok-kw">els |
| 25260 | 65 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | e</span>.=>.<span.class="tok- |
| 25280 | 73 74 72 22 3e 26 71 75 6f 74 3b 6e 6f 74 20 61 20 6c 69 6e 75 78 20 75 73 65 72 26 71 75 6f 74 | str">"not.a.linux.user" |
| 252a0 | 3b 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | ;</span>,.};..<span.class="tok-c |
| 252c0 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 6e 73 69 64 65 20 61 20 66 75 6e 63 74 69 6f 6e 2c 20 73 77 | omment">//.Inside.a.function,.sw |
| 252e0 | 69 74 63 68 20 73 74 61 74 65 6d 65 6e 74 73 20 69 6d 70 6c 69 63 69 74 6c 79 20 61 72 65 20 63 | itch.statements.implicitly.are.c |
| 25300 | 6f 6d 70 69 6c 65 2d 74 69 6d 65 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ompile-time</span>.<span.class=" |
| 25320 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 65 76 61 6c 75 61 74 65 64 20 69 66 20 74 68 65 | tok-comment">//.evaluated.if.the |
| 25340 | 20 74 61 72 67 65 74 20 65 78 70 72 65 73 73 69 6f 6e 20 69 73 20 63 6f 6d 70 69 6c 65 2d 74 69 | .target.expression.is.compile-ti |
| 25360 | 6d 65 20 6b 6e 6f 77 6e 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | me.known.</span>.<span.class="to |
| 25380 | 6b 2d 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 |
| 253a0 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 77 69 74 63 68 20 69 6e 73 69 64 65 20 66 75 6e 63 | ok-str">"switch.inside.func |
| 253c0 | 74 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | tion"</span>.{.....<span.cl |
| 253e0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 62 75 69 6c | ass="tok-kw">switch</span>.(buil |
| 25400 | 74 69 6e 2e 6f 73 29 20 7b 0a 20 20 20 20 20 20 20 20 62 75 69 6c 74 69 6e 2e 4f 73 2e 66 75 63 | tin.os).{.........builtin.Os.fuc |
| 25420 | 68 73 69 61 20 3d 26 67 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | hsia.=>.{.............<span.c |
| 25440 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4f 6e 20 61 6e 20 4f 53 20 6f | lass="tok-comment">//.On.an.OS.o |
| 25460 | 74 68 65 72 20 74 68 61 6e 20 66 75 63 68 73 69 61 2c 20 62 6c 6f 63 6b 20 69 73 20 6e 6f 74 20 | ther.than.fuchsia,.block.is.not. |
| 25480 | 65 76 65 6e 20 61 6e 61 6c 79 7a 65 64 2c 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 | even.analyzed,</span>........... |
| 254a0 | 20 20 3c 73 70 61 6e 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 | ..<span.class="tok-comment">//.s |
| 254c0 | 6f 20 74 68 69 73 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 69 73 20 6e 6f 74 20 74 72 69 67 | o.this.compile.error.is.not.trig |
| 254e0 | 67 65 72 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | gered.</span>.............<span. |
| 25500 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 4f 6e 20 66 75 63 68 73 69 | class="tok-comment">//.On.fuchsi |
| 25520 | 61 20 74 68 69 73 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 77 6f 75 6c 64 20 62 65 20 74 72 | a.this.compile.error.would.be.tr |
| 25540 | 69 67 67 65 72 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 | iggered.</span>.............<spa |
| 25560 | 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 |
| 25580 | 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" |
| 255a0 | 3e 26 71 75 6f 74 3b 66 75 63 68 73 69 61 20 6e 6f 74 20 73 75 70 70 6f 72 74 65 64 26 71 75 6f | >"fuchsia.not.supported&quo |
| 255c0 | 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 3c | t;</span>);.........},.........< |
| 255e0 | 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>. |
| 25600 | 3d 26 67 74 3b 20 7b 7d 2c 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 | =>.{},.....}.}</code></pre><p |
| 25620 | 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 |
| 25640 | 74 20 73 77 69 74 63 68 2e 7a 69 67 0a 54 65 73 74 20 31 2f 33 20 73 77 69 74 63 68 20 73 69 6d | t.switch.zig.Test.1/3.switch.sim |
| 25660 | 70 6c 65 2e 2e 2e 4f 4b 0a 54 65 73 74 20 32 2f 33 20 73 77 69 74 63 68 20 65 6e 75 6d 2e 2e 2e | ple...OK.Test.2/3.switch.enum... |
| 25680 | 4f 4b 0a 54 65 73 74 20 33 2f 33 20 73 77 69 74 63 68 20 69 6e 73 69 64 65 20 66 75 6e 63 74 69 | OK.Test.3/3.switch.inside.functi |
| 256a0 | 6f 6e 2e 2e 2e 4f 4b 0a 41 6c 6c 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 | on...OK.All.tests.passed..</code |
| 256c0 | 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c | ></pre>........<p>See.also:</p>< |
| 256e0 | 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 70 | ul>.<li><a.href="#comptime">comp |
| 25700 | 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 65 6e 75 6d | time</a></li>.<li><a.href="#enum |
| 25720 | 22 3e 65 6e 75 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 63 6f | ">enum</a></li>.<li><a.href="#co |
| 25740 | 6d 70 69 6c 65 45 72 72 6f 72 22 3e 40 63 6f 6d 70 69 6c 65 45 72 72 6f 72 3c 2f 61 3e 3c 2f 6c | mpileError">@compileError</a></l |
| 25760 | 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 43 6f 6d 70 69 6c 65 2d 56 61 72 69 61 62 6c | i>.<li><a.href="#Compile-Variabl |
| 25780 | 65 73 22 3e 43 6f 6d 70 69 6c 65 20 56 61 72 69 61 62 6c 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c | es">Compile.Variables</a></li>.< |
| 257a0 | 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 77 68 69 6c 65 | /ul>...............<h1.id="while |
| 257c0 | 22 3e 77 68 69 6c 65 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 | ">while</h1>........<p>.......A. |
| 257e0 | 77 68 69 6c 65 20 6c 6f 6f 70 20 69 73 20 75 73 65 64 20 74 6f 20 72 65 70 65 61 74 65 64 6c 79 | while.loop.is.used.to.repeatedly |
| 25800 | 20 65 78 65 63 75 74 65 20 61 6e 20 65 78 70 72 65 73 73 69 6f 6e 20 75 6e 74 69 6c 0a 20 20 20 | .execute.an.expression.until.... |
| 25820 | 20 20 20 73 6f 6d 65 20 63 6f 6e 64 69 74 69 6f 6e 20 69 73 20 6e 6f 20 6c 6f 6e 67 65 72 20 74 | ...some.condition.is.no.longer.t |
| 25840 | 72 75 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 3d 22 | rue........</p>.......<p.class=" |
| 25860 | 66 69 6c 65 22 3e 77 68 69 6c 65 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c | file">while.zig</p><pre><code.cl |
| 25880 | 61 73 73 3d 22 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 |
| 258a0 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | onst</span>.assert.=.<span.class |
| 258c0 | 3d 22 74 6f 6b 2d 62 75 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 |
| 258e0 | 70 61 6e 20 63 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 |
| 25900 | 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 0a 3c 73 70 61 6e | ot;</span>).debug.assert;..<span |
| 25920 | 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 |
| 25940 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 77 68 69 6c 65 20 62 61 | n.class="tok-str">"while.ba |
| 25960 | 73 69 63 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | sic"</span>.{.....<span.cla |
| 25980 | 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 6e 20 | ss="tok-kw">var</span>.i:.<span. |
| 259a0 | 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 20 | class="tok-type">usize</span>.=. |
| 259c0 | 3c 73 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 |
| 259e0 | 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 6c | >;.....<span.class="tok-kw">whil |
| 25a00 | 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 |
| 25a20 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 69 | k-number">10</span>).{.........i |
| 25a40 | 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</ |
| 25a60 | 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 20 20 20 20 61 73 73 65 72 74 28 69 20 3d 3d 20 3c 73 70 | span>;.....}.....assert(i.==.<sp |
| 25a80 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 | an.class="tok-number">10</span>) |
| 25aa0 | 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 |
| 25ac0 | 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 77 68 69 6c 65 2e 7a 69 67 0a 54 65 | ="shell">$.zig.test.while.zig.Te |
| 25ae0 | 73 74 20 31 2f 31 20 77 68 69 6c 65 20 62 61 73 69 63 2e 2e 2e 4f 4b 0a 41 6c 6c 20 74 65 73 74 | st.1/1.while.basic...OK.All.test |
| 25b00 | 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>........< |
| 25b20 | 70 3e 0a 20 20 20 20 20 20 55 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | p>.......Use.<code.class="zig">< |
| 25b40 | 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> |
| 25b60 | 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 65 61 72 | </code>.to.exit.a.while.loop.ear |
| 25b80 | 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 3d 22 66 | ly........</p>.......<p.class="f |
| 25ba0 | 69 6c 65 22 3e 77 68 69 6c 65 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | ile">while.zig</p><pre><code.cla |
| 25bc0 | 73 73 3d 22 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 |
| 25be0 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | nst</span>.assert.=.<span.class= |
| 25c00 | 22 74 6f 6b 2d 62 75 69 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 |
| 25c20 | 61 6e 20 63 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 |
| 25c40 | 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 0a 3c 73 70 61 6e 20 | t;</span>).debug.assert;..<span. |
| 25c60 | 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 |
| 25c80 | 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 62 72 65 | .class="tok-str">"while.bre |
| 25ca0 | 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 20 63 6c 61 73 | ak"</span>.{.....<span.clas |
| 25cc0 | 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 6e 20 63 | s="tok-kw">var</span>.i:.<span.c |
| 25ce0 | 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 20 3c | lass="tok-type">usize</span>.=.< |
| 25d00 | 73 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> |
| 25d20 | 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 | ;.....<span.class="tok-kw">while |
| 25d40 | 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e | </span>.(<span.class="tok-null"> |
| 25d60 | 74 72 75 65 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | true</span>).{.........<span.cla |
| 25d80 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 69 20 3d 3d 20 3c 73 70 61 | ss="tok-kw">if</span>.(i.==.<spa |
| 25da0 | 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 0a | n.class="tok-number">10</span>). |
| 25dc0 | 20 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" |
| 25de0 | 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 20 3c 73 70 61 | >break</span>;.........i.+=.<spa |
| 25e00 | 6e 20 63 6c 61 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>;.. |
| 25e20 | 20 20 20 7d 0a 20 20 20 20 61 73 73 65 72 74 28 69 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ...}.....assert(i.==.<span.class |
| 25e40 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 | ="tok-number">10</span>);.}</cod |
| 25e60 | 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" |
| 25e80 | 3e 24 20 7a 69 67 20 74 65 73 74 20 77 68 69 6c 65 2e 7a 69 67 0a 54 65 73 74 20 31 2f 31 20 77 | >$.zig.test.while.zig.Test.1/1.w |
| 25ea0 | 68 69 6c 65 20 62 72 65 61 6b 2e 2e 2e 4f 4b 0a 41 6c 6c 20 74 65 73 74 73 20 70 61 73 73 65 64 | hile.break...OK.All.tests.passed |
| 25ec0 | 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>...... |
| 25ee0 | 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 20 63 6c 61 | .Use.<code.class="zig"><span.cla |
| 25f00 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | ss="tok-kw">continue</span></cod |
| 25f20 | 65 3e 20 74 6f 20 6a 75 6d 70 20 62 61 63 6b 20 74 6f 20 74 68 65 20 62 65 67 69 6e 6e 69 6e 67 | e>.to.jump.back.to.the.beginning |
| 25f40 | 20 6f 66 20 74 68 65 20 6c 6f 6f 70 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | .of.the.loop........</p>.......< |
| 25f60 | 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 |
| 25f80 | 3e 3c 63 6f 64 65 20 63 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=" |
| 25fa0 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 3c 73 | tok-kw">const</span>.assert.=.<s |
| 25fc0 | 70 61 6e 20 63 6c 61 73 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< |
| 25fe0 | 2f 73 70 61 6e 3e 28 3c 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 |
| 26000 | 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 61 73 73 65 72 | ot;std"</span>).debug.asser |
| 26020 | 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 |
| 26040 | 70 61 6e 3e 20 3c 73 70 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">" |
| 26060 | 3b 77 68 69 6c 65 20 63 6f 6e 74 69 6e 75 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | ;while.continue"</span>.{.. |
| 26080 | 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 |
| 260a0 | 6e 3e 20 69 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 | n>.i:.<span.class="tok-type">usi |
| 260c0 | 7a 65 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | ze</span>.=.<span.class="tok-num |
| 260e0 | 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ber">0</span>;.....<span.class=" |
| 26100 | 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 | tok-kw">while</span>.(<span.clas |
| 26120 | 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 | s="tok-null">true</span>).{..... |
| 26140 | 20 20 20 20 69 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | ....i.+=.<span.class="tok-number |
| 26160 | 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= |
| 26180 | 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 69 20 26 6c 74 3b 20 3c 73 70 61 6e | "tok-kw">if</span>.(i.<.<span |
| 261a0 | 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 0a 20 | .class="tok-number">10</span>).. |
| 261c0 | 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"> |
| 261e0 | 63 6f 6e 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | continue</span>;.........<span.c |
| 26200 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 | lass="tok-kw">break</span>;..... |
| 26220 | 7d 0a 20 20 20 20 61 73 73 65 72 74 28 69 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | }.....assert(i.==.<span.class="t |
| 26240 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c | ok-number">10</span>);.}</code>< |
| 26260 | 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">$. |
| 26280 | 7a 69 67 20 74 65 73 74 20 77 68 69 6c 65 2e 7a 69 67 0a 54 65 73 74 20 31 2f 31 20 77 68 69 6c | zig.test.while.zig.Test.1/1.whil |
| 262a0 | 65 20 63 6f 6e 74 69 6e 75 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 74 65 73 74 73 20 70 61 73 73 65 64 | e.continue...OK.All.tests.passed |
| 262c0 | 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>...... |
| 262e0 | 20 57 68 69 6c 65 20 6c 6f 6f 70 73 20 73 75 70 70 6f 72 74 20 61 20 63 6f 6e 74 69 6e 75 65 20 | .While.loops.support.a.continue. |
| 26300 | 65 78 70 72 65 73 73 69 6f 6e 20 77 68 69 63 68 20 69 73 20 65 78 65 63 75 74 65 64 20 77 68 65 | expression.which.is.executed.whe |
| 26320 | 6e 20 74 68 65 20 6c 6f 6f 70 0a 20 20 20 20 20 20 69 73 20 63 6f 6e 74 69 6e 75 65 64 2e 20 54 | n.the.loop.......is.continued..T |
| 26340 | 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 |
| 26360 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ="tok-kw">continue</span></code> |
| 26380 | 20 6b 65 79 77 6f 72 64 20 72 65 73 70 65 63 74 73 20 74 68 69 73 20 65 78 70 72 65 73 73 69 6f | .keyword.respects.this.expressio |
| 263a0 | 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 69 | n........</p>.......<p.class="fi |
| 263c0 | 6c 65 22 3e 77 68 69 6c 65 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 | le">while.zig</p><pre><code.clas |
| 263e0 | 73 3d 22 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 |
| 26400 | 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | st</span>.assert.=.<span.class=" |
| 26420 | 74 6f 6b 2d 62 75 69 6c 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 |
| 26440 | 6e 20 63 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" |
| 26460 | 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 0a 3c 73 70 61 6e 20 63 | ;</span>).debug.assert;..<span.c |
| 26480 | 6c 61 73 73 3d 22 74 6f 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. |
| 264a0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 77 68 69 6c 65 20 6c 6f 6f 70 | class="tok-str">"while.loop |
| 264c0 | 20 63 6f 6e 74 69 6e 75 65 20 65 78 70 72 65 73 73 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | .continue.expression"</span |
| 264e0 | 3e 20 7b 0a 20 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 |
| 26500 | 3c 2f 73 70 61 6e 3e 20 69 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | </span>.i:.<span.class="tok-type |
| 26520 | 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ">usize</span>.=.<span.class="to |
| 26540 | 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 |
| 26560 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 69 20 26 6c 74 | ass="tok-kw">while</span>.(i.< |
| 26580 | 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 | ;.<span.class="tok-number">10</s |
| 265a0 | 70 61 6e 3e 29 20 3a 20 28 69 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | pan>).:.(i.+=.<span.class="tok-n |
| 265c0 | 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 7b 7d 0a 20 20 20 20 61 73 73 65 72 74 28 69 | umber">1</span>).{}.....assert(i |
| 265e0 | 20 3d 3d 20 3c 73 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< |
| 26600 | 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" |
| 26620 | 3e 74 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 |
| 26640 | 72 22 3e 26 71 75 6f 74 3b 77 68 69 6c 65 20 6c 6f 6f 70 20 63 6f 6e 74 69 6e 75 65 20 65 78 70 | r">"while.loop.continue.exp |
| 26660 | 72 65 73 73 69 6f 6e 2c 20 6d 6f 72 65 20 63 6f 6d 70 6c 69 63 61 74 65 64 26 71 75 6f 74 3b 3c | ression,.more.complicated"< |
| 26680 | 2f 73 70 61 6e 3e 20 7b 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 |
| 266a0 | 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 69 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ">var</span>.i:.<span.class="tok |
| 266c0 | 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 |
| 266e0 | 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 |
| 26700 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6a 3a 20 | an.class="tok-kw">var</span>.j:. |
| 26720 | 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 |
| 26740 | 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | an>.=.<span.class="tok-number">1 |
| 26760 | 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 |
| 26780 | 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 69 20 2a 20 6a 20 26 6c 74 3b 20 3c 73 70 61 6e | ">while</span>.(i.*.j.<.<span |
| 267a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 30 30 30 3c 2f 73 70 61 6e 3e 29 | .class="tok-number">2000</span>) |
| 267c0 | 20 3a 20 28 7b 20 69 20 2a 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | .:.({.i.*=.<span.class="tok-numb |
| 267e0 | 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 3b 20 6a 20 2a 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | er">2</span>;.j.*=.<span.class=" |
| 26800 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 3b 20 7d 29 20 7b 0a 20 20 20 20 20 | tok-number">3</span>;.}).{...... |
| 26820 | 20 20 20 3c 73 70 61 6e 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 |
| 26840 | 70 61 6e 3e 20 6d 79 5f 69 6a 20 3d 20 69 20 2a 20 6a 3b 0a 20 20 20 20 20 20 20 20 61 73 73 65 | pan>.my_ij.=.i.*.j;.........asse |
| 26860 | 72 74 28 6d 79 5f 69 6a 20 26 6c 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | rt(my_ij.<.<span.class="tok-n |
| 26880 | 75 6d 62 65 72 22 3e 32 30 30 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f | umber">2000</span>);.....}.}</co |
| 268a0 | 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 |
| 268c0 | 22 3e 24 20 7a 69 67 20 74 65 73 74 20 77 68 69 6c 65 2e 7a 69 67 0a 54 65 73 74 20 31 2f 32 20 | ">$.zig.test.while.zig.Test.1/2. |
| 268e0 | 77 68 69 6c 65 20 6c 6f 6f 70 20 63 6f 6e 74 69 6e 75 65 20 65 78 70 72 65 73 73 69 6f 6e 2e 2e | while.loop.continue.expression.. |
| 26900 | 2e 4f 4b 0a 54 65 73 74 20 32 2f 32 20 77 68 69 6c 65 20 6c 6f 6f 70 20 63 6f 6e 74 69 6e 75 65 | .OK.Test.2/2.while.loop.continue |
| 26920 | 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 2e 2e 2e | .expression,.more.complicated... |
| 26940 | 4f 4b 0a 41 6c 6c 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 | OK.All.tests.passed..</code></pr |
| 26960 | 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 70 73 20 | e>........<p>.......While.loops. |
| 26980 | 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 66 20 74 | are.expressions..The.result.of.t |
| 269a0 | 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 73 75 6c | he.expression.is.the.......resul |
| 269c0 | 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 61 6e | t.of.the.<code.class="zig"><span |
| 269e0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | .class="tok-kw">else</span></cod |
| 26a00 | 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 69 63 68 | e>.clause.of.a.while.loop,.which |
| 26a20 | 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 6f 6e 64 | .is.executed.when.......the.cond |
| 26a40 | 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 73 74 65 | ition.of.the.while.loop.is.teste |
| 26a60 | 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 3c 70 3e | d.as.false........</p>.......<p> |
| 26a80 | 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | .......<code.class="zig"><span.c |
| 26aa0 | 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 65 | lass="tok-kw">break</span></code |
| 26ac0 | 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 61 6e 20 | >,.like.<code.class="zig"><span. |
| 26ae0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | class="tok-kw">return</span></co |
| 26b00 | 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 20 20 20 | de>,.accepts.a.value............ |
| 26b20 | 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 75 6c 74 | ...parameter..This.is.the.result |
| 26b40 | 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 61 6e 20 | .of.the.<code.class="zig"><span. |
| 26b60 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | class="tok-kw">while</span></cod |
| 26b80 | 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 20 20 20 | e>.expression................... |
| 26ba0 | 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 73 70 61 | .When.you.<code.class="zig"><spa |
| 26bc0 | 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 |
| 26be0 | 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 63 6f 64 | ode>.from.a.while.loop,.the.<cod |
| 26c00 | 65 20 63 6c 61 73 73 3d 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 |
| 26c20 | 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 73 20 | w">else</span></code>.branch.is. |
| 26c40 | 6e 6f 74 0a 20 20 20 20 20 20 65 76 61 6c 75 61 74 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | not.......evaluated........</p>. |
| 26c60 | 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 67 3c | ......<p.class="file">while.zig< |
| 26c80 | 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. |
| 26ca0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 | class="tok-kw">const</span>.asse |
| 26cc0 | 72 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | rt.=.<span.class="tok-builtin">@ |
| 26ce0 | 69 6d 70 6f 72 74 3c 2f 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 |
| 26d00 | 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 | tr">"std"</span>).debu |
| 26d20 | 67 2e 61 73 73 65 72 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | g.assert;..<span.class="tok-kw"> |
| 26d40 | 74 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 |
| 26d60 | 22 3e 26 71 75 6f 74 3b 77 68 69 6c 65 20 65 6c 73 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 | ">"while.else"</span>. |
| 26d80 | 7b 0a 20 20 20 20 61 73 73 65 72 74 28 72 61 6e 67 65 48 61 73 4e 75 6d 62 65 72 28 3c 73 70 61 | {.....assert(rangeHasNumber(<spa |
| 26da0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2c 20 3c | n.class="tok-number">0</span>,.< |
| 26dc0 | 73 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 |
| 26de0 | 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 |
| 26e00 | 70 61 6e 3e 29 29 3b 0a 20 20 20 20 61 73 73 65 72 74 28 21 72 61 6e 67 65 48 61 73 4e 75 6d 62 | pan>));.....assert(!rangeHasNumb |
| 26e20 | 65 72 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 | er(<span.class="tok-number">0</s |
| 26e40 | 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | pan>,.<span.class="tok-number">1 |
| 26e60 | 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | 0</span>,.<span.class="tok-numbe |
| 26e80 | 72 22 3e 31 35 3c 2f 73 70 61 6e 3e 29 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | r">15</span>));.}..<span.class=" |
| 26ea0 | 74 6f 6b 2d 6b 77 22 3e 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 |
| 26ec0 | 6f 6b 2d 66 6e 22 3e 72 61 6e 67 65 48 61 73 4e 75 6d 62 65 72 3c 2f 73 70 61 6e 3e 28 62 65 67 | ok-fn">rangeHasNumber</span>(beg |
| 26ee0 | 69 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 | in:.<span.class="tok-type">usize |
| 26f00 | 3c 2f 73 70 61 6e 3e 2c 20 65 6e 64 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | </span>,.end:.<span.class="tok-t |
| 26f20 | 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 2c 20 6e 75 6d 62 65 72 3a 20 3c 73 70 61 6e | ype">usize</span>,.number:.<span |
| 26f40 | 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>). |
| 26f60 | 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 |
| 26f80 | 6e 3e 20 7b 0a 20 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 |
| 26fa0 | 72 3c 2f 73 70 61 6e 3e 20 69 20 3d 20 62 65 67 69 6e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | r</span>.i.=.begin;.....<span.cl |
| 26fc0 | 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 |
| 26fe0 | 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. |
| 27000 | 26 6c 74 3b 20 65 6e 64 29 20 3a 20 28 69 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | <.end).:.(i.+=.<span.class="t |
| 27020 | 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 3c | ok-number">1</span>).{.........< |
| 27040 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 69 | span.class="tok-kw">if</span>.(i |
| 27060 | 20 3d 3d 20 6e 75 6d 62 65 72 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | .==.number).{.............<span. |
| 27080 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 | class="tok-kw">break</span>.<spa |
| 270a0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3b 0a | n.class="tok-null">true</span>;. |
| 270c0 | 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ........}.....}.<span.class="tok |
| 270e0 | 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | -kw">else</span>.<span.class="to |
| 27100 | 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f | k-null">false</span>;.}</code></ |
| 27120 | 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 |
| 27140 | 69 67 20 74 65 73 74 20 77 68 69 6c 65 2e 7a 69 67 0a 54 65 73 74 20 31 2f 31 20 77 68 69 6c 65 | ig.test.while.zig.Test.1/1.while |
| 27160 | 20 65 6c 73 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 | .else...OK.All.tests.passed..</c |
| 27180 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 4c 61 62 65 6c 65 | ode></pre>........<h2.id="Labele |
| 271a0 | 64 2d 77 68 69 6c 65 22 3e 4c 61 62 65 6c 65 64 20 77 68 69 6c 65 3c 2f 68 32 3e 0a 0a 20 20 20 | d-while">Labeled.while</h2>..... |
| 271c0 | 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 3c | ...<p>When.a.<code.class="zig">< |
| 271e0 | 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> |
| 27200 | 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 20 | </code>.loop.is.labeled,.it.can. |
| 27220 | 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 73 | be.referenced.from.a.<code.class |
| 27240 | 3d 22 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 |
| 27260 | 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 72 | k</span></code>...............or |
| 27280 | 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=" |
| 272a0 | 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 66 | tok-kw">continue</span></code>.f |
| 272c0 | 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 20 | rom.within.a.nested.loop:</p>... |
| 272e0 | 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> |
| 27300 | 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 |
| 27320 | 73 73 3d 22 74 6f 6b 2d 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 |
| 27340 | 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 6b | ass="tok-str">"nested.break |
| 27360 | 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 6e | "</span>.{.....outer:.<span |
| 27380 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 3c 73 | .class="tok-kw">while</span>.(<s |
| 273a0 | 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> |
| 273c0 | 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" |
| 273e0 | 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 2d | >while</span>.(<span.class="tok- |
| 27400 | 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 20 | null">true</span>).{............ |
| 27420 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 | .<span.class="tok-kw">break</spa |
| 27440 | 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 73 | n>.:outer;.........}.....}.}..<s |
| 27460 | 70 61 6e 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>.< |
| 27480 | 73 70 61 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 65 | span.class="tok-str">"neste |
| 274a0 | 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 73 | d.continue"</span>.{.....<s |
| 274c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 69 3a | pan.class="tok-kw">var</span>.i: |
| 274e0 | 20 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 |
| 27500 | 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"> |
| 27520 | 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 73 | 0</span>;.....outer:.<span.class |
| 27540 | 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 3c | ="tok-kw">while</span>.(i.<.< |
| 27560 | 73 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 |
| 27580 | 3e 29 20 3a 20 28 69 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | >).:.(i.+=.<span.class="tok-numb |
| 275a0 | 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | er">1</span>).{.........<span.cl |
| 275c0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e | ass="tok-kw">while</span>.(<span |
| 275e0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 20 7b | .class="tok-null">true</span>).{ |
| 27600 | 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 77 | .............<span.class="tok-kw |
| 27620 | 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 20 | ">continue</span>.:outer;....... |
| 27640 | 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 6f | ..}.....}.}</code></pre><pre><co |
| 27660 | 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 |
| 27680 | 2e 7a 69 67 0a 54 65 73 74 20 31 2f 32 20 6e 65 73 74 65 64 20 62 72 65 61 6b 2e 2e 2e 4f 4b 0a | .zig.Test.1/2.nested.break...OK. |
| 276a0 | 54 65 73 74 20 32 2f 32 20 6e 65 73 74 65 64 20 63 6f 6e 74 69 6e 75 65 2e 2e 2e 4f 4b 0a 41 6c | Test.2/2.nested.continue...OK.Al |
| 276c0 | 6c 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 | l.tests.passed..</code></pre>... |
| 276e0 | 20 20 20 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 | ............<h2.id="while-with-O |
| 27700 | 70 74 69 6f 6e 61 6c 73 22 3e 77 68 69 6c 65 20 77 69 74 68 20 4f 70 74 69 6f 6e 61 6c 73 3c 2f | ptionals">while.with.Optionals</ |
| 27720 | 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4a 75 73 74 20 6c 69 6b 65 20 3c | h2>........<p>.......Just.like.< |
| 27740 | 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 2c | a.href="#if">if</a>.expressions, |
| 27760 | 20 77 68 69 6c 65 20 6c 6f 6f 70 73 20 63 61 6e 20 74 61 6b 65 20 61 6e 20 6f 70 74 69 6f 6e 61 | .while.loops.can.take.an.optiona |
| 27780 | 6c 20 61 73 20 74 68 65 0a 20 20 20 20 20 20 63 6f 6e 64 69 74 69 6f 6e 20 61 6e 64 20 63 61 70 | l.as.the.......condition.and.cap |
| 277a0 | 74 75 72 65 20 74 68 65 20 70 61 79 6c 6f 61 64 2e 20 57 68 65 6e 20 3c 61 20 68 72 65 66 3d 22 | ture.the.payload..When.<a.href=" |
| 277c0 | 23 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 61 3e 20 69 73 20 65 6e 63 6f 75 6e 74 65 72 65 64 20 74 | #null">null</a>.is.encountered.t |
| 277e0 | 68 65 20 6c 6f 6f 70 0a 20 20 20 20 20 20 65 78 69 74 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | he.loop.......exits........</p>. |
| 27800 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 65 6e 20 74 68 65 20 3c 63 6f 64 65 20 63 | ......<p>.......When.the.<code.c |
| 27820 | 6c 61 73 73 3d 22 7a 69 67 22 3e 7c 78 7c 3c 2f 63 6f 64 65 3e 20 73 79 6e 74 61 78 20 69 73 20 | lass="zig">|x|</code>.syntax.is. |
| 27840 | 70 72 65 73 65 6e 74 20 6f 6e 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | present.on.a.<code.class="zig">< |
| 27860 | 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> |
| 27880 | 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 2c 0a 20 20 20 20 20 20 74 68 65 20 77 68 | </code>.expression,.......the.wh |
| 278a0 | 69 6c 65 20 63 6f 6e 64 69 74 69 6f 6e 20 6d 75 73 74 20 68 61 76 65 20 61 6e 20 3c 61 20 68 72 | ile.condition.must.have.an.<a.hr |
| 278c0 | 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 2d 54 79 70 65 22 3e 4f 70 74 69 6f 6e 61 6c 20 54 79 70 | ef="#Optional-Type">Optional.Typ |
| 278e0 | 65 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | e</a>........</p>.......<p>..... |
| 27900 | 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 63 6c | ..The.<code.class="zig"><span.cl |
| 27920 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 | ass="tok-kw">else</span></code>. |
| 27940 | 62 72 61 6e 63 68 20 69 73 20 61 6c 6c 6f 77 65 64 20 6f 6e 20 6f 70 74 69 6f 6e 61 6c 20 69 74 | branch.is.allowed.on.optional.it |
| 27960 | 65 72 61 74 69 6f 6e 2e 20 49 6e 20 74 68 69 73 20 63 61 73 65 2c 20 69 74 20 77 69 6c 6c 0a 20 | eration..In.this.case,.it.will.. |
| 27980 | 20 20 20 20 20 62 65 20 65 78 65 63 75 74 65 64 20 6f 6e 20 74 68 65 20 66 69 72 73 74 20 6e 75 | .....be.executed.on.the.first.nu |
| 279a0 | 6c 6c 20 76 61 6c 75 65 20 65 6e 63 6f 75 6e 74 65 72 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | ll.value.encountered........</p> |
| 279c0 | 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 67 | .......<p.class="file">while.zig |
| 279e0 | 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 |
| 27a00 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 | .class="tok-kw">const</span>.ass |
| 27a20 | 65 72 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | ert.=.<span.class="tok-builtin"> |
| 27a40 | 40 69 6d 70 6f 72 74 3c 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- |
| 27a60 | 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 | str">"std"</span>).deb |
| 27a80 | 75 67 2e 61 73 73 65 72 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ug.assert;..<span.class="tok-kw" |
| 27aa0 | 3e 74 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 |
| 27ac0 | 72 22 3e 26 71 75 6f 74 3b 77 68 69 6c 65 20 6e 75 6c 6c 20 63 61 70 74 75 72 65 26 71 75 6f 74 | r">"while.null.capture" |
| 27ae0 | 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- |
| 27b00 | 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 73 75 6d 31 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | kw">var</span>.sum1:.<span.class |
| 27b20 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 | ="tok-type">u32</span>.=.<span.c |
| 27b40 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 | lass="tok-number">0</span>;..... |
| 27b60 | 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 2d | numbers_left.=.<span.class="tok- |
| 27b80 | 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | number">3</span>;.....<span.clas |
| 27ba0 | 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 61 | s="tok-kw">while</span>.(eventua |
| 27bc0 | 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 20 | llyNullSequence()).|value|.{.... |
| 27be0 | 20 20 20 20 20 73 75 6d 31 20 2b 3d 20 76 61 6c 75 65 3b 0a 20 20 20 20 7d 0a 20 20 20 20 61 73 | .....sum1.+=.value;.....}.....as |
| 27c00 | 73 65 72 74 28 73 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 | sert(sum1.==.<span.class="tok-nu |
| 27c20 | 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | mber">3</span>);......<span.clas |
| 27c40 | 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 32 3a 20 3c 73 70 61 | s="tok-kw">var</span>.sum2:.<spa |
| 27c60 | 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>.=. |
| 27c80 | 3c 73 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 |
| 27ca0 | 3e 3b 0a 20 20 20 20 6e 75 6d 62 65 72 73 5f 6c 65 66 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | >;.....numbers_left.=.<span.clas |
| 27cc0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 | s="tok-number">3</span>;.....<sp |
| 27ce0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 | an.class="tok-kw">while</span>.( |
| 27d00 | 65 76 65 6e 74 75 61 6c 6c 79 4e 75 6c 6c 53 65 71 75 65 6e 63 65 28 29 29 20 7c 76 61 6c 75 65 | eventuallyNullSequence()).|value |
| 27d20 | 7c 20 7b 0a 20 20 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 | |.{.........sum2.+=.value;.....} |
| 27d40 | 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 |
| 27d60 | 3e 20 7b 0a 20 20 20 20 20 20 20 20 61 73 73 65 72 74 28 73 75 6d 31 20 3d 3d 20 3c 73 70 61 6e | >.{.........assert(sum1.==.<span |
| 27d80 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 3b 0a 20 | .class="tok-number">3</span>);.. |
| 27da0 | 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 76 61 72 | ...}.}..<span.class="tok-kw">var |
| 27dc0 | 3c 2f 73 70 61 6e 3e 20 6e 75 6d 62 65 72 73 5f 6c 65 66 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | </span>.numbers_left:.<span.clas |
| 27de0 | 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. |
| 27e00 | 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 |
| 27e20 | 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e | >;.<span.class="tok-kw">fn</span |
| 27e40 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 65 76 65 6e 74 75 61 6c 6c | >.<span.class="tok-fn">eventuall |
| 27e60 | 79 4e 75 6c 6c 53 65 71 75 65 6e 63 65 3c 2f 73 70 61 6e 3e 28 29 20 3f 3c 73 70 61 6e 20 63 6c | yNullSequence</span>().?<span.cl |
| 27e80 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | ass="tok-type">u32</span>.{..... |
| 27ea0 | 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 |
| 27ec0 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e | n>.<span.class="tok-kw">if</span |
| 27ee0 | 3e 20 28 6e 75 6d 62 65 72 73 5f 6c 65 66 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >.(numbers_left.==.<span.class=" |
| 27f00 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-number">0</span>).<span.clas |
| 27f20 | 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 | s="tok-null">null</span>.<span.c |
| 27f40 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 62 6c 6b 3a 20 7b | lass="tok-kw">else</span>.blk:.{ |
| 27f60 | 0a 20 20 20 20 20 20 20 20 6e 75 6d 62 65 72 73 5f 6c 65 66 74 20 2d 3d 20 3c 73 70 61 6e 20 63 | .........numbers_left.-=.<span.c |
| 27f80 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 | lass="tok-number">1</span>;..... |
| 27fa0 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f | ....<span.class="tok-kw">break</ |
| 27fc0 | 73 70 61 6e 3e 20 3a 62 6c 6b 20 6e 75 6d 62 65 72 73 5f 6c 65 66 74 3b 0a 20 20 20 20 7d 3b 0a | span>.:blk.numbers_left;.....};. |
| 27fe0 | 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=" |
| 28000 | 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 77 68 69 6c 65 2e 7a 69 67 0a 54 65 73 74 | shell">$.zig.test.while.zig.Test |
| 28020 | 20 31 2f 31 20 77 68 69 6c 65 20 6e 75 6c 6c 20 63 61 70 74 75 72 65 2e 2e 2e 4f 4b 0a 41 6c 6c | .1/1.while.null.capture...OK.All |
| 28040 | 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>.... |
| 28060 | 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 77 68 69 6c 65 2d 77 69 74 68 2d 45 | ............<h2.id="while-with-E |
| 28080 | 72 72 6f 72 2d 55 6e 69 6f 6e 73 22 3e 77 68 69 6c 65 20 77 69 74 68 20 45 72 72 6f 72 20 55 6e | rror-Unions">while.with.Error.Un |
| 280a0 | 69 6f 6e 73 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 73 74 20 | ions</h2>........<p>.......Just. |
| 280c0 | 6c 69 6b 65 20 3c 61 20 68 72 65 66 3d 22 23 69 66 22 3e 69 66 3c 2f 61 3e 20 65 78 70 72 65 73 | like.<a.href="#if">if</a>.expres |
| 280e0 | 73 69 6f 6e 73 2c 20 77 68 69 6c 65 20 6c 6f 6f 70 73 20 63 61 6e 20 74 61 6b 65 20 61 6e 20 65 | sions,.while.loops.can.take.an.e |
| 28100 | 72 72 6f 72 20 75 6e 69 6f 6e 20 61 73 0a 20 20 20 20 20 20 74 68 65 20 63 6f 6e 64 69 74 69 6f | rror.union.as.......the.conditio |
| 28120 | 6e 20 61 6e 64 20 63 61 70 74 75 72 65 20 74 68 65 20 70 61 79 6c 6f 61 64 20 6f 72 20 74 68 65 | n.and.capture.the.payload.or.the |
| 28140 | 20 65 72 72 6f 72 20 63 6f 64 65 2e 20 57 68 65 6e 20 74 68 65 0a 20 20 20 20 20 20 63 6f 6e 64 | .error.code..When.the.......cond |
| 28160 | 69 74 69 6f 6e 20 72 65 73 75 6c 74 73 20 69 6e 20 61 6e 20 65 72 72 6f 72 20 63 6f 64 65 20 74 | ition.results.in.an.error.code.t |
| 28180 | 68 65 20 65 6c 73 65 20 62 72 61 6e 63 68 20 69 73 20 65 76 61 6c 75 61 74 65 64 20 61 6e 64 0a | he.else.branch.is.evaluated.and. |
| 281a0 | 20 20 20 20 20 20 74 68 65 20 6c 6f 6f 70 20 69 73 20 66 69 6e 69 73 68 65 64 2e 0a 20 20 20 20 | ......the.loop.is.finished...... |
| 281c0 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 65 6e 20 74 68 65 20 | ..</p>.......<p>.......When.the. |
| 281e0 | 3c 63 6f 64 65 20 63 6c 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 |
| 28200 | 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7c 78 7c 3c 2f 63 6f 64 65 3e 20 73 79 | ok-kw">else</span>.|x|</code>.sy |
| 28220 | 6e 74 61 78 20 69 73 20 70 72 65 73 65 6e 74 20 6f 6e 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 | ntax.is.present.on.a.<code.class |
| 28240 | 3d 22 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 | ="zig"><span.class="tok-kw">whil |
| 28260 | 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 2c 0a 20 20 20 20 | e</span></code>.expression,..... |
| 28280 | 20 20 74 68 65 20 77 68 69 6c 65 20 63 6f 6e 64 69 74 69 6f 6e 20 6d 75 73 74 20 68 61 76 65 20 | ..the.while.condition.must.have. |
| 282a0 | 61 6e 20 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 2d 55 6e 69 6f 6e 2d 54 79 70 65 22 3e 45 | an.<a.href="#Error-Union-Type">E |
| 282c0 | 72 72 6f 72 20 55 6e 69 6f 6e 20 54 79 70 65 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | rror.Union.Type</a>........</p>. |
| 282e0 | 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 67 3c | ......<p.class="file">while.zig< |
| 28300 | 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. |
| 28320 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 | class="tok-kw">const</span>.asse |
| 28340 | 72 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | rt.=.<span.class="tok-builtin">@ |
| 28360 | 69 6d 70 6f 72 74 3c 2f 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 |
| 28380 | 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 | tr">"std"</span>).debu |
| 283a0 | 67 2e 61 73 73 65 72 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | g.assert;..<span.class="tok-kw"> |
| 283c0 | 74 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 |
| 283e0 | 22 3e 26 71 75 6f 74 3b 77 68 69 6c 65 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 63 61 70 74 75 72 | ">"while.error.union.captur |
| 28400 | 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | e"</span>.{.....<span.class |
| 28420 | 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 73 75 6d 31 3a 20 3c 73 70 61 6e | ="tok-kw">var</span>.sum1:.<span |
| 28440 | 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>.=.< |
| 28460 | 73 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> |
| 28480 | 3b 0a 20 20 20 20 6e 75 6d 62 65 72 73 5f 6c 65 66 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ;.....numbers_left.=.<span.class |
| 284a0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 | ="tok-number">3</span>;.....<spa |
| 284c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 65 | n.class="tok-kw">while</span>.(e |
| 284e0 | 76 65 6e 74 75 61 6c 6c 79 45 72 72 6f 72 53 65 71 75 65 6e 63 65 28 29 29 20 7c 76 61 6c 75 65 | ventuallyErrorSequence()).|value |
| 28500 | 7c 20 7b 0a 20 20 20 20 20 20 20 20 73 75 6d 31 20 2b 3d 20 76 61 6c 75 65 3b 0a 20 20 20 20 7d | |.{.........sum1.+=.value;.....} |
| 28520 | 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 |
| 28540 | 3e 20 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 61 73 73 65 72 74 28 65 72 72 20 3d 3d 20 | >.|err|.{.........assert(err.==. |
| 28560 | 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 |
| 28580 | 3e 2e 52 65 61 63 68 65 64 5a 65 72 6f 29 3b 0a 20 20 20 20 7d 0a 7d 0a 0a 3c 73 70 61 6e 20 63 | >.ReachedZero);.....}.}..<span.c |
| 285a0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6e 75 6d 62 65 72 73 | lass="tok-kw">var</span>.numbers |
| 285c0 | 5f 6c 65 66 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 | _left:.<span.class="tok-type">u3 |
| 285e0 | 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c | 2</span>.=.<span.class="tok-null |
| 28600 | 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | ">undefined</span>;..<span.class |
| 28620 | 3d 22 74 6f 6b 2d 6b 77 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= |
| 28640 | 22 74 6f 6b 2d 66 6e 22 3e 65 76 65 6e 74 75 61 6c 6c 79 45 72 72 6f 72 53 65 71 75 65 6e 63 65 | "tok-fn">eventuallyErrorSequence |
| 28660 | 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 65 | </span>().<span.class="tok-kw">e |
| 28680 | 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | rror</span>!<span.class="tok-typ |
| 286a0 | 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= |
| 286c0 | 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 |
| 286e0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 6e 75 6d 62 65 72 73 5f 6c | ss="tok-kw">if</span>.(numbers_l |
| 28700 | 65 66 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | eft.==.<span.class="tok-number"> |
| 28720 | 30 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 | 0</span>).<span.class="tok-kw">e |
| 28740 | 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 52 65 61 63 68 65 64 5a 65 72 6f 20 3c 73 70 61 6e 20 63 6c | rror</span>.ReachedZero.<span.cl |
| 28760 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 62 6c 6b 3a 20 7b 0a | ass="tok-kw">else</span>.blk:.{. |
| 28780 | 20 20 20 20 20 20 20 20 6e 75 6d 62 65 72 73 5f 6c 65 66 74 20 2d 3d 20 3c 73 70 61 6e 20 63 6c | ........numbers_left.-=.<span.cl |
| 287a0 | 61 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 | ass="tok-number">1</span>;...... |
| 287c0 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 | ...<span.class="tok-kw">break</s |
| 287e0 | 70 61 6e 3e 20 3a 62 6c 6b 20 6e 75 6d 62 65 72 73 5f 6c 65 66 74 3b 0a 20 20 20 20 7d 3b 0a 7d | pan>.:blk.numbers_left;.....};.} |
| 28800 | 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 |
| 28820 | 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 77 68 69 6c 65 2e 7a 69 67 0a 54 65 73 74 20 | hell">$.zig.test.while.zig.Test. |
| 28840 | 31 2f 31 20 77 68 69 6c 65 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 63 61 70 74 75 72 65 2e 2e 2e | 1/1.while.error.union.capture... |
| 28860 | 4f 4b 0a 41 6c 6c 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 | OK.All.tests.passed..</code></pr |
| 28880 | 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 |
| 288a0 | 2d 77 68 69 6c 65 22 3e 69 6e 6c 69 6e 65 20 77 68 69 6c 65 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 | -while">inline.while</h2>....... |
| 288c0 | 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 69 6c 65 20 6c 6f 6f 70 73 20 63 61 6e 20 62 65 20 69 6e | .<p>.......While.loops.can.be.in |
| 288e0 | 6c 69 6e 65 64 2e 20 54 68 69 73 20 63 61 75 73 65 73 20 74 68 65 20 6c 6f 6f 70 20 74 6f 20 62 | lined..This.causes.the.loop.to.b |
| 28900 | 65 20 75 6e 72 6f 6c 6c 65 64 2c 20 77 68 69 63 68 0a 20 20 20 20 20 20 61 6c 6c 6f 77 73 20 74 | e.unrolled,.which.......allows.t |
| 28920 | 68 65 20 63 6f 64 65 20 74 6f 20 64 6f 20 73 6f 6d 65 20 74 68 69 6e 67 73 20 77 68 69 63 68 20 | he.code.to.do.some.things.which. |
| 28940 | 6f 6e 6c 79 20 77 6f 72 6b 20 61 74 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 2c 0a 20 20 20 20 20 | only.work.at.compile.time,...... |
| 28960 | 20 73 75 63 68 20 61 73 20 75 73 65 20 74 79 70 65 73 20 61 73 20 66 69 72 73 74 20 63 6c 61 73 | .such.as.use.types.as.first.clas |
| 28980 | 73 20 76 61 6c 75 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c | s.values........</p>.......<p.cl |
| 289a0 | 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 |
| 289c0 | 65 20 63 6c 61 73 73 3d 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 |
| 289e0 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 3c 73 70 61 6e 20 63 | w">const</span>.assert.=.<span.c |
| 28a00 | 6c 61 73 73 3d 22 74 6f 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 |
| 28a20 | 3e 28 3c 73 70 61 6e 20 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 |
| 28a40 | 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 0a 3c | d"</span>).debug.assert;..< |
| 28a60 | 73 70 61 6e 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>. |
| 28a80 | 3c 73 70 61 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 | <span.class="tok-str">"inli |
| 28aa0 | 6e 65 20 77 68 69 6c 65 20 6c 6f 6f 70 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | ne.while.loop"</span>.{.... |
| 28ac0 | 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</ |
| 28ae0 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f | span>.<span.class="tok-kw">var</ |
| 28b00 | 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 62 65 | span>.i.=.<span.class="tok-numbe |
| 28b20 | 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | r">0</span>;.....<span.class="to |
| 28b40 | 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 73 | k-kw">var</span>.sum:.<span.clas |
| 28b60 | 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 |
| 28b80 | 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>;.. |
| 28ba0 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 6e 6c 69 6e 65 3c 2f | ...<span.class="tok-kw">inline</ |
| 28bc0 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 | span>.<span.class="tok-kw">while |
| 28be0 | 3c 2f 73 70 61 6e 3e 20 28 69 20 26 6c 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | </span>.(i.<.<span.class="tok |
| 28c00 | 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 20 3a 20 28 69 20 2b 3d 20 3c 73 70 61 6e | -number">3</span>).:.(i.+=.<span |
| 28c20 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 7b 0a | .class="tok-number">1</span>).{. |
| 28c40 | 20 20 20 20 20 20 20 20 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 |
| 28c60 | 73 74 3c 2f 73 70 61 6e 3e 20 54 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | st</span>.T.=.<span.class="tok-k |
| 28c80 | 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 69 29 20 7b 0a 20 20 20 20 20 20 20 20 20 | w">switch</span>.(i).{.......... |
| 28ca0 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 | ...<span.class="tok-number">0</s |
| 28cc0 | 70 61 6e 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | pan>.=>.<span.class="tok-type |
| 28ce0 | 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | ">f32</span>,.............<span. |
| 28d00 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 | class="tok-number">1</span>.=> |
| 28d20 | 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 | ;.<span.class="tok-type">i8</spa |
| 28d40 | 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | n>,.............<span.class="tok |
| 28d60 | 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c | -number">2</span>.=>.<span.cl |
| 28d80 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 | ass="tok-type">bool</span>,..... |
| 28da0 | 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 | ........<span.class="tok-kw">els |
| 28dc0 | 65 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | e</span>.=>.<span.class="tok- |
| 28de0 | 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 | kw">unreachable</span>,......... |
| 28e00 | 7d 3b 0a 20 20 20 20 20 20 20 20 73 75 6d 20 2b 3d 20 74 79 70 65 4e 61 6d 65 4c 65 6e 67 74 68 | };.........sum.+=.typeNameLength |
| 28e20 | 28 54 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 61 73 73 65 72 74 28 73 75 6d 20 3d 3d 20 3c 73 70 | (T);.....}.....assert(sum.==.<sp |
| 28e40 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 3c 2f 73 70 61 6e 3e 29 3b | an.class="tok-number">9</span>); |
| 28e60 | 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 |
| 28e80 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 74 79 70 65 4e 61 6d 65 | n>.<span.class="tok-fn">typeName |
| 28ea0 | 4c 65 6e 67 74 68 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | Length</span>(<span.class="tok-k |
| 28ec0 | 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | w">comptime</span>.T:.<span.clas |
| 28ee0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 | s="tok-type">type</span>).<span. |
| 28f00 | 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>.{. |
| 28f20 | 20 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< |
| 28f40 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | /span>.<span.class="tok-builtin" |
| 28f60 | 3e 40 74 79 70 65 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 54 29 2e 6c 65 6e 3b 0a 7d 3c 2f 63 6f 64 | >@typeName</span>(T).len;.}</cod |
| 28f80 | 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" |
| 28fa0 | 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 31 2f 31 20 69 6e | >$.zig.test.test.zig.Test.1/1.in |
| 28fc0 | 6c 69 6e 65 20 77 68 69 6c 65 20 6c 6f 6f 70 2e 2e 2e 4f 4b 0a 41 6c 6c 20 74 65 73 74 73 20 70 | line.while.loop...OK.All.tests.p |
| 28fe0 | 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>. |
| 29000 | 20 20 20 20 20 20 49 74 20 69 73 20 72 65 63 6f 6d 6d 65 6e 64 65 64 20 74 6f 20 75 73 65 20 3c | ......It.is.recommended.to.use.< |
| 29020 | 63 6f 64 65 20 63 6c 61 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 |
| 29040 | 6b 2d 6b 77 22 3e 69 6e 6c 69 6e 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6c 6f 6f 70 73 | k-kw">inline</span></code>.loops |
| 29060 | 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 73 6f 6e 73 3a 0a | .only.for.one.of.these.reasons:. |
| 29080 | 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c | ......</p>.......<ul>.........<l |
| 290a0 | 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 63 75 74 65 20 61 | i>You.need.the.loop.to.execute.a |
| 290c0 | 74 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f | t.<a.href="#comptime">comptime</ |
| 290e0 | 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 72 6b 2e 3c 2f 6c | a>.for.the.semantics.to.work.</l |
| 29100 | 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 75 20 68 61 76 65 | i>.........<li>.........You.have |
| 29120 | 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 20 66 6f 72 63 69 | .a.benchmark.to.prove.that.forci |
| 29140 | 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 74 68 69 73 20 77 | bly.unrolling.the.loop.in.this.w |
| 29160 | 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 20 20 20 20 20 20 | ay.is.measurably.faster......... |
| 29180 | 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 | .</li>.......</ul>.............. |
| 291a0 | 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 |
| 291c0 | 3d 22 23 69 66 22 3e 69 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 | ="#if">if</a></li>.<li><a.href=" |
| 291e0 | 23 4f 70 74 69 6f 6e 61 6c 73 22 3e 4f 70 74 69 6f 6e 61 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c | #Optionals">Optionals</a></li>.< |
| 29200 | 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 73 22 3e 45 72 72 6f 72 73 3c 2f 61 3e 3c | li><a.href="#Errors">Errors</a>< |
| 29220 | 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d | /li>.<li><a.href="#comptime">com |
| 29240 | 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 75 6e 72 | ptime</a></li>.<li><a.href="#unr |
| 29260 | 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 3e 0a 3c | eachable">unreachable</a></li>.< |
| 29280 | 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 66 6f 72 22 3e | /ul>...............<h1.id="for"> |
| 292a0 | 66 6f 72 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 | for</h1>........<p.class="file"> |
| 292c0 | 66 6f 72 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | for.zig</p><pre><code.class="zig |
| 292e0 | 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 |
| 29300 | 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | an>.assert.=.<span.class="tok-bu |
| 29320 | 69 6c 74 69 6e 22 3e 40 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 |
| 29340 | 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 |
| 29360 | 6e 3e 29 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | n>).debug.assert;..<span.class=" |
| 29380 | 74 6f 6b 2d 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= |
| 293a0 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 6f 72 20 62 61 73 69 63 73 26 71 75 6f 74 3b | "tok-str">"for.basics" |
| 293c0 | 3c 2f 73 70 61 6e 3e 20 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 |
| 293e0 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 69 74 65 6d 73 20 3d 20 5b 5d 3c 73 70 61 6e 20 | w">const</span>.items.=.[]<span. |
| 29400 | 63 6c 61 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 3c 73 | class="tok-type">i32</span>.{.<s |
| 29420 | 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 2c | pan.class="tok-number">4</span>, |
| 29440 | 20 3c 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 |
| 29460 | 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</ |
| 29480 | 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"> |
| 294a0 | 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 |
| 294c0 | 72 22 3e 30 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | r">0</span>.};.....<span.class=" |
| 294e0 | 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 73 75 6d 3a 20 3c 73 70 61 6e 20 63 6c | tok-kw">var</span>.sum:.<span.cl |
| 29500 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 | ass="tok-type">i32</span>.=.<spa |
| 29520 | 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 0a | n.class="tok-number">0</span>;.. |
| 29540 | 20 20 20 20 3c 73 70 61 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">// |
| 29560 | 20 46 6f 72 20 6c 6f 6f 70 73 20 69 74 65 72 61 74 65 20 6f 76 65 72 20 73 6c 69 63 65 73 20 61 | .For.loops.iterate.over.slices.a |
| 29580 | 6e 64 20 61 72 72 61 79 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | nd.arrays.</span>.....<span.clas |
| 295a0 | 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 76 | s="tok-kw">for</span>.(items).|v |
| 295c0 | 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 |
| 295e0 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 42 72 65 61 6b 20 61 6e 64 20 63 6f 6e 74 69 6e 75 65 20 | -comment">//.Break.and.continue. |
| 29600 | 61 72 65 20 73 75 70 70 6f 72 74 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 | are.supported.</span>.........<s |
| 29620 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 76 61 | pan.class="tok-kw">if</span>.(va |
| 29640 | 6c 75 65 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | lue.==.<span.class="tok-number"> |
| 29660 | 30 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | 0</span>).{.............<span.cl |
| 29680 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 | ass="tok-kw">continue</span>;... |
| 296a0 | 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 73 75 6d 20 2b 3d 20 76 61 6c 75 65 3b 0a 20 20 | ......}.........sum.+=.value;... |
| 296c0 | 20 20 7d 0a 20 20 20 20 61 73 73 65 72 74 28 73 75 6d 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | ..}.....assert(sum.==.<span.clas |
| 296e0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 36 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 | s="tok-number">16</span>);...... |
| 29700 | 3c 73 70 61 6e 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 | <span.class="tok-comment">//.To. |
| 29720 | 69 74 65 72 61 74 65 20 6f 76 65 72 20 61 20 70 6f 72 74 69 6f 6e 20 6f 66 20 61 20 73 6c 69 63 | iterate.over.a.portion.of.a.slic |
| 29740 | 65 2c 20 72 65 73 6c 69 63 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | e,.reslice.</span>.....<span.cla |
| 29760 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 69 74 65 6d 73 5b 3c 73 | ss="tok-kw">for</span>.(items[<s |
| 29780 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e | pan.class="tok-number">0</span>. |
| 297a0 | 2e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 | .<span.class="tok-number">1</spa |
| 297c0 | 6e 3e 5d 29 20 7c 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 73 75 6d 20 2b 3d 20 76 61 | n>]).|value|.{.........sum.+=.va |
| 297e0 | 6c 75 65 3b 0a 20 20 20 20 7d 0a 20 20 20 20 61 73 73 65 72 74 28 73 75 6d 20 3d 3d 20 3c 73 70 | lue;.....}.....assert(sum.==.<sp |
| 29800 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 30 3c 2f 73 70 61 6e 3e 29 | an.class="tok-number">20</span>) |
| 29820 | 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" |
| 29840 | 3e 2f 2f 20 54 6f 20 61 63 63 65 73 73 20 74 68 65 20 69 6e 64 65 78 20 6f 66 20 69 74 65 72 61 | >//.To.access.the.index.of.itera |
| 29860 | 74 69 6f 6e 2c 20 73 70 65 63 69 66 79 20 61 20 73 65 63 6f 6e 64 20 63 61 70 74 75 72 65 20 76 | tion,.specify.a.second.capture.v |
| 29880 | 61 6c 75 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | alue.</span>.....<span.class="to |
| 298a0 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 69 73 20 69 73 20 7a 65 72 6f 2d 69 6e 64 65 78 | k-comment">//.This.is.zero-index |
| 298c0 | 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ed.</span>.....<span.class="tok- |
| 298e0 | 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 73 | kw">var</span>.sum2:.<span.class |
| 29900 | 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 |
| 29920 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 | lass="tok-number">0</span>;..... |
| 29940 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 | <span.class="tok-kw">for</span>. |
| 29960 | 28 69 74 65 6d 73 29 20 7c 76 61 6c 75 65 2c 20 69 7c 20 7b 0a 20 20 20 20 20 20 20 20 61 73 73 | (items).|value,.i|.{.........ass |
| 29980 | 65 72 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 | ert(<span.class="tok-builtin">@t |
| 299a0 | 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 69 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ypeOf</span>(i).==.<span.class=" |
| 299c0 | 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 | tok-type">usize</span>);........ |
| 299e0 | 20 73 75 6d 32 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | .sum2.+=.<span.class="tok-builti |
| 29a00 | 6e 22 3e 40 69 6e 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | n">@intCast</span>(<span.class=" |
| 29a20 | 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 0a | tok-type">i32</span>,.i);.....}. |
| 29a40 | 20 20 20 20 61 73 73 65 72 74 28 73 75 6d 32 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ....assert(sum2.==.<span.class=" |
| 29a60 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e | tok-number">10</span>);.}..<span |
| 29a80 | 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 |
| 29aa0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 6f 72 20 72 65 66 65 | n.class="tok-str">"for.refe |
| 29ac0 | 72 65 6e 63 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | rence"</span>.{.....<span.c |
| 29ae0 | 6c 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.= |
| 29b00 | 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 | .[]<span.class="tok-type">i32</s |
| 29b20 | 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 22 3e | pan>.{.<span.class="tok-number"> |
| 29b40 | 33 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | 3</span>,.<span.class="tok-numbe |
| 29b60 | 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | r">4</span>,.<span.class="tok-nu |
| 29b80 | 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | mber">2</span>.};......<span.cla |
| 29ba0 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 74 65 72 61 74 65 20 6f 76 65 72 | ss="tok-comment">//.Iterate.over |
| 29bc0 | 20 74 68 65 20 73 6c 69 63 65 20 62 79 20 72 65 66 65 72 65 6e 63 65 20 62 79 3c 2f 73 70 61 6e | .the.slice.by.reference.by</span |
| 29be0 | 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"> |
| 29c00 | 2f 2f 20 73 70 65 63 69 66 79 69 6e 67 20 74 68 61 74 20 74 68 65 20 63 61 70 74 75 72 65 20 76 | //.specifying.that.the.capture.v |
| 29c20 | 61 6c 75 65 20 69 73 20 61 20 70 6f 69 6e 74 65 72 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 | alue.is.a.pointer.</span>.....<s |
| 29c40 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 69 | pan.class="tok-kw">for</span>.(i |
| 29c60 | 74 65 6d 73 29 20 7c 2a 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 76 61 6c 75 65 2e 2a | tems).|*value|.{.........value.* |
| 29c80 | 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</ |
| 29ca0 | 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 61 73 73 65 72 74 28 69 74 65 6d 73 5b 3c | span>;.....}......assert(items[< |
| 29cc0 | 73 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> |
| 29ce0 | 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 34 3c | ].==.<span.class="tok-number">4< |
| 29d00 | 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 61 73 73 65 72 74 28 69 74 65 6d 73 5b 3c 73 70 61 6e 20 | /span>);.....assert(items[<span. |
| 29d20 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 | class="tok-number">1</span>].==. |
| 29d40 | 3c 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 |
| 29d60 | 3e 29 3b 0a 20 20 20 20 61 73 73 65 72 74 28 69 74 65 6d 73 5b 3c 73 70 61 6e 20 63 6c 61 73 73 | >);.....assert(items[<span.class |
| 29d80 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 3c 73 70 61 6e | ="tok-number">2</span>].==.<span |
| 29da0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 3b 0a 7d | .class="tok-number">3</span>);.} |
| 29dc0 | 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 |
| 29de0 | 6e 3e 20 3c 73 70 61 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 |
| 29e00 | 6f 72 20 65 6c 73 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e | or.else"</span>.{.....<span |
| 29e20 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 46 6f 72 20 61 6c 6c 6f | .class="tok-comment">//.For.allo |
| 29e40 | 77 73 20 61 6e 20 65 6c 73 65 20 61 74 74 61 63 68 65 64 20 74 6f 20 69 74 2c 20 74 68 65 20 73 | ws.an.else.attached.to.it,.the.s |
| 29e60 | 61 6d 65 20 61 73 20 61 20 77 68 69 6c 65 20 6c 6f 6f 70 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | ame.as.a.while.loop.</span>..... |
| 29e80 | 3c 73 70 61 6e 20 63 6c 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>. |
| 29ea0 | 69 74 65 6d 73 20 3d 20 5b 5d 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | items.=.[]?<span.class="tok-type |
| 29ec0 | 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- |
| 29ee0 | 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 |
| 29f00 | 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 |
| 29f20 | 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 | ="tok-null">null</span>,.<span.c |
| 29f40 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 0a 20 | lass="tok-number">5</span>.};... |
| 29f60 | 20 20 20 3c 73 70 61 6e 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">//. |
| 29f80 | 46 6f 72 20 6c 6f 6f 70 73 20 63 61 6e 20 61 6c 73 6f 20 62 65 20 75 73 65 64 20 61 73 20 65 78 | For.loops.can.also.be.used.as.ex |
| 29fa0 | 70 72 65 73 73 69 6f 6e 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | pressions.</span>.....<span.clas |
| 29fc0 | 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 6e | s="tok-kw">var</span>.sum:.<span |
| 29fe0 | 20 63 6c 61 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>.=.< |
| 2a000 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e | span.class="tok-number">0</span> |
| 2a020 | 3b 0a 20 20 20 20 3c 73 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 |
| 2a040 | 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 |
| 2a060 | 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 69 74 65 6d 73 29 20 7c 76 61 6c 75 65 7c | k-kw">for</span>.(items).|value| |
| 2a080 | 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"> |
| 2a0a0 | 69 66 3c 2f 73 70 61 6e 3e 20 28 76 61 6c 75 65 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | if</span>.(value.==.<span.class= |
| 2a0c0 | 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 | "tok-null">null</span>).{....... |
| 2a0e0 | 20 20 20 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 |
| 2a100 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | </span>.<span.class="tok-number" |
| 2a120 | 3e 39 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | >9</span>;.........}.<span.class |
| 2a140 | 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>.{......... |
| 2a160 | 20 20 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 | ....sum.+=.value.?;.........}... |
| 2a180 | 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 | ..}.<span.class="tok-kw">else</s |
| 2a1a0 | 70 61 6e 3e 20 62 6c 6b 3a 20 7b 0a 20 20 20 20 20 20 20 20 61 73 73 65 72 74 28 73 75 6d 20 3d | pan>.blk:.{.........assert(sum.= |
| 2a1c0 | 3d 20 3c 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 |
| 2a1e0 | 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | an>);.........<span.class="tok-k |
| 2a200 | 77 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 | w">break</span>.:blk.sum;.....}; |
| 2a220 | 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= |
| 2a240 | 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 66 6f 72 2e 7a 69 67 0a 54 65 73 74 20 | "shell">$.zig.test.for.zig.Test. |
| 2a260 | 31 2f 33 20 66 6f 72 20 62 61 73 69 63 73 2e 2e 2e 4f 4b 0a 54 65 73 74 20 32 2f 33 20 66 6f 72 | 1/3.for.basics...OK.Test.2/3.for |
| 2a280 | 20 72 65 66 65 72 65 6e 63 65 2e 2e 2e 4f 4b 0a 54 65 73 74 20 33 2f 33 20 66 6f 72 20 65 6c 73 | .reference...OK.Test.3/3.for.els |
| 2a2a0 | 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e | e...OK.All.tests.passed..</code> |
| 2a2c0 | 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 66 6f | </pre>........<h2.id="Labeled-fo |
| 2a2e0 | 72 22 3e 4c 61 62 65 6c 65 64 20 66 6f 72 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 57 68 | r">Labeled.for</h2>........<p>Wh |
| 2a300 | 65 6e 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 | en.a.<code.class="zig"><span.cla |
| 2a320 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6c 6f | ss="tok-kw">for</span></code>.lo |
| 2a340 | 6f 70 20 69 73 20 6c 61 62 65 6c 65 64 2c 20 69 74 20 63 61 6e 20 62 65 20 72 65 66 65 72 65 6e | op.is.labeled,.it.can.be.referen |
| 2a360 | 63 65 64 20 66 72 6f 6d 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | ced.from.a.<code.class="zig"><sp |
| 2a380 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 65 61 6b 3c 2f 73 70 61 6e 3e 3c 2f | an.class="tok-kw">break</span></ |
| 2a3a0 | 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 72 20 3c 63 6f 64 65 20 63 6c 61 | code>...............or.<code.cla |
| 2a3c0 | 73 73 3d 22 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 |
| 2a3e0 | 6e 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 66 72 6f 6d 20 77 69 74 68 69 6e | ntinue</span></code>.from.within |
| 2a400 | 20 61 20 6e 65 73 74 65 64 20 6c 6f 6f 70 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 | .a.nested.loop:</p>.......<p.cla |
| 2a420 | 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 |
| 2a440 | 20 63 6c 61 73 73 3d 22 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 |
| 2a460 | 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 |
| 2a480 | 3d 22 74 6f 6b 2d 62 75 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 |
| 2a4a0 | 70 61 6e 20 63 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 |
| 2a4c0 | 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 |
| 2a4e0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 73 74 64 2e 64 65 62 75 | ">const</span>.assert.=.std.debu |
| 2a500 | 67 2e 61 73 73 65 72 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | g.assert;..<span.class="tok-kw"> |
| 2a520 | 74 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 |
| 2a540 | 22 3e 26 71 75 6f 74 3b 6e 65 73 74 65 64 20 62 72 65 61 6b 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | ">"nested.break"</span |
| 2a560 | 3e 20 7b 0a 20 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 |
| 2a580 | 3c 2f 73 70 61 6e 3e 20 63 6f 75 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | </span>.count:.<span.class="tok- |
| 2a5a0 | 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 |
| 2a5c0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 6f 75 74 65 | ="tok-number">0</span>;.....oute |
| 2a5e0 | 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 | r:.<span.class="tok-kw">for</spa |
| 2a600 | 6e 3e 20 28 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 | n>.([]<span.class="tok-type">i32 |
| 2a620 | 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | </span>{.<span.class="tok-number |
| 2a640 | 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 |
| 2a660 | 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- |
| 2a680 | 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 |
| 2a6a0 | 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 |
| 2a6c0 | 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 20 7c 5f 7c 20 7b 0a | ="tok-number">5</span>.}).|_|.{. |
| 2a6e0 | 20 20 20 20 20 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 | ........<span.class="tok-kw">for |
| 2a700 | 3c 2f 73 70 61 6e 3e 20 28 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | </span>.([]<span.class="tok-type |
| 2a720 | 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 6e | ">i32</span>{.<span.class="tok-n |
| 2a740 | 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | umber">1</span>,.<span.class="to |
| 2a760 | 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 3d | k-number">2</span>,.<span.class= |
| 2a780 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 | "tok-number">3</span>,.<span.cla |
| 2a7a0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 | ss="tok-number">4</span>,.<span. |
| 2a7c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 20 7d 29 20 7c | class="tok-number">5</span>.}).| |
| 2a7e0 | 5f 7c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 75 6e 74 20 2b 3d 20 3c 73 70 61 6e 20 | _|.{.............count.+=.<span. |
| 2a800 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 | class="tok-number">1</span>;.... |
| 2a820 | 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 62 72 | .........<span.class="tok-kw">br |
| 2a840 | 65 61 6b 3c 2f 73 70 61 6e 3e 20 3a 6f 75 74 65 72 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 | eak</span>.:outer;.........}.... |
| 2a860 | 20 7d 0a 20 20 20 20 61 73 73 65 72 74 28 63 6f 75 6e 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 | .}.....assert(count.==.<span.cla |
| 2a880 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 | ss="tok-number">1</span>);.}..<s |
| 2a8a0 | 70 61 6e 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>.< |
| 2a8c0 | 73 70 61 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 65 | span.class="tok-str">"neste |
| 2a8e0 | 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 73 | d.continue"</span>.{.....<s |
| 2a900 | 70 61 6e 20 63 6c 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 6f | pan.class="tok-kw">var</span>.co |
| 2a920 | 75 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a | unt:.<span.class="tok-type">usiz |
| 2a940 | 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 |
| 2a960 | 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 6f 75 74 65 72 3a 20 3c 73 70 61 6e 20 63 | er">0</span>;.....outer:.<span.c |
| 2a980 | 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 5b 5d 3c 73 70 61 | lass="tok-kw">for</span>.([]<spa |
| 2a9a0 | 6e 20 63 6c 61 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 | n.class="tok-type">i32</span>{.< |
| 2a9c0 | 73 70 61 6e 20 63 6c 61 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> |
| 2a9e0 | 2c 20 3c 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 |
| 2aa00 | 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< |
| 2aa20 | 2f 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" |
| 2aa40 | 3e 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | >4</span>,.<span.class="tok-numb |
| 2aa60 | 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | er">5</span>,.<span.class="tok-n |
| 2aa80 | 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 6f | umber">6</span>,.<span.class="to |
| 2aaa0 | 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 3d | k-number">7</span>,.<span.class= |
| 2aac0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 38 3c 2f 73 70 61 6e 3e 20 7d 29 20 7c 5f 7c 20 7b 0a 20 | "tok-number">8</span>.}).|_|.{.. |
| 2aae0 | 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c | .......<span.class="tok-kw">for< |
| 2ab00 | 2f 73 70 61 6e 3e 20 28 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | /span>.([]<span.class="tok-type" |
| 2ab20 | 3e 69 33 32 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | >i32</span>{.<span.class="tok-nu |
| 2ab40 | 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | mber">1</span>,.<span.class="tok |
| 2ab60 | 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | -number">2</span>,.<span.class=" |
| 2ab80 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-number">3</span>,.<span.clas |
| 2aba0 | 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 |
| 2abc0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 20 7d 29 20 7c 5f | lass="tok-number">5</span>.}).|_ |
| 2abe0 | 7c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 75 6e 74 20 2b 3d 20 3c 73 70 61 6e 20 63 | |.{.............count.+=.<span.c |
| 2ac00 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 | lass="tok-number">1</span>;..... |
| 2ac20 | 20 20 20 20 20 20 20 20 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 |
| 2ac40 | 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 20 20 20 7d 0a 20 | tinue</span>.:outer;.........}.. |
| 2ac60 | 20 20 20 7d 0a 0a 20 20 20 20 61 73 73 65 72 74 28 63 6f 75 6e 74 20 3d 3d 20 3c 73 70 61 6e 20 | ...}......assert(count.==.<span. |
| 2ac80 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 38 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c | class="tok-number">8</span>);.}< |
| 2aca0 | 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 |
| 2acc0 | 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 31 2f | ell">$.zig.test.test.zig.Test.1/ |
| 2ace0 | 32 20 6e 65 73 74 65 64 20 62 72 65 61 6b 2e 2e 2e 4f 4b 0a 54 65 73 74 20 32 2f 32 20 6e 65 73 | 2.nested.break...OK.Test.2/2.nes |
| 2ad00 | 74 65 64 20 63 6f 6e 74 69 6e 75 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 74 65 73 74 73 20 70 61 73 73 | ted.continue...OK.All.tests.pass |
| 2ad20 | 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>............... |
| 2ad40 | 3c 68 32 20 69 64 3d 22 69 6e 6c 69 6e 65 2d 66 6f 72 22 3e 69 6e 6c 69 6e 65 20 66 6f 72 3c 2f | <h2.id="inline-for">inline.for</ |
| 2ad60 | 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 6c 6f 6f 70 73 20 63 | h2>........<p>.......For.loops.c |
| 2ad80 | 61 6e 20 62 65 20 69 6e 6c 69 6e 65 64 2e 20 54 68 69 73 20 63 61 75 73 65 73 20 74 68 65 20 6c | an.be.inlined..This.causes.the.l |
| 2ada0 | 6f 6f 70 20 74 6f 20 62 65 20 75 6e 72 6f 6c 6c 65 64 2c 20 77 68 69 63 68 0a 20 20 20 20 20 20 | oop.to.be.unrolled,.which....... |
| 2adc0 | 61 6c 6c 6f 77 73 20 74 68 65 20 63 6f 64 65 20 74 6f 20 64 6f 20 73 6f 6d 65 20 74 68 69 6e 67 | allows.the.code.to.do.some.thing |
| 2ade0 | 73 20 77 68 69 63 68 20 6f 6e 6c 79 20 77 6f 72 6b 20 61 74 20 63 6f 6d 70 69 6c 65 20 74 69 6d | s.which.only.work.at.compile.tim |
| 2ae00 | 65 2c 0a 20 20 20 20 20 20 73 75 63 68 20 61 73 20 75 73 65 20 74 79 70 65 73 20 61 73 20 66 69 | e,.......such.as.use.types.as.fi |
| 2ae20 | 72 73 74 20 63 6c 61 73 73 20 76 61 6c 75 65 73 2e 0a 20 20 20 20 20 20 54 68 65 20 63 61 70 74 | rst.class.values........The.capt |
| 2ae40 | 75 72 65 20 76 61 6c 75 65 20 61 6e 64 20 69 74 65 72 61 74 6f 72 20 76 61 6c 75 65 20 6f 66 20 | ure.value.and.iterator.value.of. |
| 2ae60 | 69 6e 6c 69 6e 65 64 20 66 6f 72 20 6c 6f 6f 70 73 20 61 72 65 0a 20 20 20 20 20 20 63 6f 6d 70 | inlined.for.loops.are.......comp |
| 2ae80 | 69 6c 65 2d 74 69 6d 65 20 6b 6e 6f 77 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | ile-time.known........</p>...... |
| 2aea0 | 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 |
| 2aec0 | 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= |
| 2aee0 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 3c | "tok-kw">const</span>.assert.=.< |
| 2af00 | 73 70 61 6e 20 63 6c 61 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 |
| 2af20 | 3c 2f 73 70 61 6e 3e 28 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 |
| 2af40 | 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 61 73 73 65 | uot;std"</span>).debug.asse |
| 2af60 | 72 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f | rt;..<span.class="tok-kw">test</ |
| 2af80 | 73 70 61 6e 3e 20 3c 73 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 |
| 2afa0 | 74 3b 69 6e 6c 69 6e 65 20 66 6f 72 20 6c 6f 6f 70 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b | t;inline.for.loop"</span>.{ |
| 2afc0 | 0a 20 20 20 20 3c 73 70 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< |
| 2afe0 | 2f 73 70 61 6e 3e 20 6e 75 6d 73 20 3d 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | /span>.nums.=.[]<span.class="tok |
| 2b000 | 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | -type">i32</span>{<span.class="t |
| 2b020 | 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 |
| 2b040 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c | ="tok-number">4</span>,.<span.cl |
| 2b060 | 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 7d 3b 0a 20 20 20 20 | ass="tok-number">6</span>};..... |
| 2b080 | 3c 73 70 61 6e 20 63 6c 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>. |
| 2b0a0 | 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 |
| 2b0c0 | 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 |
| 2b0e0 | 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 |
| 2b100 | 6f 6b 2d 6b 77 22 3e 69 6e 6c 69 6e 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-kw">inline</span>.<span.class |
| 2b120 | 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 6e 75 6d 73 29 20 7c 69 7c 20 | ="tok-kw">for</span>.(nums).|i|. |
| 2b140 | 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 |
| 2b160 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 54 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | onst</span>.T.=.<span.class="tok |
| 2b180 | 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 69 29 20 7b 0a 20 20 20 20 20 20 20 | -kw">switch</span>.(i).{........ |
| 2b1a0 | 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c | .....<span.class="tok-number">2< |
| 2b1c0 | 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | /span>.=>.<span.class="tok-ty |
| 2b1e0 | 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 | pe">f32</span>,.............<spa |
| 2b200 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 20 3d 26 | n.class="tok-number">4</span>.=& |
| 2b220 | 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 | gt;.<span.class="tok-type">i8</s |
| 2b240 | 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | pan>,.............<span.class="t |
| 2b260 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 | ok-number">6</span>.=>.<span. |
| 2b280 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 0a 20 20 | class="tok-type">bool</span>,... |
| 2b2a0 | 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 | ..........<span.class="tok-kw">e |
| 2b2c0 | 6c 73 65 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | lse</span>.=>.<span.class="to |
| 2b2e0 | 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 | k-kw">unreachable</span>,....... |
| 2b300 | 20 20 7d 3b 0a 20 20 20 20 20 20 20 20 73 75 6d 20 2b 3d 20 74 79 70 65 4e 61 6d 65 4c 65 6e 67 | ..};.........sum.+=.typeNameLeng |
| 2b320 | 74 68 28 54 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 61 73 73 65 72 74 28 73 75 6d 20 3d 3d 20 3c | th(T);.....}.....assert(sum.==.< |
| 2b340 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 3c 2f 73 70 61 6e 3e | span.class="tok-number">9</span> |
| 2b360 | 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 |
| 2b380 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 74 79 70 65 4e 61 | pan>.<span.class="tok-fn">typeNa |
| 2b3a0 | 6d 65 4c 65 6e 67 74 68 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | meLength</span>(<span.class="tok |
| 2b3c0 | 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c | -kw">comptime</span>.T:.<span.cl |
| 2b3e0 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 | ass="tok-type">type</span>).<spa |
| 2b400 | 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>. |
| 2b420 | 7b 0a 20 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 |
| 2b440 | 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | n</span>.<span.class="tok-builti |
| 2b460 | 6e 22 3e 40 74 79 70 65 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 54 29 2e 6c 65 6e 3b 0a 7d 3c 2f 63 | n">@typeName</span>(T).len;.}</c |
| 2b480 | 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 |
| 2b4a0 | 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 31 2f 31 20 | l">$.zig.test.test.zig.Test.1/1. |
| 2b4c0 | 69 6e 6c 69 6e 65 20 66 6f 72 20 6c 6f 6f 70 2e 2e 2e 4f 4b 0a 41 6c 6c 20 74 65 73 74 73 20 70 | inline.for.loop...OK.All.tests.p |
| 2b4e0 | 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>. |
| 2b500 | 20 20 20 20 20 20 49 74 20 69 73 20 72 65 63 6f 6d 6d 65 6e 64 65 64 20 74 6f 20 75 73 65 20 3c | ......It.is.recommended.to.use.< |
| 2b520 | 63 6f 64 65 20 63 6c 61 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 |
| 2b540 | 6b 2d 6b 77 22 3e 69 6e 6c 69 6e 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6c 6f 6f 70 73 | k-kw">inline</span></code>.loops |
| 2b560 | 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 73 6f 6e 73 3a 0a | .only.for.one.of.these.reasons:. |
| 2b580 | 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c | ......</p>.......<ul>.........<l |
| 2b5a0 | 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 63 75 74 65 20 61 | i>You.need.the.loop.to.execute.a |
| 2b5c0 | 74 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f | t.<a.href="#comptime">comptime</ |
| 2b5e0 | 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 72 6b 2e 3c 2f 6c | a>.for.the.semantics.to.work.</l |
| 2b600 | 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 75 20 68 61 76 65 | i>.........<li>.........You.have |
| 2b620 | 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 20 66 6f 72 63 69 | .a.benchmark.to.prove.that.forci |
| 2b640 | 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 74 68 69 73 20 77 | bly.unrolling.the.loop.in.this.w |
| 2b660 | 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 20 20 20 20 20 20 | ay.is.measurably.faster......... |
| 2b680 | 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 | .</li>.......</ul>.............. |
| 2b6a0 | 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 |
| 2b6c0 | 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 6c 69 3e 3c 61 20 | ="#while">while</a></li>.<li><a. |
| 2b6e0 | 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 3c 2f 6c | href="#comptime">comptime</a></l |
| 2b700 | 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 72 72 61 79 73 3c | i>.<li><a.href="#Arrays">Arrays< |
| 2b720 | 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 53 6c 69 63 65 73 22 3e 53 | /a></li>.<li><a.href="#Slices">S |
| 2b740 | 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>............ |
| 2b760 | 20 20 20 3c 68 31 20 69 64 3d 22 69 66 22 3e 69 66 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 | ...<h1.id="if">if</h1>........<p |
| 2b780 | 20 63 6c 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 | .class="file">if.zig</p><pre><co |
| 2b7a0 | 64 65 20 63 6c 61 73 73 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- |
| 2b7c0 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 66 20 65 78 70 72 65 73 73 69 6f 6e 73 20 68 61 76 65 20 | comment">//.If.expressions.have. |
| 2b7e0 | 74 68 72 65 65 20 75 73 65 73 2c 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 74 6f 20 74 68 65 | three.uses,.corresponding.to.the |
| 2b800 | 20 74 68 72 65 65 20 74 79 70 65 73 3a 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | .three.types:</span>.<span.class |
| 2b820 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 2a 20 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 0a | ="tok-comment">//.*.bool</span>. |
| 2b840 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 2a 20 3f | <span.class="tok-comment">//.*.? |
| 2b860 | 54 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e | T</span>.<span.class="tok-commen |
| 2b880 | 74 22 3e 2f 2f 20 2a 20 65 72 72 6f 72 21 54 3c 2f 73 70 61 6e 3e 0a 0a 3c 73 70 61 6e 20 63 6c | t">//.*.error!T</span>..<span.cl |
| 2b8a0 | 61 73 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 |
| 2b8c0 | 20 3d 20 3c 73 70 61 6e 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 |
| 2b8e0 | 70 6f 72 74 3c 2f 73 70 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 |
| 2b900 | 22 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. |
| 2b920 | 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 |
| 2b940 | 73 74 3c 2f 73 70 61 6e 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"> |
| 2b960 | 26 71 75 6f 74 3b 69 66 20 62 6f 6f 6c 65 61 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a | "if.boolean"</span>.{. |
| 2b980 | 20 20 20 20 3c 73 70 61 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">// |
| 2b9a0 | 20 49 66 20 65 78 70 72 65 73 73 69 6f 6e 73 20 74 65 73 74 20 62 6f 6f 6c 65 61 6e 20 63 6f 6e | .If.expressions.test.boolean.con |
| 2b9c0 | 64 69 74 69 6f 6e 73 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ditions.</span>.....<span.class= |
| 2b9e0 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 | "tok-kw">const</span>.a:.<span.c |
| 2ba00 | 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 |
| 2ba20 | 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>;. |
| 2ba40 | 20 20 20 20 3c 73 70 61 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</ |
| 2ba60 | 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"> |
| 2ba80 | 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 |
| 2baa0 | 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | mber">4</span>;.....<span.class= |
| 2bac0 | 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 20 21 3d 20 62 29 20 7b 0a 20 20 | "tok-kw">if</span>.(a.!=.b).{... |
| 2bae0 | 20 20 20 20 20 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | ......assert(<span.class="tok-nu |
| 2bb00 | 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c | ll">true</span>);.....}.<span.cl |
| 2bb20 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 | ass="tok-kw">else</span>.<span.c |
| 2bb40 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 20 3d 3d 20 3c 73 | lass="tok-kw">if</span>.(a.==.<s |
| 2bb60 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 3c 2f 73 70 61 6e 3e 29 | pan.class="tok-number">9</span>) |
| 2bb80 | 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"> |
| 2bba0 | 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 | unreachable</span>;.....}.<span. |
| 2bbc0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | class="tok-kw">else</span>.{.... |
| 2bbe0 | 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 | .....<span.class="tok-kw">unreac |
| 2bc00 | 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 | hable</span>;.....}......<span.c |
| 2bc20 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 66 20 65 78 70 72 65 73 73 | lass="tok-comment">//.If.express |
| 2bc40 | 69 6f 6e 73 20 61 72 65 20 75 73 65 64 20 69 6e 73 74 65 61 64 20 6f 66 20 61 20 74 65 72 6e 61 | ions.are.used.instead.of.a.terna |
| 2bc60 | 72 79 20 65 78 70 72 65 73 73 69 6f 6e 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 | ry.expression.</span>.....<span. |
| 2bc80 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 72 65 73 75 | class="tok-kw">const</span>.resu |
| 2bca0 | 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 69 66 3c 2f 73 70 | lt.=.<span.class="tok-kw">if</sp |
| 2bcc0 | 61 6e 3e 20 28 61 20 21 3d 20 62 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | an>.(a.!=.b).<span.class="tok-nu |
| 2bce0 | 6d 62 65 72 22 3e 34 37 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | mber">47</span>.<span.class="tok |
| 2bd00 | 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | -kw">else</span>.<span.class="to |
| 2bd20 | 6b 2d 6e 75 6d 62 65 72 22 3e 33 30 38 39 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 61 73 73 65 72 | k-number">3089</span>;.....asser |
| 2bd40 | 74 28 72 65 73 75 6c 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | t(result.==.<span.class="tok-num |
| 2bd60 | 62 65 72 22 3e 34 37 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ber">47</span>);.}..<span.class= |
| 2bd80 | 22 74 6f 6b 2d 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 |
| 2bda0 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 66 20 6f 70 74 69 6f 6e 61 6c 26 71 75 6f | ="tok-str">"if.optional&quo |
| 2bdc0 | 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 |
| 2bde0 | 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 |
| 2be00 | 20 66 6f 72 20 6e 75 6c 6c 2e 3c 2f 73 70 61 6e 3e 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | .for.null.</span>......<span.cla |
| 2be20 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 3a 20 3f 3c 73 70 | ss="tok-kw">const</span>.a:.?<sp |
| 2be40 | 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>.= |
| 2be60 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 | .<span.class="tok-number">0</spa |
| 2be80 | 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c | n>;.....<span.class="tok-kw">if< |
| 2bea0 | 2f 73 70 61 6e 3e 20 28 61 29 20 7c 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 61 73 73 | /span>.(a).|value|.{.........ass |
| 2bec0 | 65 72 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 | ert(value.==.<span.class="tok-nu |
| 2bee0 | 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 | mber">0</span>);.....}.<span.cla |
| 2bf00 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 | ss="tok-kw">else</span>.{....... |
| 2bf20 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 | ..<span.class="tok-kw">unreachab |
| 2bf40 | 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 61 73 | le</span>;.....}......<span.clas |
| 2bf60 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 3a 20 3f 3c 73 70 61 | s="tok-kw">const</span>.b:.?<spa |
| 2bf80 | 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>.=. |
| 2bfa0 | 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 |
| 2bfc0 | 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c | n>;.....<span.class="tok-kw">if< |
| 2bfe0 | 2f 73 70 61 6e 3e 20 28 62 29 20 7c 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 | /span>.(b).|value|.{.........<sp |
| 2c000 | 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 |
| 2c020 | 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" |
| 2c040 | 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 61 73 73 65 72 74 28 3c 73 | >else</span>.{.........assert(<s |
| 2c060 | 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> |
| 2c080 | 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 63 | );.....}......<span.class="tok-c |
| 2c0a0 | 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 65 6c 73 65 20 69 73 20 6e 6f 74 20 72 65 71 75 69 | omment">//.The.else.is.not.requi |
| 2c0c0 | 72 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | red.</span>.....<span.class="tok |
| 2c0e0 | 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 29 20 7c 76 61 6c 75 65 7c 20 7b 0a 20 20 20 | -kw">if</span>.(a).|value|.{.... |
| 2c100 | 20 20 20 20 20 61 73 73 65 72 74 28 76 61 6c 75 65 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | .....assert(value.==.<span.class |
| 2c120 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 0a | ="tok-number">0</span>);.....}.. |
| 2c140 | 20 20 20 20 3c 73 70 61 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">// |
| 2c160 | 20 54 6f 20 74 65 73 74 20 61 67 61 69 6e 73 74 20 6e 75 6c 6c 20 6f 6e 6c 79 2c 20 75 73 65 20 | .To.test.against.null.only,.use. |
| 2c180 | 74 68 65 20 62 69 6e 61 72 79 20 65 71 75 61 6c 69 74 79 20 6f 70 65 72 61 74 6f 72 2e 3c 2f 73 | the.binary.equality.operator.</s |
| 2c1a0 | 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 69 66 | pan>.....<span.class="tok-kw">if |
| 2c1c0 | 3c 2f 73 70 61 6e 3e 20 28 62 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | </span>.(b.==.<span.class="tok-n |
| 2c1e0 | 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 61 73 73 65 | ull">null</span>).{.........asse |
| 2c200 | 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 74 72 75 65 3c 2f | rt(<span.class="tok-null">true</ |
| 2c220 | 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | span>);.....}......<span.class=" |
| 2c240 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 41 63 63 65 73 73 20 74 68 65 20 76 61 6c 75 65 | tok-comment">//.Access.the.value |
| 2c260 | 20 62 79 20 72 65 66 65 72 65 6e 63 65 20 75 73 69 6e 67 20 61 20 70 6f 69 6e 74 65 72 20 63 61 | .by.reference.using.a.pointer.ca |
| 2c280 | 70 74 75 72 65 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | pture.</span>.....<span.class="t |
| 2c2a0 | 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 63 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 | ok-kw">var</span>.c:.?<span.clas |
| 2c2c0 | 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. |
| 2c2e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 | class="tok-number">3</span>;.... |
| 2c300 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 | .<span.class="tok-kw">if</span>. |
| 2c320 | 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 20 3d | (c).|*value|.{.........value.*.= |
| 2c340 | 20 3c 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 |
| 2c360 | 6e 3e 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | n>;.....}......<span.class="tok- |
| 2c380 | 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 63 29 20 7c 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 | kw">if</span>.(c).|value|.{..... |
| 2c3a0 | 20 20 20 20 61 73 73 65 72 74 28 76 61 6c 75 65 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ....assert(value.==.<span.class= |
| 2c3c0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 20 3c 73 | "tok-number">2</span>);.....}.<s |
| 2c3e0 | 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>.{ |
| 2c400 | 0a 20 20 20 20 20 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 |
| 2c420 | 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 7d 0a 0a 3c 73 70 61 6e | reachable</span>;.....}.}..<span |
| 2c440 | 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 |
| 2c460 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 66 20 65 72 72 6f 72 | n.class="tok-str">"if.error |
| 2c480 | 20 75 6e 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 | .union"</span>.{.....<span. |
| 2c4a0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 66 20 65 78 70 72 65 73 | class="tok-comment">//.If.expres |
| 2c4c0 | 73 69 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 | sions.test.for.errors.</span>... |
| 2c4e0 | 20 20 3c 73 70 61 6e 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 |
| 2c500 | 6f 74 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 | ote.the.|err|.capture.on.the.els |
| 2c520 | 65 2e 3c 2f 73 70 61 6e 3e 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | e.</span>......<span.class="tok- |
| 2c540 | 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= |
| 2c560 | 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 3c 73 70 61 6e 20 63 6c 61 73 | "tok-kw">error</span>!<span.clas |
| 2c580 | 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. |
| 2c5a0 | 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>;.... |
| 2c5c0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 | .<span.class="tok-kw">if</span>. |
| 2c5e0 | 28 61 29 20 7c 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 61 73 73 65 72 74 28 76 61 6c | (a).|value|.{.........assert(val |
| 2c600 | 75 65 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 | ue.==.<span.class="tok-number">0 |
| 2c620 | 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | </span>);.....}.<span.class="tok |
| 2c640 | 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 | -kw">else</span>.|err|.{........ |
| 2c660 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c | .<span.class="tok-kw">unreachabl |
| 2c680 | 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | e</span>;.....}......<span.class |
| 2c6a0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 3a 20 3c 73 70 61 6e 20 | ="tok-kw">const</span>.b:.<span. |
| 2c6c0 | 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 21 3c 73 70 61 | class="tok-kw">error</span>!<spa |
| 2c6e0 | 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>.=. |
| 2c700 | 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 |
| 2c720 | 3e 2e 42 61 64 56 61 6c 75 65 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | >.BadValue;.....<span.class="tok |
| 2c740 | 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 62 29 20 7c 76 61 6c 75 65 7c 20 7b 0a 20 20 20 | -kw">if</span>.(b).|value|.{.... |
| 2c760 | 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 | .....<span.class="tok-kw">unreac |
| 2c780 | 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 3d | hable</span>;.....}.<span.class= |
| 2c7a0 | 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 20 20 | "tok-kw">else</span>.|err|.{.... |
| 2c7c0 | 20 20 20 20 20 61 73 73 65 72 74 28 65 72 72 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .....assert(err.==.<span.class=" |
| 2c7e0 | 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 42 61 64 56 61 6c 75 65 29 3b 0a | tok-kw">error</span>.BadValue);. |
| 2c800 | 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 6d | ....}......<span.class="tok-comm |
| 2c820 | 65 6e 74 22 3e 2f 2f 20 54 68 65 20 65 6c 73 65 20 61 6e 64 20 7c 65 72 72 7c 20 63 61 70 74 75 | ent">//.The.else.and.|err|.captu |
| 2c840 | 72 65 20 69 73 20 73 74 72 69 63 74 6c 79 20 72 65 71 75 69 72 65 64 2e 3c 2f 73 70 61 6e 3e 0a | re.is.strictly.required.</span>. |
| 2c860 | 20 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 |
| 2c880 | 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 61 73 73 65 72 74 28 | n>.(a).|value|.{.........assert( |
| 2c8a0 | 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 |
| 2c8c0 | 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=" |
| 2c8e0 | 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 0a 20 20 20 20 | tok-kw">else</span>.|_|.{}...... |
| 2c900 | 3c 73 70 61 6e 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 | <span.class="tok-comment">//.To. |
| 2c920 | 63 68 65 63 6b 20 6f 6e 6c 79 20 74 68 65 20 65 72 72 6f 72 20 76 61 6c 75 65 2c 20 75 73 65 20 | check.only.the.error.value,.use. |
| 2c940 | 61 6e 20 65 6d 70 74 79 20 62 6c 6f 63 6b 20 65 78 70 72 65 73 73 69 6f 6e 2e 3c 2f 73 70 61 6e | an.empty.block.expression.</span |
| 2c960 | 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 73 | >.....<span.class="tok-kw">if</s |
| 2c980 | 70 61 6e 3e 20 28 62 29 20 7c 5f 7c 20 7b 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | pan>.(b).|_|.{}.<span.class="tok |
| 2c9a0 | 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 | -kw">else</span>.|err|.{........ |
| 2c9c0 | 20 61 73 73 65 72 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 | .assert(err.==.<span.class="tok- |
| 2c9e0 | 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 42 61 64 56 61 6c 75 65 29 3b 0a 20 20 20 20 | kw">error</span>.BadValue);..... |
| 2ca00 | 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 | }......<span.class="tok-comment" |
| 2ca20 | 3e 2f 2f 20 41 63 63 65 73 73 20 74 68 65 20 76 61 6c 75 65 20 62 79 20 72 65 66 65 72 65 6e 63 | >//.Access.the.value.by.referenc |
| 2ca40 | 65 20 75 73 69 6e 67 20 61 20 70 6f 69 6e 74 65 72 20 63 61 70 74 75 72 65 2e 3c 2f 73 70 61 6e | e.using.a.pointer.capture.</span |
| 2ca60 | 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f | >.....<span.class="tok-kw">var</ |
| 2ca80 | 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 6b 77 22 3e 65 72 | span>.c:.<span.class="tok-kw">er |
| 2caa0 | 72 6f 72 3c 2f 73 70 61 6e 3e 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | ror</span>!<span.class="tok-type |
| 2cac0 | 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- |
| 2cae0 | 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | number">3</span>;.....<span.clas |
| 2cb00 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 63 29 20 7c 2a 76 61 6c 75 65 | s="tok-kw">if</span>.(c).|*value |
| 2cb20 | 7c 20 7b 0a 20 20 20 20 20 20 20 20 76 61 6c 75 65 2e 2a 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | |.{.........value.*.=.<span.clas |
| 2cb40 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 20 3c | s="tok-number">9</span>;.....}.< |
| 2cb60 | 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>. |
| 2cb80 | 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | |err|.{.........<span.class="tok |
| 2cba0 | 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 0a | -kw">unreachable</span>;.....}.. |
| 2cbc0 | 20 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 |
| 2cbe0 | 6e 3e 20 28 63 29 20 7c 76 61 6c 75 65 7c 20 7b 0a 20 20 20 20 20 20 20 20 61 73 73 65 72 74 28 | n>.(c).|value|.{.........assert( |
| 2cc00 | 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 |
| 2cc20 | 22 3e 39 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ">9</span>);.....}.<span.class=" |
| 2cc40 | 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|.{..... |
| 2cc60 | 20 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 |
| 2cc80 | 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | able</span>;.....}.}</code></pre |
| 2cca0 | 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. |
| 2ccc0 | 74 65 73 74 20 69 66 2e 7a 69 67 0a 54 65 73 74 20 31 2f 33 20 69 66 20 62 6f 6f 6c 65 61 6e 2e | test.if.zig.Test.1/3.if.boolean. |
| 2cce0 | 2e 2e 4f 4b 0a 54 65 73 74 20 32 2f 33 20 69 66 20 6f 70 74 69 6f 6e 61 6c 2e 2e 2e 4f 4b 0a 54 | ..OK.Test.2/3.if.optional...OK.T |
| 2cd00 | 65 73 74 20 33 2f 33 20 69 66 20 65 72 72 6f 72 20 75 6e 69 6f 6e 2e 2e 2e 4f 4b 0a 41 6c 6c 20 | est.3/3.if.error.union...OK.All. |
| 2cd20 | 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>..... |
| 2cd40 | 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 |
| 2cd60 | 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></ |
| 2cd80 | 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 73 22 3e 45 72 72 6f 72 73 | li>.<li><a.href="#Errors">Errors |
| 2cda0 | 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 |
| 2cdc0 | 31 20 69 64 3d 22 64 65 66 65 72 22 3e 64 65 66 65 72 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c | 1.id="defer">defer</h1>........< |
| 2cde0 | 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 64 65 66 65 72 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 | p.class="file">defer.zig</p><pre |
| 2ce00 | 3e 3c 63 6f 64 65 20 63 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=" |
| 2ce20 | 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 |
| 2ce40 | 20 63 6c 61 73 73 3d 22 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 |
| 2ce60 | 61 6e 3e 28 3c 73 70 61 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">" |
| 2ce80 | 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=" |
| 2cea0 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 73 74 | tok-kw">const</span>.assert.=.st |
| 2cec0 | 64 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | d.debug.assert;.<span.class="tok |
| 2cee0 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 77 61 72 6e 20 3d 20 73 74 64 2e 64 65 62 | -kw">const</span>.warn.=.std.deb |
| 2cf00 | 75 67 2e 77 61 72 6e 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 | ug.warn;..<span.class="tok-comme |
| 2cf20 | 6e 74 22 3e 2f 2f 20 64 65 66 65 72 20 77 69 6c 6c 20 65 78 65 63 75 74 65 20 61 6e 20 65 78 70 | nt">//.defer.will.execute.an.exp |
| 2cf40 | 72 65 73 73 69 6f 6e 20 61 74 20 74 68 65 20 65 6e 64 20 6f 66 20 74 68 65 20 63 75 72 72 65 6e | ression.at.the.end.of.the.curren |
| 2cf60 | 74 20 73 63 6f 70 65 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | t.scope.</span>.<span.class="tok |
| 2cf80 | 2d 6b 77 22 3e 66 6e 3c 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- |
| 2cfa0 | 66 6e 22 3e 64 65 66 65 72 45 78 61 6d 70 6c 65 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 | fn">deferExample</span>().<span. |
| 2cfc0 | 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>.{. |
| 2cfe0 | 20 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 |
| 2d000 | 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 | an>.a:.<span.class="tok-type">us |
| 2d020 | 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 |
| 2d040 | 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 3c | mber">1</span>;......{.........< |
| 2d060 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 64 65 66 65 72 3c 2f 73 70 61 6e 3e | span.class="tok-kw">defer</span> |
| 2d080 | 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 72 22 3e 32 3c | .a.=.<span.class="tok-number">2< |
| 2d0a0 | 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 61 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | /span>;.........a.=.<span.class= |
| 2d0c0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 7d 0a 20 20 20 | "tok-number">1</span>;.....}.... |
| 2d0e0 | 20 61 73 73 65 72 74 28 61 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | .assert(a.==.<span.class="tok-nu |
| 2d100 | 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 61 20 3d 20 3c 73 70 61 6e 20 | mber">2</span>);......a.=.<span. |
| 2d120 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 | class="tok-number">5</span>;.... |
| 2d140 | 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 |
| 2d160 | 61 6e 3e 20 61 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 | an>.a;.}..<span.class="tok-kw">t |
| 2d180 | 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" |
| 2d1a0 | 3e 26 71 75 6f 74 3b 64 65 66 65 72 20 62 61 73 69 63 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | >"defer.basics"</span> |
| 2d1c0 | 20 7b 0a 20 20 20 20 61 73 73 65 72 74 28 64 65 66 65 72 45 78 61 6d 70 6c 65 28 29 20 3d 3d 20 | .{.....assert(deferExample().==. |
| 2d1e0 | 3c 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 |
| 2d200 | 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 | >);.}..<span.class="tok-comment" |
| 2d220 | 3e 2f 2f 20 49 66 20 6d 75 6c 74 69 70 6c 65 20 64 65 66 65 72 20 73 74 61 74 65 6d 65 6e 74 73 | >//.If.multiple.defer.statements |
| 2d240 | 20 61 72 65 20 73 70 65 63 69 66 69 65 64 2c 20 74 68 65 79 20 77 69 6c 6c 20 62 65 20 65 78 65 | .are.specified,.they.will.be.exe |
| 2d260 | 63 75 74 65 64 20 69 6e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | cuted.in</span>.<span.class="tok |
| 2d280 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 68 65 20 72 65 76 65 72 73 65 20 6f 72 64 65 72 20 74 | -comment">//.the.reverse.order.t |
| 2d2a0 | 68 65 79 20 77 65 72 65 20 72 75 6e 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | hey.were.run.</span>.<span.class |
| 2d2c0 | 3d 22 74 6f 6b 2d 6b 77 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= |
| 2d2e0 | 22 74 6f 6b 2d 66 6e 22 3e 64 65 66 65 72 55 6e 77 69 6e 64 45 78 61 6d 70 6c 65 3c 2f 73 70 61 | "tok-fn">deferUnwindExample</spa |
| 2d300 | 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 |
| 2d320 | 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 77 61 72 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | </span>.{.....warn(<span.class=" |
| 2d340 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b | tok-str">"\n"</span>); |
| 2d360 | 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 64 65 66 65 72 | ......<span.class="tok-kw">defer |
| 2d380 | 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 77 61 72 6e 28 3c 73 70 61 6e 20 63 6c 61 | </span>.{.........warn(<span.cla |
| 2d3a0 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 31 20 26 71 75 6f 74 3b 3c 2f 73 70 61 | ss="tok-str">"1."</spa |
| 2d3c0 | 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 74 6f 6b 2d | n>);.....}.....<span.class="tok- |
| 2d3e0 | 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 77 61 72 6e 28 | kw">defer</span>.{.........warn( |
| 2d400 | 3c 73 70 61 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 20 26 71 | <span.class="tok-str">"2.&q |
| 2d420 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | uot;</span>);.....}.....<span.cl |
| 2d440 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c | ass="tok-kw">if</span>.(<span.cl |
| 2d460 | 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 20 7b 0a 20 | ass="tok-null">false</span>).{.. |
| 2d480 | 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" |
| 2d4a0 | 3e 2f 2f 20 64 65 66 65 72 73 20 61 72 65 20 6e 6f 74 20 72 75 6e 20 69 66 20 74 68 65 79 20 61 | >//.defers.are.not.run.if.they.a |
| 2d4c0 | 72 65 20 6e 65 76 65 72 20 65 78 65 63 75 74 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 | re.never.executed.</span>....... |
| 2d4e0 | 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 |
| 2d500 | 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 77 61 72 6e 28 3c 73 70 61 6e 20 63 6c 61 | an>.{.............warn(<span.cla |
| 2d520 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 33 20 26 71 75 6f 74 3b 3c 2f 73 70 61 | ss="tok-str">"3."</spa |
| 2d540 | 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c | n>);.........}.....}.}..<span.cl |
| 2d560 | 61 73 73 3d 22 74 6f 6b 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 |
| 2d580 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 64 65 66 65 72 20 75 6e 77 69 6e | lass="tok-str">"defer.unwin |
| 2d5a0 | 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 55 6e 77 | ding"</span>.{.....deferUnw |
| 2d5c0 | 69 6e 64 45 78 61 6d 70 6c 65 28 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | indExample();.}..<span.class="to |
| 2d5e0 | 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 65 72 72 64 65 66 65 72 20 6b 65 79 77 6f | k-comment">//.The.errdefer.keywo |
| 2d600 | 72 64 20 69 73 20 73 69 6d 69 6c 61 72 20 74 6f 20 64 65 66 65 72 2c 20 62 75 74 20 77 69 6c 6c | rd.is.similar.to.defer,.but.will |
| 2d620 | 20 6f 6e 6c 79 20 65 78 65 63 75 74 65 20 69 66 20 74 68 65 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 | .only.execute.if.the</span>.<spa |
| 2d640 | 6e 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 63 6f 70 65 20 72 | n.class="tok-comment">//.scope.r |
| 2d660 | 65 74 75 72 6e 73 20 77 69 74 68 20 61 6e 20 65 72 72 6f 72 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 | eturns.with.an.error.</span>.<sp |
| 2d680 | 61 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 73 70 61 6e 3e | an.class="tok-comment">//</span> |
| 2d6a0 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 | .<span.class="tok-comment">//.Th |
| 2d6c0 | 69 73 20 69 73 20 65 73 70 65 63 69 61 6c 6c 79 20 75 73 65 66 75 6c 20 69 6e 20 61 6c 6c 6f 77 | is.is.especially.useful.in.allow |
| 2d6e0 | 69 6e 67 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 6f 20 63 6c 65 61 6e 20 75 70 20 70 72 6f 70 65 | ing.a.function.to.clean.up.prope |
| 2d700 | 72 6c 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 63 6f 6d 6d | rly</span>.<span.class="tok-comm |
| 2d720 | 65 6e 74 22 3e 2f 2f 20 6f 6e 20 65 72 72 6f 72 2c 20 61 6e 64 20 72 65 70 6c 61 63 65 73 20 67 | ent">//.on.error,.and.replaces.g |
| 2d740 | 6f 74 6f 20 65 72 72 6f 72 20 68 61 6e 64 6c 69 6e 67 20 74 61 63 74 69 63 73 20 61 73 20 73 65 | oto.error.handling.tactics.as.se |
| 2d760 | 65 6e 20 69 6e 20 63 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 | en.in.c.</span>.<span.class="tok |
| 2d780 | 2d 6b 77 22 3e 66 6e 3c 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- |
| 2d7a0 | 66 6e 22 3e 64 65 66 65 72 45 72 72 6f 72 45 78 61 6d 70 6c 65 3c 2f 73 70 61 6e 3e 28 69 73 5f | fn">deferErrorExample</span>(is_ |
| 2d7c0 | 65 72 72 6f 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f | error:.<span.class="tok-type">bo |
| 2d7e0 | 6f 6c 3c 2f 73 70 61 6e 3e 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | ol</span>).!<span.class="tok-typ |
| 2d800 | 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 77 61 72 6e 28 3c 73 70 61 6e 20 | e">void</span>.{.....warn(<span. |
| 2d820 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 5c 6e 73 74 61 72 74 20 6f 66 | class="tok-str">"\nstart.of |
| 2d840 | 20 66 75 6e 63 74 69 6f 6e 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 | .function\n"</span>);...... |
| 2d860 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 69 | <span.class="tok-comment">//.Thi |
| 2d880 | 73 20 77 69 6c 6c 20 61 6c 77 61 79 73 20 62 65 20 65 78 65 63 75 74 65 64 20 6f 6e 20 65 78 69 | s.will.always.be.executed.on.exi |
| 2d8a0 | 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 6b 77 | t</span>.....<span.class="tok-kw |
| 2d8c0 | 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 77 61 72 6e 28 3c 73 | ">defer</span>.{.........warn(<s |
| 2d8e0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 6e 64 20 6f 66 | pan.class="tok-str">"end.of |
| 2d900 | 20 66 75 6e 63 74 69 6f 6e 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d | .function\n"</span>);.....} |
| 2d920 | 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 64 65 | ......<span.class="tok-kw">errde |
| 2d940 | 66 65 72 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 77 61 72 6e 28 3c 73 70 61 6e 20 | fer</span>.{.........warn(<span. |
| 2d960 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 6e 63 6f 75 6e 74 65 72 65 | class="tok-str">"encountere |
| 2d980 | 64 20 61 6e 20 65 72 72 6f 72 21 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 | d.an.error!\n"</span>);.... |
| 2d9a0 | 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< |
| 2d9c0 | 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 |
| 2d9e0 | 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>.< |
| 2da00 | 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> |
| 2da20 | 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 |
| 2da40 | 73 3d 22 74 6f 6b 2d 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 |
| 2da60 | 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 |
| 2da80 | 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 5f 20 3d 20 64 65 66 | nding"</span>.{....._.=.def |
| 2daa0 | 65 72 45 72 72 6f 72 45 78 61 6d 70 6c 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | erErrorExample(<span.class="tok- |
| 2dac0 | 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 5f 20 3d 20 64 65 66 | null">false</span>);....._.=.def |
| 2dae0 | 65 72 45 72 72 6f 72 45 78 61 6d 70 6c 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | erErrorExample(<span.class="tok- |
| 2db00 | 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | null">true</span>);.}</code></pr |
| 2db20 | 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 |
| 2db40 | 20 74 65 73 74 20 64 65 66 65 72 2e 7a 69 67 0a 54 65 73 74 20 31 2f 33 20 64 65 66 65 72 20 62 | .test.defer.zig.Test.1/3.defer.b |
| 2db60 | 61 73 69 63 73 2e 2e 2e 4f 4b 0a 54 65 73 74 20 32 2f 33 20 64 65 66 65 72 20 75 6e 77 69 6e 64 | asics...OK.Test.2/3.defer.unwind |
| 2db80 | 69 6e 67 2e 2e 2e 0a 32 20 31 20 4f 4b 0a 54 65 73 74 20 33 2f 33 20 65 72 72 64 65 66 65 72 20 | ing....2.1.OK.Test.3/3.errdefer. |
| 2dba0 | 75 6e 77 69 6e 64 69 6e 67 2e 2e 2e 0a 73 74 61 72 74 20 6f 66 20 66 75 6e 63 74 69 6f 6e 0a 65 | unwinding....start.of.function.e |
| 2dbc0 | 6e 64 20 6f 66 20 66 75 6e 63 74 69 6f 6e 0a 0a 73 74 61 72 74 20 6f 66 20 66 75 6e 63 74 69 6f | nd.of.function..start.of.functio |
| 2dbe0 | 6e 0a 65 6e 63 6f 75 6e 74 65 72 65 64 20 61 6e 20 65 72 72 6f 72 21 0a 65 6e 64 20 6f 66 20 66 | n.encountered.an.error!.end.of.f |
| 2dc00 | 75 6e 63 74 69 6f 6e 0a 4f 4b 0a 41 6c 6c 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 | unction.OK.All.tests.passed..</c |
| 2dc20 | 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:</ |
| 2dc40 | 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 72 72 6f 72 73 22 3e 45 72 72 | p><ul>.<li><a.href="#Errors">Err |
| 2dc60 | 6f 72 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 | ors</a></li>.</ul>.............. |
| 2dc80 | 20 3c 68 31 20 69 64 3d 22 75 6e 72 65 61 63 68 61 62 6c 65 22 3e 75 6e 72 65 61 63 68 61 62 6c | .<h1.id="unreachable">unreachabl |
| 2dca0 | 65 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 3c 63 6f 64 65 | e</h1>........<p>.......In.<code |
| 2dcc0 | 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 63 | .class="zig">Debug</code>.and.<c |
| 2dce0 | 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 64 | ode.class="zig">ReleaseSafe</cod |
| 2dd00 | 65 3e 20 6d 6f 64 65 2c 20 61 6e 64 20 77 68 65 6e 20 75 73 69 6e 67 20 3c 63 6f 64 65 3e 7a 69 | e>.mode,.and.when.using.<code>zi |
| 2dd20 | 67 20 74 65 73 74 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 | g.test</code>,.......<code.class |
| 2dd40 | 3d 22 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 |
| 2dd60 | 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 6d 69 74 73 20 61 20 63 61 | achable</span></code>.emits.a.ca |
| 2dd80 | 6c 6c 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 70 61 6e 69 63 3c 2f 63 | ll.to.<code.class="zig">panic</c |
| 2dda0 | 6f 64 65 3e 20 77 69 74 68 20 74 68 65 20 6d 65 73 73 61 67 65 20 3c 63 6f 64 65 3e 72 65 61 63 | ode>.with.the.message.<code>reac |
| 2ddc0 | 68 65 64 20 75 6e 72 65 61 63 68 61 62 6c 65 20 63 6f 64 65 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 | hed.unreachable.code</code>..... |
| 2dde0 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 3c 63 6f 64 65 | ...</p>.......<p>.......In.<code |
| 2de00 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 52 65 6c 65 61 73 65 46 61 73 74 3c 2f 63 6f 64 65 3e 20 | .class="zig">ReleaseFast</code>. |
| 2de20 | 6d 6f 64 65 2c 20 74 68 65 20 6f 70 74 69 6d 69 7a 65 72 20 75 73 65 73 20 74 68 65 20 61 73 73 | mode,.the.optimizer.uses.the.ass |
| 2de40 | 75 6d 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 | umption.that.<code.class="zig">< |
| 2de60 | 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< |
| 2de80 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 6f 64 65 0a 20 20 20 20 20 20 77 69 6c 6c 20 6e 65 | /span></code>.code.......will.ne |
| 2dea0 | 76 65 72 20 62 65 20 68 69 74 20 74 6f 20 70 65 72 66 6f 72 6d 20 6f 70 74 69 6d 69 7a 61 74 69 | ver.be.hit.to.perform.optimizati |
| 2dec0 | 6f 6e 73 2e 20 48 6f 77 65 76 65 72 2c 20 3c 63 6f 64 65 3e 7a 69 67 20 74 65 73 74 3c 2f 63 6f | ons..However,.<code>zig.test</co |
| 2dee0 | 64 65 3e 20 65 76 65 6e 20 69 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 52 65 | de>.even.in.<code.class="zig">Re |
| 2df00 | 6c 65 61 73 65 46 61 73 74 3c 2f 63 6f 64 65 3e 20 6d 6f 64 65 0a 20 20 20 20 20 20 20 20 20 20 | leaseFast</code>.mode........... |
| 2df20 | 20 20 20 20 20 20 20 20 73 74 69 6c 6c 20 65 6d 69 74 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | ........still.emits.<code.class= |
| 2df40 | 22 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 61 | "zig"><span.class="tok-kw">unrea |
| 2df60 | 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 73 20 63 61 6c 6c 73 20 74 6f | chable</span></code>.as.calls.to |
| 2df80 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 70 61 6e 69 63 3c 2f 63 6f 64 65 3e 2e | .<code.class="zig">panic</code>. |
| 2dfa0 | 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 42 61 73 69 63 73 | .......</p>.......<h2.id="Basics |
| 2dfc0 | 22 3e 42 61 73 69 63 73 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 | ">Basics</h2>........<p.class="f |
| 2dfe0 | 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 |
| 2e000 | 73 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 |
| 2e020 | 22 3e 2f 2f 20 75 6e 72 65 61 63 68 61 62 6c 65 20 69 73 20 75 73 65 64 20 74 6f 20 61 73 73 65 | ">//.unreachable.is.used.to.asse |
| 2e040 | 72 74 20 74 68 61 74 20 63 6f 6e 74 72 6f 6c 20 66 6c 6f 77 20 77 69 6c 6c 20 6e 65 76 65 72 20 | rt.that.control.flow.will.never. |
| 2e060 | 68 61 70 70 65 6e 20 75 70 6f 6e 20 61 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | happen.upon.a</span>.<span.class |
| 2e080 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 70 61 72 74 69 63 75 6c 61 72 20 6c 6f 63 | ="tok-comment">//.particular.loc |
| 2e0a0 | 61 74 69 6f 6e 3a 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ation:</span>.<span.class="tok-k |
| 2e0c0 | 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- |
| 2e0e0 | 73 74 72 22 3e 26 71 75 6f 74 3b 62 61 73 69 63 20 6d 61 74 68 26 71 75 6f 74 3b 3c 2f 73 70 61 | str">"basic.math"</spa |
| 2e100 | 6e 3e 20 7b 0a 20 20 20 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 |
| 2e120 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | nst</span>.x.=.<span.class="tok- |
| 2e140 | 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 |
| 2e160 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 79 20 3d 20 3c 73 70 61 | s="tok-kw">const</span>.y.=.<spa |
| 2e180 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 3b 0a 20 | n.class="tok-number">2</span>;.. |
| 2e1a0 | 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 |
| 2e1c0 | 3e 20 28 78 20 2b 20 79 20 21 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | >.(x.+.y.!=.<span.class="tok-num |
| 2e1e0 | 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | ber">3</span>).{.........<span.c |
| 2e200 | 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> |
| 2e220 | 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 65 | ;.....}.}</code></pre><pre><code |
| 2e240 | 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 |
| 2e260 | 69 67 0a 54 65 73 74 20 31 2f 31 20 62 61 73 69 63 20 6d 61 74 68 2e 2e 2e 4f 4b 0a 41 6c 6c 20 | ig.Test.1/1.basic.math...OK.All. |
| 2e280 | 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>..... |
| 2e2a0 | 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 61 73 73 65 72 | ...<p>In.fact,.this.is.how.asser |
| 2e2c0 | 74 20 69 73 20 69 6d 70 6c 65 6d 65 6e 74 65 64 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 | t.is.implemented:</p>.......<p.c |
| 2e2e0 | 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 |
| 2e300 | 64 65 20 63 6c 61 73 73 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- |
| 2e320 | 6b 77 22 3e 66 6e 3c 2f 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 |
| 2e340 | 6e 22 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 | n">assert</span>(ok:.<span.class |
| 2e360 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 | ="tok-type">bool</span>).<span.c |
| 2e380 | 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>.{... |
| 2e3a0 | 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> |
| 2e3c0 | 20 28 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 | .(!ok).<span.class="tok-kw">unre |
| 2e3e0 | 61 63 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 | achable</span>;.<span.class="tok |
| 2e400 | 2d 63 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 | -comment">//.assertion.failure</ |
| 2e420 | 73 70 61 6e 3e 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e | span>.}..<span.class="tok-commen |
| 2e440 | 74 22 3e 2f 2f 20 54 68 69 73 20 74 65 73 74 20 77 69 6c 6c 20 66 61 69 6c 20 62 65 63 61 75 73 | t">//.This.test.will.fail.becaus |
| 2e460 | 65 20 77 65 20 68 69 74 20 75 6e 72 65 61 63 68 61 62 6c 65 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 | e.we.hit.unreachable.</span>.<sp |
| 2e480 | 61 6e 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 |
| 2e4a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 68 69 73 20 77 | pan.class="tok-str">"this.w |
| 2e4c0 | 69 6c 6c 20 66 61 69 6c 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 | ill.fail"</span>.{.....asse |
| 2e4e0 | 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 65 3c | rt(<span.class="tok-null">false< |
| 2e500 | 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 |
| 2e520 | 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. |
| 2e540 | 7a 69 67 0a 54 65 73 74 20 31 2f 31 20 74 68 69 73 20 77 69 6c 6c 20 66 61 69 6c 2e 2e 2e 72 65 | zig.Test.1/1.this.will.fail...re |
| 2e560 | 61 63 68 65 64 20 75 6e 72 65 61 63 68 61 62 6c 65 20 63 6f 64 65 0a 3c 73 70 61 6e 20 63 6c 61 | ached.unreachable.code.<span.cla |
| 2e580 | 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f | ss="t37_1">/home/andy/dev/zig/do |
| 2e5a0 | 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 32 3a 31 34 3c 2f 73 70 61 6e 3e 3a 20 3c | cgen_tmp/test.zig:2:14</span>:.< |
| 2e5c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 30 35 31 63 39 20 69 6e 20 3f 3f | span.class="t2_0">0x2051c9.in.?? |
| 2e5e0 | 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 69 66 20 28 21 6f 6b 29 20 75 6e 72 | ?.(test)</span>.....if.(!ok).unr |
| 2e600 | 65 61 63 68 61 62 6c 65 3b 20 2f 2f 20 61 73 73 65 72 74 69 6f 6e 20 66 61 69 6c 75 72 65 0a 20 | eachable;.//.assertion.failure.. |
| 2e620 | 20 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"> |
| 2e640 | 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 |
| 2e660 | 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e | me/andy/dev/zig/docgen_tmp/test. |
| 2e680 | 7a 69 67 3a 37 3a 31 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 | zig:7:11</span>:.<span.class="t2 |
| 2e6a0 | 5f 30 22 3e 30 78 32 30 35 30 34 62 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e | _0">0x20504b.in.???.(test)</span |
| 2e6c0 | 3e 0a 20 20 20 20 61 73 73 65 72 74 28 66 61 6c 73 65 29 3b 0a 20 20 20 20 20 20 20 20 20 20 3c | >.....assert(false);...........< |
| 2e6e0 | 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 |
| 2e700 | 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 64 65 76 2f 7a | n.class="t37_1">/home/andy/dev/z |
| 2e720 | 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 74 65 73 | ig/build/lib/zig/std/special/tes |
| 2e740 | 74 5f 72 75 6e 6e 65 72 2e 7a 69 67 3a 31 33 3a 32 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e | t_runner.zig:13:25</span>:.<span |
| 2e760 | 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 39 37 61 20 69 6e 20 3f 3f 3f 20 28 74 | .class="t2_0">0x22297a.in.???.(t |
| 2e780 | 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 69 66 20 28 74 65 73 74 5f 66 6e 2e | est)</span>.........if.(test_fn. |
| 2e7a0 | 66 75 6e 63 28 29 29 20 7c 5f 7c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | func()).|_|.{................... |
| 2e7c0 | 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 |
| 2e7e0 | 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 |
| 2e800 | 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 | y/dev/zig/build/lib/zig/std/spec |
| 2e820 | 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 39 36 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 | ial/bootstrap.zig:96:22</span>:. |
| 2e840 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 37 32 62 20 69 6e 20 3f | <span.class="t2_0">0x22272b.in.? |
| 2e860 | 3f 3f 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 | ??.(test)</span>.............roo |
| 2e880 | 74 2e 6d 61 69 6e 28 29 20 63 61 74 63 68 20 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 20 | t.main().catch.|err|.{.......... |
| 2e8a0 | 20 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"> |
| 2e8c0 | 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 |
| 2e8e0 | 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 | me/andy/dev/zig/build/lib/zig/st |
| 2e900 | 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 37 30 3a 32 30 3c 2f 73 | d/special/bootstrap.zig:70:20</s |
| 2e920 | 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 36 61 | pan>:.<span.class="t2_0">0x2226a |
| 2e940 | 35 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 | 5.in.???.(test)</span>.....retur |
| 2e960 | 6e 20 63 61 6c 6c 4d 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 | n.callMain();................... |
| 2e980 | 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 |
| 2e9a0 | 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 64 65 76 | pan.class="t37_1">/home/andy/dev |
| 2e9c0 | 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 | /zig/build/lib/zig/std/special/b |
| 2e9e0 | 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 36 34 3a 33 39 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e | ootstrap.zig:64:39</span>:.<span |
| 2ea00 | 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 35 30 38 20 69 6e 20 3f 3f 3f 20 28 74 | .class="t2_0">0x222508.in.???.(t |
| 2ea20 | 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 74 64 2e 6f 73 2e 70 6f 73 69 78 2e 65 78 69 | est)</span>.....std.os.posix.exi |
| 2ea40 | 74 28 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 28 61 72 67 63 2c 20 61 72 67 76 2c 20 65 | t(callMainWithArgs(argc,.argv,.e |
| 2ea60 | 6e 76 70 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 | nvp));.......................... |
| 2ea80 | 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" |
| 2eaa0 | 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 |
| 2eac0 | 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 | ome/andy/dev/zig/build/lib/zig/s |
| 2eae0 | 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 33 37 3a 35 3c 2f 73 | td/special/bootstrap.zig:37:5</s |
| 2eb00 | 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 33 63 | pan>:.<span.class="t2_0">0x2223c |
| 2eb20 | 30 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 6e 6f 49 6e | 0.in.???.(test)</span>.....@noIn |
| 2eb40 | 6c 69 6e 65 43 61 6c 6c 28 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 29 3b 0a | lineCall(posixCallMainAndExit);. |
| 2eb60 | 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> |
| 2eb80 | 0a 0a 54 65 73 74 73 20 66 61 69 6c 65 64 2e 20 55 73 65 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e | ..Tests.failed..Use.the.followin |
| 2eba0 | 67 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 72 65 70 72 6f 64 75 63 65 20 74 68 65 20 66 61 69 6c 75 | g.command.to.reproduce.the.failu |
| 2ebc0 | 72 65 3a 0a 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d | re:./home/andy/dev/zig/docgen_tm |
| 2ebe0 | 70 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 20 20 0a 20 20 20 | p/test.</code></pre>............ |
| 2ec00 | 20 20 20 3c 68 32 20 69 64 3d 22 41 74 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 22 3e 41 74 20 43 | ...<h2.id="At-Compile-Time">At.C |
| 2ec20 | 6f 6d 70 69 6c 65 2d 54 69 6d 65 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 | ompile-Time</h2>........<p.class |
| 2ec40 | 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 |
| 2ec60 | 6c 61 73 73 3d 22 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"> |
| 2ec80 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | const</span>.assert.=.<span.clas |
| 2eca0 | 73 3d 22 74 6f 6b 2d 62 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>(< |
| 2ecc0 | 73 70 61 6e 20 63 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 |
| 2ece0 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 0a 3c 73 70 61 | uot;</span>).debug.assert;..<spa |
| 2ed00 | 6e 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 |
| 2ed20 | 61 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 6f 66 | an.class="tok-str">"type.of |
| 2ed40 | 20 75 6e 72 65 61 63 68 61 62 6c 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | .unreachable"</span>.{..... |
| 2ed60 | 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 |
| 2ed80 | 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- |
| 2eda0 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 74 79 70 65 20 6f 66 20 75 6e 72 65 61 63 68 61 | comment">//.The.type.of.unreacha |
| 2edc0 | 62 6c 65 20 69 73 20 6e 6f 72 65 74 75 72 6e 2e 3c 2f 73 70 61 6e 3e 0a 0a 20 20 20 20 20 20 20 | ble.is.noreturn.</span>......... |
| 2ede0 | 20 3c 73 70 61 6e 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 | .<span.class="tok-comment">//.Ho |
| 2ee00 | 77 65 76 65 72 20 74 68 69 73 20 61 73 73 65 72 74 69 6f 6e 20 77 69 6c 6c 20 73 74 69 6c 6c 20 | wever.this.assertion.will.still. |
| 2ee20 | 66 61 69 6c 20 62 65 63 61 75 73 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 | fail.because</span>.........<spa |
| 2ee40 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 65 76 61 6c 75 61 74 | n.class="tok-comment">//.evaluat |
| 2ee60 | 69 6e 67 20 75 6e 72 65 61 63 68 61 62 6c 65 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 | ing.unreachable.at.compile-time. |
| 2ee80 | 69 73 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 2e 3c 2f 73 70 61 6e 3e 0a 0a 20 20 20 20 | is.a.compile.error.</span>...... |
| 2eea0 | 20 20 20 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | ....assert(<span.class="tok-buil |
| 2eec0 | 74 69 6e 22 3e 40 74 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | tin">@typeOf</span>(<span.class= |
| 2eee0 | 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 29 20 3d 3d 20 | "tok-kw">unreachable</span>).==. |
| 2ef00 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 6e 6f 72 65 74 75 72 6e 3c | <span.class="tok-type">noreturn< |
| 2ef20 | 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 |
| 2ef40 | 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 |
| 2ef60 | 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 2f 68 6f | .test.zig.<span.class="t0_1">/ho |
| 2ef80 | 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e | me/andy/dev/zig/docgen_tmp/test. |
| 2efa0 | 7a 69 67 3a 31 30 3a 31 36 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | zig:10:16:.</span><span.class="t |
| 2efc0 | 33 31 5f 31 22 3e 65 72 72 6f 72 3a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | 31_1">error:</span><span.class=" |
| 2efe0 | 74 30 5f 31 22 3e 20 75 6e 72 65 61 63 68 61 62 6c 65 20 63 6f 64 65 3c 2f 73 70 61 6e 3e 0a 20 | t0_1">.unreachable.code</span>.. |
| 2f000 | 20 20 20 20 20 20 20 61 73 73 65 72 74 28 40 74 79 70 65 4f 66 28 75 6e 72 65 61 63 68 61 62 6c | .......assert(@typeOf(unreachabl |
| 2f020 | 65 29 20 3d 3d 20 6e 6f 72 65 74 75 72 6e 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | e).==.noreturn);................ |
| 2f040 | 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 |
| 2f060 | 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:</ |
| 2f080 | 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 5a 69 67 2d 54 65 73 74 22 3e 5a | p><ul>.<li><a.href="#Zig-Test">Z |
| 2f0a0 | 69 67 20 54 65 73 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 42 | ig.Test</a></li>.<li><a.href="#B |
| 2f0c0 | 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 3c | uild-Mode">Build.Mode</a></li>.< |
| 2f0e0 | 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< |
| 2f100 | 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 | /a></li>.</ul>.................. |
| 2f120 | 20 20 20 20 3c 68 31 20 69 64 3d 22 6e 6f 72 65 74 75 72 6e 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f | ....<h1.id="noreturn">noreturn</ |
| 2f140 | 68 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 | h1>........<p>.......<code.class |
| 2f160 | 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 6e 6f | ="zig"><span.class="tok-type">no |
| 2f180 | 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 73 20 74 68 65 20 74 79 70 65 | return</span></code>.is.the.type |
| 2f1a0 | 20 6f 66 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 | .of:.......</p>.......<ul>...... |
| 2f1c0 | 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 6e | .....<li><code.class="zig"><span |
| 2f1e0 | 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 6f | .class="tok-kw">break</span></co |
| 2f200 | 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 |
| 2f220 | 73 73 3d 22 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 |
| 2f240 | 6e 74 69 6e 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | ntinue</span></code></li>....... |
| 2f260 | 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. |
| 2f280 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | class="tok-kw">return</span></co |
| 2f2a0 | 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 |
| 2f2c0 | 73 73 3d 22 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 | ss="zig"><span.class="tok-kw">un |
| 2f2e0 | 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 | reachable</span></code></li>.... |
| 2f300 | 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 |
| 2f320 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 | an.class="tok-kw">while</span>.( |
| 2f340 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 | <span.class="tok-null">true</spa |
| 2f360 | 6e 3e 29 20 7b 7d 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 | n>).{}</code></li>.......</ul>.. |
| 2f380 | 20 20 20 20 20 3c 70 3e 57 68 65 6e 20 72 65 73 6f 6c 76 69 6e 67 20 74 79 70 65 73 20 74 6f 67 | .....<p>When.resolving.types.tog |
| 2f3a0 | 65 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 | ether,.such.as.<code.class="zig" |
| 2f3c0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 3c | ><span.class="tok-kw">if</span>< |
| 2f3e0 | 2f 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 | /code>.clauses.or.<code.class="z |
| 2f400 | 69 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< |
| 2f420 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 70 72 6f 6e 67 73 2c 0a 20 20 20 20 20 20 20 20 20 20 | /span></code>.prongs,........... |
| 2f440 | 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 70 61 6e 20 | ....the.<code.class="zig"><span. |
| 2f460 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e | class="tok-type">noreturn</span> |
| 2f480 | 3c 2f 63 6f 64 65 3e 20 74 79 70 65 20 69 73 20 63 6f 6d 70 61 74 69 62 6c 65 20 77 69 74 68 20 | </code>.type.is.compatible.with. |
| 2f4a0 | 65 76 65 72 79 20 6f 74 68 65 72 20 74 79 70 65 2e 20 43 6f 6e 73 69 64 65 72 3a 0a 20 20 20 20 | every.other.type..Consider:..... |
| 2f4c0 | 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 |
| 2f4e0 | 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"> |
| 2f500 | 3c 73 70 61 6e 20 63 6c 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>.< |
| 2f520 | 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 63 | span.class="tok-fn">foo</span>(c |
| 2f540 | 6f 6e 64 69 74 69 6f 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | ondition:.<span.class="tok-type" |
| 2f560 | 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >bool</span>,.b:.<span.class="to |
| 2f580 | 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | k-type">u32</span>).<span.class= |
| 2f5a0 | 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 |
| 2f5c0 | 61 6e 20 63 6c 61 73 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 |
| 2f5e0 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e | .=.<span.class="tok-kw">if</span |
| 2f600 | 3e 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 | >.(condition).b.<span.class="tok |
| 2f620 | 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | -kw">else</span>.<span.class="to |
| 2f640 | 6b 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 | k-kw">return</span>;.....<span.c |
| 2f660 | 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> |
| 2f680 | 28 3c 73 70 61 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 | (<span.class="tok-str">"do. |
| 2f6a0 | 73 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 | something.with.a"</span>);. |
| 2f6c0 | 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 | }.<span.class="tok-kw">test</spa |
| 2f6e0 | 6e 3e 20 3c 73 70 61 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 |
| 2f700 | 6f 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 | oreturn"</span>.{.....foo(< |
| 2f720 | 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 |
| 2f740 | 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f | n>,.<span.class="tok-number">1</ |
| 2f760 | 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 |
| 2f780 | 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 |
| 2f7a0 | 69 67 0a 54 65 73 74 20 31 2f 31 20 6e 6f 72 65 74 75 72 6e 2e 2e 2e 4f 4b 0a 41 6c 6c 20 74 65 | ig.Test.1/1.noreturn...OK.All.te |
| 2f7c0 | 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>....... |
| 2f7e0 | 20 3c 70 3e 41 6e 6f 74 68 65 72 20 75 73 65 20 63 61 73 65 20 66 6f 72 20 3c 63 6f 64 65 20 63 | .<p>Another.use.case.for.<code.c |
| 2f800 | 6c 61 73 73 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 |
| 2f820 | 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 69 73 20 74 68 65 20 | ">noreturn</span></code>.is.the. |
| 2f840 | 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 65 78 69 74 3c 2f 63 6f 64 65 3e 20 66 75 | <code.class="zig">exit</code>.fu |
| 2f860 | 6e 63 74 69 6f 6e 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 | nction:</p>.......<p.class="file |
| 2f880 | 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=" |
| 2f8a0 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 | zig"><span.class="tok-kw">pub</s |
| 2f8c0 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e | pan>.<span.class="tok-kw">extern |
| 2f8e0 | 3c 2f 73 70 61 6e 3e 20 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 |
| 2f900 | 75 6f 74 3b 6b 65 72 6e 65 6c 33 32 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | uot;kernel32"</span>.<span. |
| 2f920 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 64 63 61 6c 6c 63 63 3c 2f 73 70 61 6e 3e 20 | class="tok-kw">stdcallcc</span>. |
| 2f940 | 3c 73 70 61 6e 20 63 6c 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>.< |
| 2f960 | 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 73 3c | span.class="tok-fn">ExitProcess< |
| 2f980 | 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 22 74 | /span>(exit_code:.<span.class="t |
| 2f9a0 | 6f 6b 2d 74 79 70 65 22 3e 63 5f 75 69 6e 74 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c | ok-type">c_uint</span>).<span.cl |
| 2f9c0 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3b 0a | ass="tok-type">noreturn</span>;. |
| 2f9e0 | 0a 3c 73 70 61 6e 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 |
| 2fa00 | 3e 20 3c 73 70 61 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 |
| 2fa20 | 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 |
| 2fa40 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 76 61 6c 75 65 20 3d 20 62 | ="tok-kw">const</span>.value.=.b |
| 2fa60 | 61 72 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c | ar().<span.class="tok-kw">catch< |
| 2fa80 | 2f 73 70 61 6e 3e 20 45 78 69 74 50 72 6f 63 65 73 73 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | /span>.ExitProcess(<span.class=" |
| 2faa0 | 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 61 73 73 65 72 | tok-number">1</span>);.....asser |
| 2fac0 | 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 |
| 2fae0 | 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | er">1234</span>);.}..<span.class |
| 2fb00 | 3d 22 74 6f 6b 2d 6b 77 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= |
| 2fb20 | 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 73 | "tok-fn">bar</span>().<span.clas |
| 2fb40 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 3c 73 70 61 6e 20 63 6c | s="tok-kw">error</span>!<span.cl |
| 2fb60 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | ass="tok-type">u32</span>.{..... |
| 2fb80 | 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 |
| 2fba0 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 | n>.<span.class="tok-number">1234 |
| 2fbc0 | 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 22 | </span>;.}..<span.class="tok-kw" |
| 2fbe0 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | >const</span>.assert.=.<span.cla |
| 2fc00 | 73 73 3d 22 74 6f 6b 2d 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>( |
| 2fc20 | 3c 73 70 61 6e 20 63 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& |
| 2fc40 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 3c 2f 63 6f 64 | quot;</span>).debug.assert;</cod |
| 2fc60 | 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" |
| 2fc80 | 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 43 72 65 61 74 65 64 20 2f 68 6f | >$.zig.test.test.zig.Created./ho |
| 2fca0 | 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 20 | me/andy/dev/zig/docgen_tmp/test. |
| 2fcc0 | 62 75 74 20 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 | but.skipping.execution.because.i |
| 2fce0 | 74 20 69 73 20 6e 6f 6e 2d 6e 61 74 69 76 65 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a | t.is.non-native..</code></pre>.. |
| 2fd00 | 20 20 20 20 20 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 | .............<h1.id="Functions"> |
| 2fd20 | 46 75 6e 63 74 69 6f 6e 73 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 | Functions</h1>........<p.class=" |
| 2fd40 | 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 |
| 2fd60 | 65 20 63 6c 61 73 73 3d 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 |
| 2fd80 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 3c 73 70 61 6e 20 63 | w">const</span>.assert.=.<span.c |
| 2fda0 | 6c 61 73 73 3d 22 74 6f 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 |
| 2fdc0 | 3e 28 3c 73 70 61 6e 20 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 |
| 2fde0 | 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 0a 3c | d"</span>).debug.assert;..< |
| 2fe00 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 46 75 6e 63 | span.class="tok-comment">//.Func |
| 2fe20 | 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 73 70 | tions.are.declared.like.this</sp |
| 2fe40 | 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 |
| 2fe60 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 64 64 3c 2f 73 70 61 | n>.<span.class="tok-fn">add</spa |
| 2fe80 | 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< |
| 2fea0 | 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 |
| 2fec0 | 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 |
| 2fee0 | 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | pe">i8</span>.{.....<span.class= |
| 2ff00 | 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 |
| 2ff20 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 | lass="tok-number">0</span>).{... |
| 2ff40 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e | ......<span.class="tok-comment"> |
| 2ff60 | 2f 2f 20 59 6f 75 20 63 61 6e 20 73 74 69 6c 6c 20 72 65 74 75 72 6e 20 6d 61 6e 75 61 6c 6c 79 | //.You.can.still.return.manually |
| 2ff80 | 20 69 66 20 6e 65 65 64 65 64 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e | .if.needed.</span>.........<span |
| 2ffa0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 62 3b | .class="tok-kw">return</span>.b; |
| 2ffc0 | 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | .....}......<span.class="tok-kw" |
| 2ffe0 | 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 61 20 2b 20 62 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 | >return</span>.a.+.b;.}..<span.c |
| 30000 | 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 70 6f 72 74 | lass="tok-comment">//.The.export |
| 30020 | 20 73 70 65 63 69 66 69 65 72 20 6d 61 6b 65 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 65 78 74 65 | .specifier.makes.a.function.exte |
| 30040 | 72 6e 61 6c 6c 79 20 76 69 73 69 62 6c 65 20 69 6e 20 74 68 65 20 67 65 6e 65 72 61 74 65 64 3c | rnally.visible.in.the.generated< |
| 30060 | 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" |
| 30080 | 3e 2f 2f 20 6f 62 6a 65 63 74 20 66 69 6c 65 2c 20 61 6e 64 20 6d 61 6b 65 73 20 69 74 20 75 73 | >//.object.file,.and.makes.it.us |
| 300a0 | 65 20 74 68 65 20 43 20 41 42 49 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e.the.C.ABI.</span>.<span.class= |
| 300c0 | 22 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 | "tok-kw">export</span>.<span.cla |
| 300e0 | 73 73 3d 22 74 6f 6b 2d 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 |
| 30100 | 73 3d 22 74 6f 6b 2d 66 6e 22 3e 73 75 62 3c 2f 73 70 61 6e 3e 28 61 3a 20 3c 73 70 61 6e 20 63 | s="tok-fn">sub</span>(a:.<span.c |
| 30120 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 3c 73 | lass="tok-type">i8</span>,.b:.<s |
| 30140 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 29 20 | pan.class="tok-type">i8</span>). |
| 30160 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e | <span.class="tok-type">i8</span> |
| 30180 | 20 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f | .{.<span.class="tok-kw">return</ |
| 301a0 | 73 70 61 6e 3e 20 61 20 2d 20 62 3b 20 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | span>.a.-.b;.}..<span.class="tok |
| 301c0 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 65 78 74 65 72 6e 20 73 70 65 63 69 66 69 65 | -comment">//.The.extern.specifie |
| 301e0 | 72 20 69 73 20 75 73 65 64 20 74 6f 20 64 65 63 6c 61 72 65 20 61 20 66 75 6e 63 74 69 6f 6e 20 | r.is.used.to.declare.a.function. |
| 30200 | 74 68 61 74 20 77 69 6c 6c 20 62 65 20 72 65 73 6f 6c 76 65 64 3c 2f 73 70 61 6e 3e 0a 3c 73 70 | that.will.be.resolved</span>.<sp |
| 30220 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 61 74 20 6c 69 6e | an.class="tok-comment">//.at.lin |
| 30240 | 6b 20 74 69 6d 65 2c 20 77 68 65 6e 20 6c 69 6e 6b 69 6e 67 20 73 74 61 74 69 63 61 6c 6c 79 2c | k.time,.when.linking.statically, |
| 30260 | 20 6f 72 20 61 74 20 72 75 6e 74 69 6d 65 2c 20 77 68 65 6e 20 6c 69 6e 6b 69 6e 67 3c 2f 73 70 | .or.at.runtime,.when.linking</sp |
| 30280 | 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">// |
| 302a0 | 20 64 79 6e 61 6d 69 63 61 6c 6c 79 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | .dynamically.</span>.<span.class |
| 302c0 | 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 73 74 64 63 61 6c 6c 63 63 20 | ="tok-comment">//.The.stdcallcc. |
| 302e0 | 73 70 65 63 69 66 69 65 72 20 63 68 61 6e 67 65 73 20 74 68 65 20 63 61 6c 6c 69 6e 67 20 63 6f | specifier.changes.the.calling.co |
| 30300 | 6e 76 65 6e 74 69 6f 6e 20 6f 66 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 2e 3c 2f 73 70 61 6e 3e | nvention.of.the.function.</span> |
| 30320 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e 3c 2f 73 70 | .<span.class="tok-kw">extern</sp |
| 30340 | 61 6e 3e 20 3c 73 70 61 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">" |
| 30360 | 6b 65 72 6e 65 6c 33 32 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 | kernel32"</span>.<span.clas |
| 30380 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 64 63 61 6c 6c 63 63 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 | s="tok-kw">stdcallcc</span>.<spa |
| 303a0 | 6e 20 63 6c 61 73 73 3d 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 |
| 303c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 45 78 69 74 50 72 6f 63 65 73 73 3c 2f 73 70 61 | .class="tok-fn">ExitProcess</spa |
| 303e0 | 6e 3e 28 65 78 69 74 5f 63 6f 64 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | n>(exit_code:.<span.class="tok-t |
| 30400 | 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ype">u32</span>).<span.class="to |
| 30420 | 6b 2d 74 79 70 65 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 | k-type">noreturn</span>;.<span.c |
| 30440 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 | lass="tok-kw">extern</span>.<spa |
| 30460 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 26 71 75 6f 74 3b 3c | n.class="tok-str">"c"< |
| 30480 | 2f 73 70 61 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</ |
| 304a0 | 73 70 61 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 74 61 6e 32 | span>.<span.class="tok-fn">atan2 |
| 304c0 | 3c 2f 73 70 61 6e 3e 28 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | </span>(a:.<span.class="tok-type |
| 304e0 | 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ">f64</span>,.b:.<span.class="to |
| 30500 | 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | k-type">f64</span>).<span.class= |
| 30520 | 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c | "tok-type">f64</span>;..<span.cl |
| 30540 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 40 73 65 74 43 6f 6c | ass="tok-comment">//.The.@setCol |
| 30560 | 64 20 62 75 69 6c 74 69 6e 20 74 65 6c 6c 73 20 74 68 65 20 6f 70 74 69 6d 69 7a 65 72 20 74 68 | d.builtin.tells.the.optimizer.th |
| 30580 | 61 74 20 61 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 72 61 72 65 6c 79 20 63 61 6c 6c 65 64 2e 3c | at.a.function.is.rarely.called.< |
| 305a0 | 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f | /span>.<span.class="tok-kw">fn</ |
| 305c0 | 73 70 61 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 62 6f 72 74 | span>.<span.class="tok-fn">abort |
| 305e0 | 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" |
| 30600 | 3e 6e 6f 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | >noreturn</span>.{.....<span.cla |
| 30620 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 65 74 43 6f 6c 64 3c 2f 73 70 61 6e 3e | ss="tok-builtin">@setCold</span> |
| 30640 | 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 |
| 30660 | 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 77 | an>);.....<span.class="tok-kw">w |
| 30680 | 68 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | hile</span>.(<span.class="tok-nu |
| 306a0 | 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 20 7b 7d 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 | ll">true</span>).{}.}..<span.cla |
| 306c0 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6e 61 6b 65 64 63 63 20 6d 61 6b 65 | ss="tok-comment">//.nakedcc.make |
| 306e0 | 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 6e 6f 74 20 68 61 76 65 20 61 6e 79 20 66 75 6e 63 74 69 | s.a.function.not.have.any.functi |
| 30700 | 6f 6e 20 70 72 6f 6c 6f 67 75 65 20 6f 72 20 65 70 69 6c 6f 67 75 65 2e 3c 2f 73 70 61 6e 3e 0a | on.prologue.or.epilogue.</span>. |
| 30720 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 69 | <span.class="tok-comment">//.Thi |
| 30740 | 73 20 63 61 6e 20 62 65 20 75 73 65 66 75 6c 20 77 68 65 6e 20 69 6e 74 65 67 72 61 74 69 6e 67 | s.can.be.useful.when.integrating |
| 30760 | 20 77 69 74 68 20 61 73 73 65 6d 62 6c 79 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 | .with.assembly.</span>.<span.cla |
| 30780 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6e 61 6b 65 64 63 63 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e | ss="tok-kw">nakedcc</span>.<span |
| 307a0 | 20 63 6c 61 73 73 3d 22 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. |
| 307c0 | 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 6e 3e 28 29 20 3c | class="tok-fn">_start</span>().< |
| 307e0 | 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</ |
| 30800 | 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 62 6f 72 74 28 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c | span>.{.....abort();.}..<span.cl |
| 30820 | 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 54 68 65 20 70 75 62 20 73 70 65 | ass="tok-comment">//.The.pub.spe |
| 30840 | 63 69 66 69 65 72 20 61 6c 6c 6f 77 73 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 74 6f 20 62 65 | cifier.allows.the.function.to.be |
| 30860 | 20 76 69 73 69 62 6c 65 20 77 68 65 6e 20 69 6d 70 6f 72 74 69 6e 67 2e 3c 2f 73 70 61 6e 3e 0a | .visible.when.importing.</span>. |
| 30880 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 41 6e 6f | <span.class="tok-comment">//.Ano |
| 308a0 | 74 68 65 72 20 66 69 6c 65 20 63 61 6e 20 75 73 65 20 40 69 6d 70 6f 72 74 20 61 6e 64 20 63 61 | ther.file.can.use.@import.and.ca |
| 308c0 | 6c 6c 20 73 75 62 32 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ll.sub2</span>.<span.class="tok- |
| 308e0 | 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- |
| 30900 | 6b 77 22 3e 66 6e 3c 2f 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 |
| 30920 | 6e 22 3e 73 75 62 32 3c 2f 73 70 61 6e 3e 28 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | n">sub2</span>(a:.<span.class="t |
| 30940 | 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 | ok-type">i8</span>,.b:.<span.cla |
| 30960 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 | ss="tok-type">i8</span>).<span.c |
| 30980 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 20 7b 20 3c 73 70 61 | lass="tok-type">i8</span>.{.<spa |
| 309a0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 61 | n.class="tok-kw">return</span>.a |
| 309c0 | 20 2d 20 62 3b 20 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e | .-.b;.}..<span.class="tok-commen |
| 309e0 | 74 22 3e 2f 2f 20 46 75 6e 63 74 69 6f 6e 73 20 63 61 6e 20 62 65 20 75 73 65 64 20 61 73 20 76 | t">//.Functions.can.be.used.as.v |
| 30a00 | 61 6c 75 65 73 20 61 6e 64 20 61 72 65 20 65 71 75 69 76 61 6c 65 6e 74 20 74 6f 20 70 6f 69 6e | alues.and.are.equivalent.to.poin |
| 30a20 | 74 65 72 73 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | ters.</span>.<span.class="tok-kw |
| 30a40 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 61 6c 6c 32 5f 6f 70 20 3d 20 3c 73 70 61 6e 20 | ">const</span>.call2_op.=.<span. |
| 30a60 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 28 61 3a 20 3c 73 70 | class="tok-kw">fn</span>.(a:.<sp |
| 30a80 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 2c 20 62 | an.class="tok-type">i8</span>,.b |
| 30aa0 | 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 | :.<span.class="tok-type">i8</spa |
| 30ac0 | 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 | n>).<span.class="tok-type">i8</s |
| 30ae0 | 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 | pan>;.<span.class="tok-kw">fn</s |
| 30b00 | 70 61 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 5f 6f 70 3c | pan>.<span.class="tok-fn">do_op< |
| 30b20 | 2f 73 70 61 6e 3e 28 66 6e 5f 63 61 6c 6c 3a 20 63 61 6c 6c 32 5f 6f 70 2c 20 6f 70 31 3a 20 3c | /span>(fn_call:.call2_op,.op1:.< |
| 30b40 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 2c | span.class="tok-type">i8</span>, |
| 30b60 | 20 6f 70 32 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 38 3c | .op2:.<span.class="tok-type">i8< |
| 30b80 | 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 |
| 30ba0 | 38 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | 8</span>.{.....<span.class="tok- |
| 30bc0 | 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 66 6e 5f 63 61 6c 6c 28 6f 70 31 2c 20 6f | kw">return</span>.fn_call(op1,.o |
| 30be0 | 70 32 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 | p2);.}..<span.class="tok-kw">tes |
| 30c00 | 74 3c 2f 73 70 61 6e 3e 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">& |
| 30c20 | 71 75 6f 74 3b 66 75 6e 63 74 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | quot;function"</span>.{.... |
| 30c40 | 20 61 73 73 65 72 74 28 64 6f 5f 6f 70 28 61 64 64 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .assert(do_op(add,.<span.class=" |
| 30c60 | 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 73 | tok-number">5</span>,.<span.clas |
| 30c80 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 | s="tok-number">6</span>).==.<spa |
| 30ca0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 31 3c 2f 73 70 61 6e 3e 29 3b | n.class="tok-number">11</span>); |
| 30cc0 | 0a 20 20 20 20 61 73 73 65 72 74 28 64 6f 5f 6f 70 28 73 75 62 32 2c 20 3c 73 70 61 6e 20 63 6c | .....assert(do_op(sub2,.<span.cl |
| 30ce0 | 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 |
| 30d00 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 36 3c 2f 73 70 61 6e 3e 29 20 3d 3d | .class="tok-number">6</span>).== |
| 30d20 | 20 2d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 | .-<span.class="tok-number">1</sp |
| 30d40 | 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 |
| 30d60 | 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 66 75 6e 63 74 69 6f 6e | lass="shell">$.zig.test.function |
| 30d80 | 73 2e 7a 69 67 0a 54 65 73 74 20 31 2f 31 20 66 75 6e 63 74 69 6f 6e 2e 2e 2e 4f 4b 0a 41 6c 6c | s.zig.Test.1/1.function...OK.All |
| 30da0 | 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>.... |
| 30dc0 | 20 20 20 20 3c 70 3e 46 75 6e 63 74 69 6f 6e 20 76 61 6c 75 65 73 20 61 72 65 20 6c 69 6b 65 20 | ....<p>Function.values.are.like. |
| 30de0 | 70 6f 69 6e 74 65 72 73 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 | pointers:</p>.......<p.class="fi |
| 30e00 | 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 |
| 30e20 | 3d 22 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 |
| 30e40 | 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | t</span>.assert.=.<span.class="t |
| 30e60 | 6f 6b 2d 62 75 69 6c 74 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 |
| 30e80 | 20 63 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" |
| 30ea0 | 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c | </span>).debug.assert;..<span.cl |
| 30ec0 | 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>.{.. |
| 30ee0 | 20 20 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | ...assert(<span.class="tok-built |
| 30f00 | 69 6e 22 3e 40 74 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 |
| 30f20 | 20 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 |
| 30f40 | 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>);. |
| 30f60 | 20 20 20 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | ....assert(<span.class="tok-buil |
| 30f80 | 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= |
| 30fa0 | 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= |
| 30fc0 | 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 |
| 30fe0 | 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 |
| 31000 | 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 |
| 31020 | 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 |
| 31040 | 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 |
| 31060 | 77 22 3e 66 6e 3c 2f 73 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 |
| 31080 | 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- |
| 310a0 | 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 |
| 310c0 | 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 |
| 310e0 | 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> |
| 31100 | 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 |
| 31120 | 72 61 6d 65 74 65 72 73 22 3e 50 61 73 73 2d 62 79 2d 76 61 6c 75 65 20 50 61 72 61 6d 65 74 65 | rameters">Pass-by-value.Paramete |
| 31140 | 72 73 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 20 5a 69 67 2c | rs</h2>........<p>.......In.Zig, |
| 31160 | 20 73 74 72 75 63 74 73 2c 20 75 6e 69 6f 6e 73 2c 20 61 6e 64 20 65 6e 75 6d 73 20 77 69 74 68 | .structs,.unions,.and.enums.with |
| 31180 | 20 70 61 79 6c 6f 61 64 73 20 63 61 6e 20 62 65 20 70 61 73 73 65 64 20 64 69 72 65 63 74 6c 79 | .payloads.can.be.passed.directly |
| 311a0 | 20 74 6f 20 61 20 66 75 6e 63 74 69 6f 6e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | .to.a.function:.......</p>...... |
| 311c0 | 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 |
| 311e0 | 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= |
| 31200 | 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 |
| 31220 | 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> |
| 31240 | 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" |
| 31260 | 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= |
| 31280 | 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 |
| 312a0 | 20 63 6c 61 73 73 3d 22 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. |
| 312c0 | 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: |
| 312e0 | 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 |
| 31300 | 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 |
| 31320 | 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 |
| 31340 | 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 |
| 31360 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | nst</span>.assert.=.<span.class= |
| 31380 | 22 74 6f 6b 2d 62 75 69 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 |
| 313a0 | 61 6e 20 63 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 |
| 313c0 | 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 0a 3c 73 70 61 6e 20 | t;</span>).debug.assert;..<span. |
| 313e0 | 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 |
| 31400 | 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 61 67 67 72 | .class="tok-str">"pass.aggr |
| 31420 | 65 67 61 74 65 20 74 79 70 65 20 62 79 20 6e 6f 6e 2d 63 6f 70 79 20 76 61 6c 75 65 20 74 6f 20 | egate.type.by.non-copy.value.to. |
| 31440 | 66 75 6e 63 74 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 | function"</span>.{.....asse |
| 31460 | 72 74 28 66 6f 6f 28 50 6f 69 6e 74 7b 20 2e 78 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | rt(foo(Point{..x.=.<span.class=" |
| 31480 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 2e 79 20 3d 20 3c 73 70 61 6e | tok-number">1</span>,..y.=.<span |
| 314a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 20 7d 29 20 | .class="tok-number">2</span>.}). |
| 314c0 | 3d 3d 20 3c 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 |
| 314e0 | 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. |
| 31500 | 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 |
| 31520 | 67 0a 54 65 73 74 20 31 2f 31 20 70 61 73 73 20 61 67 67 72 65 67 61 74 65 20 74 79 70 65 20 62 | g.Test.1/1.pass.aggregate.type.b |
| 31540 | 79 20 6e 6f 6e 2d 63 6f 70 79 20 76 61 6c 75 65 20 74 6f 20 66 75 6e 63 74 69 6f 6e 2e 2e 2e 4f | y.non-copy.value.to.function...O |
| 31560 | 4b 0a 41 6c 6c 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 | K.All.tests.passed..</code></pre |
| 31580 | 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 73 65 2c | >........<p>.......In.this.case, |
| 315a0 | 20 74 68 65 20 76 61 6c 75 65 20 6d 61 79 20 62 65 20 70 61 73 73 65 64 20 62 79 20 72 65 66 65 | .the.value.may.be.passed.by.refe |
| 315c0 | 72 65 6e 63 65 2c 20 6f 72 20 62 79 20 76 61 6c 75 65 2c 20 77 68 69 63 68 65 76 65 72 20 77 61 | rence,.or.by.value,.whichever.wa |
| 315e0 | 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 74 | y.......Zig.decides.will.be.fast |
| 31600 | 65 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 | er........</p>.......<p>.......F |
| 31620 | 6f 72 20 65 78 74 65 72 6e 20 66 75 6e 63 74 69 6f 6e 73 2c 20 5a 69 67 20 66 6f 6c 6c 6f 77 73 | or.extern.functions,.Zig.follows |
| 31640 | 20 74 68 65 20 43 20 41 42 49 20 66 6f 72 20 70 61 73 73 69 6e 67 20 73 74 72 75 63 74 73 20 61 | .the.C.ABI.for.passing.structs.a |
| 31660 | 6e 64 20 75 6e 69 6f 6e 73 20 62 79 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | nd.unions.by.value........</p>.. |
| 31680 | 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 65 66 | ............<h2.id="Function-Ref |
| 316a0 | 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 6e 3c 2f 68 32 | lection">Function.Reflection</h2 |
| 316c0 | 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 74 2e 7a 69 | >........<p.class="file">test.zi |
| 316e0 | 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 |
| 31700 | 6e 20 63 6c 61 73 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 | n.class="tok-kw">const</span>.as |
| 31720 | 73 65 72 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | sert.=.<span.class="tok-builtin" |
| 31740 | 3e 40 69 6d 70 6f 72 74 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 |
| 31760 | 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 |
| 31780 | 62 75 67 2e 61 73 73 65 72 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | bug.assert;..<span.class="tok-kw |
| 317a0 | 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 |
| 317c0 | 74 72 22 3e 26 71 75 6f 74 3b 66 6e 20 72 65 66 6c 65 63 74 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 | tr">"fn.reflection"</s |
| 317e0 | 70 61 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | pan>.{.....assert(<span.class="t |
| 31800 | 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 61 73 73 65 72 | ok-builtin">@typeOf</span>(asser |
| 31820 | 74 29 2e 52 65 74 75 72 6e 54 79 70 65 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | t).ReturnType.==.<span.class="to |
| 31840 | 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 61 73 73 65 72 74 | k-type">void</span>);.....assert |
| 31860 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 | (<span.class="tok-builtin">@type |
| 31880 | 4f 66 3c 2f 73 70 61 6e 3e 28 61 73 73 65 72 74 29 2e 69 73 5f 76 61 72 5f 61 72 67 73 20 3d 3d | Of</span>(assert).is_var_args.== |
| 318a0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 | .<span.class="tok-null">false</s |
| 318c0 | 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. |
| 318e0 | 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 |
| 31900 | 67 0a 54 65 73 74 20 31 2f 31 20 66 6e 20 72 65 66 6c 65 63 74 69 6f 6e 2e 2e 2e 4f 4b 0a 41 6c | g.Test.1/1.fn.reflection...OK.Al |
| 31920 | 6c 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 | l.tests.passed..</code></pre>... |
| 31940 | 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 45 72 72 6f 72 | ...................<h1.id="Error |
| 31960 | 73 22 3e 45 72 72 6f 72 73 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 45 72 | s">Errors</h1>........<h2.id="Er |
| 31980 | 72 6f 72 2d 53 65 74 2d 54 79 70 65 22 3e 45 72 72 6f 72 20 53 65 74 20 54 79 70 65 3c 2f 68 32 | ror-Set-Type">Error.Set.Type</h2 |
| 319a0 | 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 6e 20 65 72 72 6f 72 20 73 65 74 20 | >........<p>.......An.error.set. |
| 319c0 | 69 73 20 6c 69 6b 65 20 61 6e 20 3c 61 20 68 72 65 66 3d 22 23 65 6e 75 6d 22 3e 65 6e 75 6d 3c | is.like.an.<a.href="#enum">enum< |
| 319e0 | 2f 61 3e 2e 0a 20 20 20 20 20 20 48 6f 77 65 76 65 72 2c 20 65 61 63 68 20 65 72 72 6f 72 20 6e | /a>........However,.each.error.n |
| 31a00 | 61 6d 65 20 61 63 72 6f 73 73 20 74 68 65 20 65 6e 74 69 72 65 20 63 6f 6d 70 69 6c 61 74 69 6f | ame.across.the.entire.compilatio |
| 31a20 | 6e 20 67 65 74 73 20 61 73 73 69 67 6e 65 64 20 61 6e 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 | n.gets.assigned.an.unsigned.inte |
| 31a40 | 67 65 72 0a 20 20 20 20 20 20 67 72 65 61 74 65 72 20 74 68 61 6e 20 30 2e 20 59 6f 75 20 61 72 | ger.......greater.than.0..You.ar |
| 31a60 | 65 20 61 6c 6c 6f 77 65 64 20 74 6f 20 64 65 63 6c 61 72 65 20 74 68 65 20 73 61 6d 65 20 65 72 | e.allowed.to.declare.the.same.er |
| 31a80 | 72 6f 72 20 6e 61 6d 65 20 6d 6f 72 65 20 74 68 61 6e 20 6f 6e 63 65 2c 20 61 6e 64 20 69 66 20 | ror.name.more.than.once,.and.if. |
| 31aa0 | 79 6f 75 20 64 6f 2c 20 69 74 0a 20 20 20 20 20 20 67 65 74 73 20 61 73 73 69 67 6e 65 64 20 74 | you.do,.it.......gets.assigned.t |
| 31ac0 | 68 65 20 73 61 6d 65 20 69 6e 74 65 67 65 72 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 3c 2f 70 | he.same.integer.value........</p |
| 31ae0 | 3e 0a 20 20 20 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 | >.......<p>.......The.number.of. |
| 31b00 | 75 6e 69 71 75 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 | unique.error.values.across.the.e |
| 31b20 | 6e 74 69 72 65 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 | ntire.compilation.should.determi |
| 31b40 | 6e 65 20 74 68 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 | ne.the.size.of.the.error.set.typ |
| 31b60 | 65 2e 0a 20 20 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 | e........However.right.now.it.is |
| 31b80 | 20 68 61 72 64 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 | .hard.coded.to.be.a.<code.class= |
| 31ba0 | 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 36 | "zig"><span.class="tok-type">u16 |
| 31bc0 | 3c 2f 73 70 61 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 | </span></code>..See.<a.href="htt |
| 31be0 | 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 |
| 31c00 | 65 73 2f 37 38 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 | es/786">#768</a>........</p>.... |
| 31c20 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 59 6f 75 20 63 61 6e 20 3c 61 20 68 72 65 66 3d 22 23 49 | ...<p>.......You.can.<a.href="#I |
| 31c40 | 6d 70 6c 69 63 69 74 2d 43 61 73 74 73 22 3e 69 6d 70 6c 69 63 69 74 6c 79 20 63 61 73 74 3c 2f | mplicit-Casts">implicitly.cast</ |
| 31c60 | 61 3e 20 61 6e 20 65 72 72 6f 72 20 66 72 6f 6d 20 61 20 73 75 62 73 65 74 20 74 6f 20 69 74 73 | a>.an.error.from.a.subset.to.its |
| 31c80 | 20 73 75 70 65 72 73 65 74 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 | .superset:.......</p>.......<p.c |
| 31ca0 | 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 |
| 31cc0 | 64 65 20 63 6c 61 73 73 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- |
| 31ce0 | 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 |
| 31d00 | 73 73 3d 22 74 6f 6b 2d 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>( |
| 31d20 | 3c 73 70 61 6e 20 63 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& |
| 31d40 | 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 |
| 31d60 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 69 6c 65 4f 70 65 6e 45 72 72 6f 72 20 | -kw">const</span>.FileOpenError. |
| 31d80 | 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 |
| 31da0 | 61 6e 3e 20 7b 0a 20 20 20 20 41 63 63 65 73 73 44 65 6e 69 65 64 2c 0a 20 20 20 20 4f 75 74 4f | an>.{.....AccessDenied,.....OutO |
| 31dc0 | 66 4d 65 6d 6f 72 79 2c 0a 20 20 20 20 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 2c 0a 7d 3b 0a 0a 3c | fMemory,.....FileNotFound,.};..< |
| 31de0 | 73 70 61 6e 20 63 6c 61 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> |
| 31e00 | 20 41 6c 6c 6f 63 61 74 69 6f 6e 45 72 72 6f 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .AllocationError.=.<span.class=" |
| 31e20 | 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 4f 75 74 4f 66 | tok-kw">error</span>.{.....OutOf |
| 31e40 | 4d 65 6d 6f 72 79 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | Memory,.};..<span.class="tok-kw" |
| 31e60 | 3e 74 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 |
| 31e80 | 72 22 3e 26 71 75 6f 74 3b 69 6d 70 6c 69 63 69 74 20 63 61 73 74 20 73 75 62 73 65 74 20 74 6f | r">"implicit.cast.subset.to |
| 31ea0 | 20 73 75 70 65 72 73 65 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 | .superset"</span>.{.....<sp |
| 31ec0 | 61 6e 20 63 6c 61 73 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 |
| 31ee0 | 72 72 20 3d 20 66 6f 6f 28 41 6c 6c 6f 63 61 74 69 6f 6e 45 72 72 6f 72 2e 4f 75 74 4f 66 4d 65 | rr.=.foo(AllocationError.OutOfMe |
| 31f00 | 6d 6f 72 79 29 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 61 73 73 65 72 74 28 65 72 72 20 | mory);.....std.debug.assert(err. |
| 31f20 | 3d 3d 20 46 69 6c 65 4f 70 65 6e 45 72 72 6f 72 2e 4f 75 74 4f 66 4d 65 6d 6f 72 79 29 3b 0a 7d | ==.FileOpenError.OutOfMemory);.} |
| 31f40 | 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> |
| 31f60 | 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> |
| 31f80 | 28 65 72 72 3a 20 41 6c 6c 6f 63 61 74 69 6f 6e 45 72 72 6f 72 29 20 46 69 6c 65 4f 70 65 6e 45 | (err:.AllocationError).FileOpenE |
| 31fa0 | 72 72 6f 72 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | rror.{.....<span.class="tok-kw"> |
| 31fc0 | 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 65 72 72 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | return</span>.err;.}</code></pre |
| 31fe0 | 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. |
| 32000 | 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 31 2f 31 20 69 6d 70 6c 69 63 69 74 20 | test.test.zig.Test.1/1.implicit. |
| 32020 | 63 61 73 74 20 73 75 62 73 65 74 20 74 6f 20 73 75 70 65 72 73 65 74 2e 2e 2e 4f 4b 0a 41 6c 6c | cast.subset.to.superset...OK.All |
| 32040 | 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>.... |
| 32060 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 42 75 74 20 79 6f 75 20 63 61 6e 6e 6f 74 20 69 6d 70 | ....<p>.......But.you.cannot.imp |
| 32080 | 6c 69 63 69 74 6c 79 20 63 61 73 74 20 61 6e 20 65 72 72 6f 72 20 66 72 6f 6d 20 61 20 73 75 70 | licitly.cast.an.error.from.a.sup |
| 320a0 | 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 2f 70 3e 0a 20 20 | erset.to.a.subset:.......</p>... |
| 320c0 | 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> |
| 320e0 | 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 |
| 32100 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 69 6c 65 4f 70 65 | ss="tok-kw">const</span>.FileOpe |
| 32120 | 6e 45 72 72 6f 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 | nError.=.<span.class="tok-kw">er |
| 32140 | 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 69 65 64 2c 0a 20 | ror</span>.{.....AccessDenied,.. |
| 32160 | 20 20 20 4f 75 74 4f 66 4d 65 6d 6f 72 79 2c 0a 20 20 20 20 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 | ...OutOfMemory,.....FileNotFound |
| 32180 | 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 | ,.};..<span.class="tok-kw">const |
| 321a0 | 3c 2f 73 70 61 6e 3e 20 41 6c 6c 6f 63 61 74 69 6f 6e 45 72 72 6f 72 20 3d 20 3c 73 70 61 6e 20 | </span>.AllocationError.=.<span. |
| 321c0 | 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 20 7b 0a 20 20 | class="tok-kw">error</span>.{... |
| 321e0 | 20 20 4f 75 74 4f 66 4d 65 6d 6f 72 79 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ..OutOfMemory,.};..<span.class=" |
| 32200 | 74 6f 6b 2d 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= |
| 32220 | 22 74 6f 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 73 75 | "tok-str">"implicit.cast.su |
| 32240 | 70 65 72 73 65 74 20 74 6f 20 73 75 62 73 65 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a | perset.to.subset"</span>.{. |
| 32260 | 20 20 20 20 66 6f 6f 28 46 69 6c 65 4f 70 65 6e 45 72 72 6f 72 2e 4f 75 74 4f 66 4d 65 6d 6f 72 | ....foo(FileOpenError.OutOfMemor |
| 32280 | 79 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 | y).<span.class="tok-kw">catch</s |
| 322a0 | 70 61 6e 3e 20 7b 7d 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | pan>.{};.}..<span.class="tok-kw" |
| 322c0 | 3e 66 6e 3c 2f 73 70 61 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"> |
| 322e0 | 66 6f 6f 3c 2f 73 70 61 6e 3e 28 65 72 72 3a 20 46 69 6c 65 4f 70 65 6e 45 72 72 6f 72 29 20 41 | foo</span>(err:.FileOpenError).A |
| 32300 | 6c 6c 6f 63 61 74 69 6f 6e 45 72 72 6f 72 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | llocationError.{.....<span.class |
| 32320 | 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;.}</ |
| 32340 | 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 |
| 32360 | 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c | ll">$.zig.test.test.zig.<span.cl |
| 32380 | 61 73 73 3d 22 74 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f | ass="t0_1">/home/andy/dev/zig/do |
| 323a0 | 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 31 36 3a 31 32 3a 20 3c 2f 73 70 61 6e 3e | cgen_tmp/test.zig:16:12:.</span> |
| 323c0 | 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 3c 2f 73 70 61 6e | <span.class="t31_1">error:</span |
| 323e0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 20 65 78 70 65 63 74 65 64 20 74 79 | ><span.class="t0_1">.expected.ty |
| 32400 | 70 65 20 27 41 6c 6c 6f 63 61 74 69 6f 6e 45 72 72 6f 72 27 2c 20 66 6f 75 6e 64 20 27 46 69 6c | pe.'AllocationError',.found.'Fil |
| 32420 | 65 4f 70 65 6e 45 72 72 6f 72 27 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 65 72 | eOpenError'</span>.....return.er |
| 32440 | 72 3b 0a 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 | r;............<span.class="t32_1 |
| 32460 | 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 2f 68 | ">^</span>.<span.class="t0_1">/h |
| 32480 | 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 | ome/andy/dev/zig/docgen_tmp/test |
| 324a0 | 2e 7a 69 67 3a 32 3a 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 | .zig:2:5:.</span><span.class="t3 |
| 324c0 | 36 5f 31 22 3e 6e 6f 74 65 3a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 | 6_1">note:</span><span.class="t0 |
| 324e0 | 5f 31 22 3e 20 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 | _1">.'error.AccessDenied'.not.a. |
| 32500 | 6d 65 6d 62 65 72 20 6f 66 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 65 72 72 6f 72 20 73 65 74 3c | member.of.destination.error.set< |
| 32520 | 2f 73 70 61 6e 3e 0a 20 20 20 20 41 63 63 65 73 73 44 65 6e 69 65 64 2c 0a 20 20 20 20 3c 73 70 | /span>.....AccessDenied,.....<sp |
| 32540 | 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. |
| 32560 | 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f | class="t0_1">/home/andy/dev/zig/ |
| 32580 | 64 6f 63 67 65 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 | docgen_tmp/test.zig:4:5:.</span> |
| 325a0 | 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 3c 2f 73 70 61 6e 3e | <span.class="t36_1">note:</span> |
| 325c0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 20 27 65 72 72 6f 72 2e 46 69 6c 65 4e | <span.class="t0_1">.'error.FileN |
| 325e0 | 6f 74 46 6f 75 6e 64 27 20 6e 6f 74 20 61 20 6d 65 6d 62 65 72 20 6f 66 20 64 65 73 74 69 6e 61 | otFound'.not.a.member.of.destina |
| 32600 | 74 69 6f 6e 20 65 72 72 6f 72 20 73 65 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 46 69 6c 65 4e 6f | tion.error.set</span>.....FileNo |
| 32620 | 74 46 6f 75 6e 64 2c 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 | tFound,.....<span.class="t32_1"> |
| 32640 | 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 |
| 32660 | 3e 0a 20 20 20 20 20 20 54 68 65 72 65 20 69 73 20 61 20 73 68 6f 72 74 63 75 74 20 66 6f 72 20 | >.......There.is.a.shortcut.for. |
| 32680 | 64 65 63 6c 61 72 69 6e 67 20 61 6e 20 65 72 72 6f 72 20 73 65 74 20 77 69 74 68 20 6f 6e 6c 79 | declaring.an.error.set.with.only |
| 326a0 | 20 31 20 76 61 6c 75 65 2c 20 61 6e 64 20 74 68 65 6e 20 67 65 74 74 69 6e 67 20 74 68 61 74 20 | .1.value,.and.then.getting.that. |
| 326c0 | 76 61 6c 75 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 | value:.......</p>.......<pre><co |
| 326e0 | 64 65 20 63 6c 61 73 73 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- |
| 32700 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 72 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | kw">const</span>.err.=.<span.cla |
| 32720 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 46 69 6c 65 4e 6f 74 | ss="tok-kw">error</span>.FileNot |
| 32740 | 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 54 68 69 | Found;</code></pre>.......<p>Thi |
| 32760 | 73 20 69 73 20 65 71 75 69 76 61 6c 65 6e 74 20 74 6f 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | s.is.equivalent.to:</p>.......<p |
| 32780 | 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 |
| 327a0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 72 72 20 3d 20 28 3c 73 | ="tok-kw">const</span>.err.=.(<s |
| 327c0 | 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 20 | pan.class="tok-kw">error</span>. |
| 327e0 | 7b 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 7d 29 2e 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 3b 3c 2f 63 | {FileNotFound}).FileNotFound;</c |
| 32800 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 | ode></pre>.......<p>.......This. |
| 32820 | 62 65 63 6f 6d 65 73 20 75 73 65 66 75 6c 20 77 68 65 6e 20 75 73 69 6e 67 20 3c 61 20 68 72 65 | becomes.useful.when.using.<a.hre |
| 32840 | 66 3d 22 23 49 6e 66 65 72 72 65 64 2d 45 72 72 6f 72 2d 53 65 74 73 22 3e 49 6e 66 65 72 72 65 | f="#Inferred-Error-Sets">Inferre |
| 32860 | 64 20 45 72 72 6f 72 20 53 65 74 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | d.Error.Sets</a>........</p>.... |
| 32880 | 20 20 20 3c 68 33 20 69 64 3d 22 54 68 65 2d 47 6c 6f 62 61 6c 2d 45 72 72 6f 72 2d 53 65 74 22 | ...<h3.id="The-Global-Error-Set" |
| 328a0 | 3e 54 68 65 20 47 6c 6f 62 61 6c 20 45 72 72 6f 72 20 53 65 74 3c 2f 68 33 3e 0a 0a 20 20 20 20 | >The.Global.Error.Set</h3>...... |
| 328c0 | 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 61 | ..<p><code.class="zig"><span.cla |
| 328e0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 | ss="tok-kw">error</span></code>. |
| 32900 | 72 65 66 65 72 73 20 74 6f 20 74 68 65 20 67 6c 6f 62 61 6c 20 65 72 72 6f 72 20 73 65 74 2e 0a | refers.to.the.global.error.set.. |
| 32920 | 20 20 20 20 20 20 54 68 69 73 20 69 73 20 74 68 65 20 65 72 72 6f 72 20 73 65 74 20 74 68 61 74 | ......This.is.the.error.set.that |
| 32940 | 20 63 6f 6e 74 61 69 6e 73 20 61 6c 6c 20 65 72 72 6f 72 73 20 69 6e 20 74 68 65 20 65 6e 74 69 | .contains.all.errors.in.the.enti |
| 32960 | 72 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 75 6e 69 74 2e 0a 20 20 20 20 20 20 49 74 20 69 73 | re.compilation.unit........It.is |
| 32980 | 20 61 20 73 75 70 65 72 73 65 74 20 6f 66 20 61 6c 6c 20 6f 74 68 65 72 20 65 72 72 6f 72 20 73 | .a.superset.of.all.other.error.s |
| 329a0 | 65 74 73 20 61 6e 64 20 61 20 73 75 62 73 65 74 20 6f 66 20 6e 6f 6e 65 20 6f 66 20 74 68 65 6d | ets.and.a.subset.of.none.of.them |
| 329c0 | 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 59 6f 75 | ........</p>.......<p>.......You |
| 329e0 | 20 63 61 6e 20 69 6d 70 6c 69 63 69 74 6c 79 20 63 61 73 74 20 61 6e 79 20 65 72 72 6f 72 20 73 | .can.implicitly.cast.any.error.s |
| 32a00 | 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 |
| 32a20 | 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 |
| 32a40 | 20 6f 66 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 6e 2d 67 6c | .of.global.error.set.to.a.non-gl |
| 32a60 | 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 67 75 61 67 | obal.one..This.inserts.a.languag |
| 32a80 | 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 20 73 75 72 | e-level.......assert.to.make.sur |
| 32aa0 | 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 20 69 6e 20 | e.the.error.value.is.in.fact.in. |
| 32ac0 | 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 20 20 20 20 | the.destination.error.set....... |
| 32ae0 | 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 6f 62 61 6c | .</p>.......<p>.......The.global |
| 32b00 | 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 62 65 20 61 | .error.set.should.generally.be.a |
| 32b20 | 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 68 65 0a 20 | voided.because.it.prevents.the.. |
| 32b40 | 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 68 61 74 20 | .....compiler.from.knowing.what. |
| 32b60 | 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 6c 65 2d 74 | errors.are.possible.at.compile-t |
| 32b80 | 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 20 73 65 74 | ime..Knowing.......the.error.set |
| 32ba0 | 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 6f 72 20 67 | .at.compile-time.is.better.for.g |
| 32bc0 | 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 20 20 20 20 | enerated.documentation.and...... |
| 32be0 | 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 68 20 61 73 | .helpful.error.messages,.such.as |
| 32c00 | 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 20 76 61 6c | .forgetting.a.possible.error.val |
| 32c20 | 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 69 74 63 68 | ue.in.a.<a.href="#switch">switch |
| 32c40 | 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 0a 20 | </a>........</p>................ |
| 32c60 | 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 65 22 3e 45 | .....<h2.id="Error-Union-Type">E |
| 32c80 | 72 72 6f 72 20 55 6e 69 6f 6e 20 54 79 70 65 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a | rror.Union.Type</h2>........<p>. |
| 32ca0 | 20 20 20 20 20 20 41 6e 20 65 72 72 6f 72 20 73 65 74 20 74 79 70 65 20 61 6e 64 20 6e 6f 72 6d | ......An.error.set.type.and.norm |
| 32cc0 | 61 6c 20 74 79 70 65 20 63 61 6e 20 62 65 20 63 6f 6d 62 69 6e 65 64 20 77 69 74 68 20 74 68 65 | al.type.can.be.combined.with.the |
| 32ce0 | 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 0a 20 20 20 20 | .<code.class="zig">!</code>..... |
| 32d00 | 20 20 62 69 6e 61 72 79 20 6f 70 65 72 61 74 6f 72 20 74 6f 20 66 6f 72 6d 20 61 6e 20 65 72 72 | ..binary.operator.to.form.an.err |
| 32d20 | 6f 72 20 75 6e 69 6f 6e 20 74 79 70 65 2e 20 59 6f 75 20 61 72 65 20 6c 69 6b 65 6c 79 20 74 6f | or.union.type..You.are.likely.to |
| 32d40 | 20 75 73 65 20 61 6e 0a 20 20 20 20 20 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 74 79 70 65 20 6d | .use.an.......error.union.type.m |
| 32d60 | 6f 72 65 20 6f 66 74 65 6e 20 74 68 61 6e 20 61 6e 20 65 72 72 6f 72 20 73 65 74 20 74 79 70 65 | ore.often.than.an.error.set.type |
| 32d80 | 20 62 79 20 69 74 73 65 6c 66 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e | .by.itself........</p>.......<p> |
| 32da0 | 0a 20 20 20 20 20 20 48 65 72 65 20 69 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 6f 20 70 61 72 | .......Here.is.a.function.to.par |
| 32dc0 | 73 65 20 61 20 73 74 72 69 6e 67 20 69 6e 74 6f 20 61 20 36 34 2d 62 69 74 20 69 6e 74 65 67 65 | se.a.string.into.a.64-bit.intege |
| 32de0 | 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 |
| 32e00 | 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 |
| 32e20 | 3d 22 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< |
| 32e40 | 2f 73 70 61 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</ |
| 32e60 | 73 70 61 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 61 72 73 65 | span>.<span.class="tok-fn">parse |
| 32e80 | 55 36 34 3c 2f 73 70 61 6e 3e 28 62 75 66 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | U64</span>(buf:.[]<span.class="t |
| 32ea0 | 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= |
| 32ec0 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 72 61 64 69 78 3a 20 3c 73 70 | "tok-type">u8</span>,.radix:.<sp |
| 32ee0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 21 | an.class="tok-type">u8</span>).! |
| 32f00 | 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 |
| 32f20 | 3e 20 7b 0a 20 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 |
| 32f40 | 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 |
| 32f60 | 22 3e 75 36 34 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ">u64</span>.=.<span.class="tok- |
| 32f80 | 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 |
| 32fa0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 6e 3e 20 28 62 75 66 29 20 7c 63 7c | ss="tok-kw">for</span>.(buf).|c| |
| 32fc0 | 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"> |
| 32fe0 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 64 69 67 69 74 20 3d 20 63 68 61 72 54 6f 44 69 67 69 74 | const</span>.digit.=.charToDigit |
| 33000 | 28 63 29 3b 0a 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | (c);..........<span.class="tok-k |
| 33020 | 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 64 69 67 69 74 20 26 67 74 3b 3d 20 72 61 64 69 78 29 | w">if</span>.(digit.>=.radix) |
| 33040 | 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- |
| 33060 | 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 |
| 33080 | 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 61 72 3b | ok-kw">error</span>.InvalidChar; |
| 330a0 | 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 73 73 3d | .........}..........<span.class= |
| 330c0 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 78 20 2a 3d 20 72 61 64 69 78 3c 2f 73 70 61 | "tok-comment">//.x.*=.radix</spa |
| 330e0 | 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | n>.........<span.class="tok-kw"> |
| 33100 | 69 66 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | if</span>.(<span.class="tok-buil |
| 33120 | 74 69 6e 22 3e 40 6d 75 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 73 70 61 6e 3e 28 3c 73 70 | tin">@mulWithOverflow</span>(<sp |
| 33140 | 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>,. |
| 33160 | 78 2c 20 72 61 64 69 78 2c 20 26 61 6d 70 3b 78 29 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 | x,.radix,.&x)).{............ |
| 33180 | 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 |
| 331a0 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f | an>.<span.class="tok-kw">error</ |
| 331c0 | 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 0a 20 20 20 20 20 | span>.Overflow;.........}....... |
| 331e0 | 20 20 20 3c 73 70 61 6e 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">//. |
| 33200 | 78 20 2b 3d 20 64 69 67 69 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | x.+=.digit</span>.........<span. |
| 33220 | 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. |
| 33240 | 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 |
| 33260 | 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 |
| 33280 | 65 22 3e 75 36 34 3c 2f 73 70 61 6e 3e 2c 20 78 2c 20 64 69 67 69 74 2c 20 26 61 6d 70 3b 78 29 | e">u64</span>,.x,.digit,.&x) |
| 332a0 | 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 |
| 332c0 | 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=" |
| 332e0 | 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 4f 76 65 72 66 6c 6f 77 3b 0a 20 | tok-kw">error</span>.Overflow;.. |
| 33300 | 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .......}.....}......<span.class= |
| 33320 | 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 78 3b 0a 7d 0a 0a 3c 73 70 | "tok-kw">return</span>.x;.}..<sp |
| 33340 | 61 6e 20 63 6c 61 73 73 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 |
| 33360 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 63 68 61 72 54 6f 44 69 67 69 74 3c 2f 73 70 | n.class="tok-fn">charToDigit</sp |
| 33380 | 61 6e 3e 28 63 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 | an>(c:.<span.class="tok-type">u8 |
| 333a0 | 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"> |
| 333c0 | 75 38 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | u8</span>.{.....<span.class="tok |
| 333e0 | 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=" |
| 33400 | 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 63 29 20 7b 0a 20 20 20 20 | tok-kw">switch</span>.(c).{..... |
| 33420 | 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 30 27 3c 2f 73 | ....<span.class="tok-str">'0'</s |
| 33440 | 70 61 6e 3e 20 2e 2e 2e 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">' |
| 33460 | 39 27 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 63 20 2d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | 9'</span>.=>.c.-.<span.class= |
| 33480 | 22 74 6f 6b 2d 73 74 72 22 3e 27 30 27 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 3c 73 | "tok-str">'0'</span>,.........<s |
| 334a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 41 27 3c 2f 73 70 61 6e 3e 20 2e | pan.class="tok-str">'A'</span>.. |
| 334c0 | 2e 2e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 5a 27 3c 2f 73 70 | ...<span.class="tok-str">'Z'</sp |
| 334e0 | 61 6e 3e 20 3d 26 67 74 3b 20 63 20 2d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | an>.=>.c.-.<span.class="tok-s |
| 33500 | 74 72 22 3e 27 41 27 3c 2f 73 70 61 6e 3e 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | tr">'A'</span>.+.<span.class="to |
| 33520 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 | k-number">10</span>,.........<sp |
| 33540 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 61 27 3c 2f 73 70 61 6e 3e 20 2e 2e | an.class="tok-str">'a'</span>... |
| 33560 | 2e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 7a 27 3c 2f 73 70 61 | ..<span.class="tok-str">'z'</spa |
| 33580 | 6e 3e 20 3d 26 67 74 3b 20 63 20 2d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | n>.=>.c.-.<span.class="tok-st |
| 335a0 | 72 22 3e 27 61 27 3c 2f 73 70 61 6e 3e 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | r">'a'</span>.+.<span.class="tok |
| 335c0 | 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 | -number">10</span>,.........<spa |
| 335e0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3d 26 67 | n.class="tok-kw">else</span>.=&g |
| 33600 | 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6d 61 | t;.<span.class="tok-builtin">@ma |
| 33620 | 78 56 61 6c 75 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 | xValue</span>(<span.class="tok-t |
| 33640 | 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 2c 0a 20 20 20 20 7d 3b 0a 7d 0a 0a 3c 73 70 61 6e | ype">u8</span>),.....};.}..<span |
| 33660 | 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 |
| 33680 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 70 61 72 73 65 20 75 36 | n.class="tok-str">"parse.u6 |
| 336a0 | 34 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | 4"</span>.{.....<span.class |
| 336c0 | 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.=. |
| 336e0 | 3c 73 70 61 6e 20 63 6c 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>. |
| 33700 | 70 61 72 73 65 55 36 34 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 | parseU64(<span.class="tok-str">& |
| 33720 | 71 75 6f 74 3b 31 32 33 34 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c | quot;1234"</span>,.<span.cl |
| 33740 | 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 20 | ass="tok-number">10</span>);.... |
| 33760 | 20 3c 73 70 61 6e 20 63 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 |
| 33780 | 72 74 3c 2f 73 70 61 6e 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"> |
| 337a0 | 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 61 73 | "std"</span>).debug.as |
| 337c0 | 73 65 72 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 | sert(result.==.<span.class="tok- |
| 337e0 | 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f | number">1234</span>);.}</code></ |
| 33800 | 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 |
| 33820 | 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 31 2f 31 20 70 61 72 73 65 20 | ig.test.test.zig.Test.1/1.parse. |
| 33840 | 75 36 34 2e 2e 2e 4f 4b 0a 41 6c 6c 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 | u64...OK.All.tests.passed..</cod |
| 33860 | 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4e 6f 74 69 63 65 | e></pre>........<p>.......Notice |
| 33880 | 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 73 73 3d | .the.return.type.is.<code.class= |
| 338a0 | 22 7a 69 67 22 3e 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 36 | "zig">!<span.class="tok-type">u6 |
| 338c0 | 34 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 20 54 68 69 73 20 6d 65 61 6e 73 20 74 68 61 74 | 4</span></code>..This.means.that |
| 338e0 | 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 0a 20 20 20 20 20 20 65 69 74 68 65 72 20 72 65 74 75 72 | .the.function.......either.retur |
| 33900 | 6e 73 20 61 6e 20 75 6e 73 69 67 6e 65 64 20 36 34 20 62 69 74 20 69 6e 74 65 67 65 72 2c 20 6f | ns.an.unsigned.64.bit.integer,.o |
| 33920 | 72 20 61 6e 20 65 72 72 6f 72 2e 20 57 65 20 6c 65 66 74 20 6f 66 66 20 74 68 65 20 65 72 72 6f | r.an.error..We.left.off.the.erro |
| 33940 | 72 20 73 65 74 0a 20 20 20 20 20 20 74 6f 20 74 68 65 20 6c 65 66 74 20 6f 66 20 74 68 65 20 3c | r.set.......to.the.left.of.the.< |
| 33960 | 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 2c 20 73 6f 20 74 68 | code.class="zig">!</code>,.so.th |
| 33980 | 65 20 65 72 72 6f 72 20 73 65 74 20 69 73 20 69 6e 66 65 72 72 65 64 2e 0a 20 20 20 20 20 20 3c | e.error.set.is.inferred........< |
| 339a0 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 69 74 68 69 6e 20 74 68 65 20 66 | /p>.......<p>.......Within.the.f |
| 339c0 | 75 6e 63 74 69 6f 6e 20 64 65 66 69 6e 69 74 69 6f 6e 2c 20 79 6f 75 20 63 61 6e 20 73 65 65 20 | unction.definition,.you.can.see. |
| 339e0 | 73 6f 6d 65 20 72 65 74 75 72 6e 20 73 74 61 74 65 6d 65 6e 74 73 20 74 68 61 74 20 72 65 74 75 | some.return.statements.that.retu |
| 33a00 | 72 6e 0a 20 20 20 20 20 20 61 6e 20 65 72 72 6f 72 2c 20 61 6e 64 20 61 74 20 74 68 65 20 62 6f | rn.......an.error,.and.at.the.bo |
| 33a20 | 74 74 6f 6d 20 61 20 72 65 74 75 72 6e 20 73 74 61 74 65 6d 65 6e 74 20 74 68 61 74 20 72 65 74 | ttom.a.return.statement.that.ret |
| 33a40 | 75 72 6e 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 20 63 | urns.a.<code.class="zig"><span.c |
| 33a60 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 36 34 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | lass="tok-type">u64</span></code |
| 33a80 | 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 42 6f 74 68 20 74 79 70 65 73 20 3c 61 20 68 72 65 66 3d | >............Both.types.<a.href= |
| 33aa0 | 22 23 49 6d 70 6c 69 63 69 74 2d 43 61 73 74 73 22 3e 69 6d 70 6c 69 63 69 74 6c 79 20 63 61 73 | "#Implicit-Casts">implicitly.cas |
| 33ac0 | 74 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 73 70 61 6e | t</a>.to.<code.class="zig"><span |
| 33ae0 | 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 21 3c 73 70 | .class="tok-kw">error</span>!<sp |
| 33b00 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 36 34 3c 2f 73 70 61 6e 3e 3c 2f | an.class="tok-type">u64</span></ |
| 33b20 | 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>..... |
| 33b40 | 20 20 57 68 61 74 20 69 74 20 6c 6f 6f 6b 73 20 6c 69 6b 65 20 74 6f 20 75 73 65 20 74 68 69 73 | ..What.it.looks.like.to.use.this |
| 33b60 | 20 66 75 6e 63 74 69 6f 6e 20 76 61 72 69 65 73 20 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 77 68 | .function.varies.depending.on.wh |
| 33b80 | 61 74 20 79 6f 75 27 72 65 0a 20 20 20 20 20 20 74 72 79 69 6e 67 20 74 6f 20 64 6f 2e 20 4f 6e | at.you're.......trying.to.do..On |
| 33ba0 | 65 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 3c 2f 70 3e 0a 20 | e.of.the.following:.......</p>.. |
| 33bc0 | 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 59 6f 75 20 77 61 6e 74 20 74 | .....<ul>.........<li>You.want.t |
| 33be0 | 6f 20 70 72 6f 76 69 64 65 20 61 20 64 65 66 61 75 6c 74 20 76 61 6c 75 65 20 69 66 20 69 74 20 | o.provide.a.default.value.if.it. |
| 33c00 | 72 65 74 75 72 6e 65 64 20 61 6e 20 65 72 72 6f 72 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | returned.an.error.</li>......... |
| 33c20 | 3c 6c 69 3e 49 66 20 69 74 20 72 65 74 75 72 6e 65 64 20 61 6e 20 65 72 72 6f 72 20 74 68 65 6e | <li>If.it.returned.an.error.then |
| 33c40 | 20 79 6f 75 20 77 61 6e 74 20 74 6f 20 72 65 74 75 72 6e 20 74 68 65 20 73 61 6d 65 20 65 72 72 | .you.want.to.return.the.same.err |
| 33c60 | 6f 72 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 59 6f 75 20 6b 6e 6f 77 20 77 69 | or.</li>.........<li>You.know.wi |
| 33c80 | 74 68 20 63 6f 6d 70 6c 65 74 65 20 63 65 72 74 61 69 6e 74 79 20 69 74 20 77 69 6c 6c 20 6e 6f | th.complete.certainty.it.will.no |
| 33ca0 | 74 20 72 65 74 75 72 6e 20 61 6e 20 65 72 72 6f 72 2c 20 73 6f 20 77 61 6e 74 20 74 6f 20 75 6e | t.return.an.error,.so.want.to.un |
| 33cc0 | 63 6f 6e 64 69 74 69 6f 6e 61 6c 6c 79 20 75 6e 77 72 61 70 20 69 74 2e 3c 2f 6c 69 3e 0a 20 20 | conditionally.unwrap.it.</li>... |
| 33ce0 | 20 20 20 20 20 20 3c 6c 69 3e 59 6f 75 20 77 61 6e 74 20 74 6f 20 74 61 6b 65 20 61 20 64 69 66 | ......<li>You.want.to.take.a.dif |
| 33d00 | 66 65 72 65 6e 74 20 61 63 74 69 6f 6e 20 66 6f 72 20 65 61 63 68 20 70 6f 73 73 69 62 6c 65 20 | ferent.action.for.each.possible. |
| 33d20 | 65 72 72 6f 72 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 68 | error.</li>.......</ul>.......<h |
| 33d40 | 33 20 69 64 3d 22 63 61 74 63 68 22 3e 63 61 74 63 68 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c | 3.id="catch">catch</h3>........< |
| 33d60 | 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 20 64 65 66 61 75 | p>If.you.want.to.provide.a.defau |
| 33d80 | 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 3c 63 6f 64 65 20 | lt.value,.you.can.use.the.<code. |
| 33da0 | 63 6c 61 73 73 3d 22 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" |
| 33dc0 | 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 62 69 6e 61 72 79 20 6f 70 65 72 | >catch</span></code>.binary.oper |
| 33de0 | 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 20 63 6c 61 73 73 | ator:</p>.......<pre><code.class |
| 33e00 | 3d 22 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</ |
| 33e20 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 64 6f 41 54 68 | span>.<span.class="tok-fn">doATh |
| 33e40 | 69 6e 67 3c 2f 73 70 61 6e 3e 28 73 74 72 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ing</span>(str:.[]<span.class="t |
| 33e60 | 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= |
| 33e80 | 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 |
| 33ea0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e | an.class="tok-kw">const</span>.n |
| 33ec0 | 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 20 63 6c 61 73 | umber.=.parseU64(str,.<span.clas |
| 33ee0 | 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 73 70 61 6e 20 | s="tok-number">10</span>).<span. |
| 33f00 | 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 |
| 33f20 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 33 3c 2f 73 70 61 6e 3e 3b 0a | n.class="tok-number">13</span>;. |
| 33f40 | 20 20 20 20 3c 73 70 61 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">// |
| 33f60 | 20 2e 2e 2e 3c 2f 73 70 61 6e 3e 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 | ....</span>.}</code></pre>...... |
| 33f80 | 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 63 6f 64 65 20 63 | .<p>.......In.this.code,.<code.c |
| 33fa0 | 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 69 6c 6c 20 62 65 | lass="zig">number</code>.will.be |
| 33fc0 | 20 65 71 75 61 6c 20 74 6f 20 74 68 65 20 73 75 63 63 65 73 73 66 75 6c 6c 79 20 70 61 72 73 65 | .equal.to.the.successfully.parse |
| 33fe0 | 64 20 73 74 72 69 6e 67 2c 20 6f 72 0a 20 20 20 20 20 20 20 20 20 20 61 20 64 65 66 61 75 6c 74 | d.string,.or...........a.default |
| 34000 | 20 76 61 6c 75 65 20 6f 66 20 31 33 2e 20 54 68 65 20 74 79 70 65 20 6f 66 20 74 68 65 20 72 69 | .value.of.13..The.type.of.the.ri |
| 34020 | 67 68 74 20 68 61 6e 64 20 73 69 64 65 20 6f 66 20 74 68 65 20 62 69 6e 61 72 79 20 3c 63 6f 64 | ght.hand.side.of.the.binary.<cod |
| 34040 | 65 20 63 6c 61 73 73 3d 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 |
| 34060 | 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 72 61 74 6f 72 20 | w">catch</span></code>.operator. |
| 34080 | 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 68 65 20 75 6e 77 | must...............match.the.unw |
| 340a0 | 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 72 20 62 65 20 6f | rapped.error.union.type,.or.be.o |
| 340c0 | 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 73 70 61 6e 20 63 | f.type.<code.class="zig"><span.c |
| 340e0 | 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>< |
| 34100 | 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 | /code>........</p>.............. |
| 34120 | 3c 68 33 20 69 64 3d 22 74 72 79 22 3e 74 72 79 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e | <h3.id="try">try</h3>........<p> |
| 34140 | 4c 65 74 27 73 20 73 61 79 20 79 6f 75 20 77 61 6e 74 65 64 20 74 6f 20 72 65 74 75 72 6e 20 74 | Let's.say.you.wanted.to.return.t |
| 34160 | 68 65 20 65 72 72 6f 72 20 69 66 20 79 6f 75 20 67 6f 74 20 6f 6e 65 2c 20 6f 74 68 65 72 77 69 | he.error.if.you.got.one,.otherwi |
| 34180 | 73 65 20 63 6f 6e 74 69 6e 75 65 20 77 69 74 68 20 74 68 65 0a 20 20 20 20 20 20 66 75 6e 63 74 | se.continue.with.the.......funct |
| 341a0 | 69 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 | ion.logic:</p>.......<pre><code. |
| 341c0 | 63 6c 61 73 73 3d 22 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" |
| 341e0 | 3e 66 6e 3c 2f 73 70 61 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"> |
| 34200 | 64 6f 41 54 68 69 6e 67 3c 2f 73 70 61 6e 3e 28 73 74 72 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 | doAThing</span>(str:.[]<span.cla |
| 34220 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 21 3c 73 70 61 6e 20 | ss="tok-type">u8</span>).!<span. |
| 34240 | 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>.{.. |
| 34260 | 20 20 20 3c 73 70 61 6e 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 |
| 34280 | 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 |
| 342a0 | 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>). |
| 342c0 | 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 |
| 342e0 | 3e 20 7c 65 72 72 7c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 | >.|err|.<span.class="tok-kw">ret |
| 34300 | 75 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 | urn</span>.err;.....<span.class= |
| 34320 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 2e 2e 2e 3c 2f 73 70 61 6e 3e 0a 7d 3c 2f 63 | "tok-comment">//....</span>.}</c |
| 34340 | 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 72 65 | ode></pre>.......<p>.......There |
| 34360 | 20 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 | .is.a.shortcut.for.this..The.<co |
| 34380 | 64 65 20 63 6c 61 73 73 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- |
| 343a0 | 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e | kw">try</span></code>.expression |
| 343c0 | 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 |
| 343e0 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 | ass="zig"><span.class="tok-kw">f |
| 34400 | 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 64 6f | n</span>.<span.class="tok-fn">do |
| 34420 | 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 73 | AThing</span>(str:.[]<span.class |
| 34440 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 21 3c 73 70 61 6e 20 63 6c | ="tok-type">u8</span>).!<span.cl |
| 34460 | 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>.{.... |
| 34480 | 20 3c 73 70 61 6e 20 63 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 |
| 344a0 | 6e 3e 20 6e 75 6d 62 65 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | n>.number.=.<span.class="tok-kw" |
| 344c0 | 3e 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 | >try</span>.parseU64(str,.<span. |
| 344e0 | 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 20 | class="tok-number">10</span>);.. |
| 34500 | 20 20 20 3c 73 70 61 6e 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">//. |
| 34520 | 2e 2e 2e 3c 2f 73 70 61 6e 3e 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 | ...</span>.}</code></pre>....... |
| 34540 | 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 |
| 34560 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | n.class="tok-kw">try</span></cod |
| 34580 | 65 3e 20 65 76 61 6c 75 61 74 65 73 20 61 6e 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 65 78 70 72 | e>.evaluates.an.error.union.expr |
| 345a0 | 65 73 73 69 6f 6e 2e 20 49 66 20 69 74 20 69 73 20 61 6e 20 65 72 72 6f 72 2c 20 69 74 20 72 65 | ession..If.it.is.an.error,.it.re |
| 345c0 | 74 75 72 6e 73 0a 20 20 20 20 20 20 66 72 6f 6d 20 74 68 65 20 63 75 72 72 65 6e 74 20 66 75 6e | turns.......from.the.current.fun |
| 345e0 | 63 74 69 6f 6e 20 77 69 74 68 20 74 68 65 20 73 61 6d 65 20 65 72 72 6f 72 2e 20 4f 74 68 65 72 | ction.with.the.same.error..Other |
| 34600 | 77 69 73 65 2c 20 74 68 65 20 65 78 70 72 65 73 73 69 6f 6e 20 72 65 73 75 6c 74 73 20 69 6e 0a | wise,.the.expression.results.in. |
| 34620 | 20 20 20 20 20 20 74 68 65 20 75 6e 77 72 61 70 70 65 64 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 | ......the.unwrapped.value....... |
| 34640 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 4d | .</p>..............<p>.........M |
| 34660 | 61 79 62 65 20 79 6f 75 20 6b 6e 6f 77 20 77 69 74 68 20 63 6f 6d 70 6c 65 74 65 20 63 65 72 74 | aybe.you.know.with.complete.cert |
| 34680 | 61 69 6e 74 79 20 74 68 61 74 20 61 6e 20 65 78 70 72 65 73 73 69 6f 6e 20 77 69 6c 6c 20 6e 65 | ainty.that.an.expression.will.ne |
| 346a0 | 76 65 72 20 62 65 20 61 6e 20 65 72 72 6f 72 2e 0a 20 20 20 20 20 20 20 20 49 6e 20 74 68 69 73 | ver.be.an.error..........In.this |
| 346c0 | 20 63 61 73 65 20 79 6f 75 20 63 61 6e 20 64 6f 20 74 68 69 73 3a 0a 20 20 20 20 20 20 3c 2f 70 | .case.you.can.do.this:.......</p |
| 346e0 | 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">< |
| 34700 | 73 70 61 6e 20 63 6c 61 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> |
| 34720 | 20 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 | .number.=.parseU64(<span.class=" |
| 34740 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 31 32 33 34 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | tok-str">"1234"</span> |
| 34760 | 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 | ,.<span.class="tok-number">10</s |
| 34780 | 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 | pan>).<span.class="tok-kw">catch |
| 347a0 | 3c 2f 73 70 61 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 |
| 347c0 | 65 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 | eachable</span>;</code></pre>... |
| 347e0 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 48 65 72 65 20 77 65 20 6b 6e 6f 77 20 66 6f 72 20 73 | ....<p>.......Here.we.know.for.s |
| 34800 | 75 72 65 20 74 68 61 74 20 22 31 32 33 34 22 20 77 69 6c 6c 20 70 61 72 73 65 20 73 75 63 63 65 | ure.that."1234".will.parse.succe |
| 34820 | 73 73 66 75 6c 6c 79 2e 20 53 6f 20 77 65 20 70 75 74 20 74 68 65 0a 20 20 20 20 20 20 3c 63 6f | ssfully..So.we.put.the.......<co |
| 34840 | 64 65 20 63 6c 61 73 73 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- |
| 34860 | 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 76 61 | kw">unreachable</span></code>.va |
| 34880 | 6c 75 65 20 6f 6e 20 74 68 65 20 72 69 67 68 74 20 68 61 6e 64 20 73 69 64 65 2e 20 3c 63 6f 64 | lue.on.the.right.hand.side..<cod |
| 348a0 | 65 20 63 6c 61 73 73 3d 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 |
| 348c0 | 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 67 65 6e | w">unreachable</span></code>.gen |
| 348e0 | 65 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 | erates.......a.panic.in.Debug.an |
| 34900 | 64 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 | d.ReleaseSafe.modes.and.undefine |
| 34920 | 64 20 62 65 68 61 76 69 6f 72 20 69 6e 20 52 65 6c 65 61 73 65 46 61 73 74 20 6d 6f 64 65 2e 20 | d.behavior.in.ReleaseFast.mode.. |
| 34940 | 53 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 | So,.while.we're.debugging.the... |
| 34960 | 20 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 | ....application,.if.there.<em>wa |
| 34980 | 73 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 | s</em>.a.surprise.error.here,.th |
| 349a0 | 65 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 | e.application.would.crash....... |
| 349c0 | 61 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 | appropriately........</p>....... |
| 349e0 | 3c 70 3e 0a 20 20 20 20 20 20 46 69 6e 61 6c 6c 79 2c 20 79 6f 75 20 6d 61 79 20 77 61 6e 74 20 | <p>.......Finally,.you.may.want. |
| 34a00 | 74 6f 20 74 61 6b 65 20 61 20 64 69 66 66 65 72 65 6e 74 20 61 63 74 69 6f 6e 20 66 6f 72 20 65 | to.take.a.different.action.for.e |
| 34a20 | 76 65 72 79 20 73 69 74 75 61 74 69 6f 6e 2e 20 46 6f 72 20 74 68 61 74 2c 20 77 65 20 63 6f 6d | very.situation..For.that,.we.com |
| 34a40 | 62 69 6e 65 0a 20 20 20 20 20 20 74 68 65 20 3c 61 20 68 72 65 66 3d 22 23 69 66 22 3e 69 66 3c | bine.......the.<a.href="#if">if< |
| 34a60 | 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 73 77 69 74 63 68 22 3e 73 77 69 74 63 68 | /a>.and.<a.href="#switch">switch |
| 34a80 | 3c 2f 61 3e 20 65 78 70 72 65 73 73 69 6f 6e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | </a>.expression:.......</p>..... |
| 34aa0 | 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 |
| 34ac0 | 6c 61 73 73 3d 22 74 6f 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 |
| 34ae0 | 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 64 6f 41 54 68 69 6e 67 3c 2f 73 70 61 6e 3e 28 73 74 72 | ass="tok-fn">doAThing</span>(str |
| 34b00 | 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 | :.[]<span.class="tok-type">u8</s |
| 34b20 | 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 |
| 34b40 | 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- |
| 34b60 | 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 70 61 72 73 65 55 36 34 28 73 74 72 2c 20 3c 73 70 | kw">if</span>.(parseU64(str,.<sp |
| 34b80 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 29 | an.class="tok-number">10</span>) |
| 34ba0 | 29 20 7c 6e 75 6d 62 65 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 64 6f 53 6f 6d 65 74 68 69 6e 67 | ).|number|.{.........doSomething |
| 34bc0 | 57 69 74 68 4e 75 6d 62 65 72 28 6e 75 6d 62 65 72 29 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 | WithNumber(number);.....}.<span. |
| 34be0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7c 65 72 72 7c | class="tok-kw">else</span>.|err| |
| 34c00 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 | .<span.class="tok-kw">switch</sp |
| 34c20 | 61 6e 3e 20 28 65 72 72 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | an>.(err).{.........<span.class= |
| 34c40 | 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 4f 76 65 72 66 6c 6f 77 20 3d | "tok-kw">error</span>.Overflow.= |
| 34c60 | 26 67 74 3b 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >.{.............<span.class=" |
| 34c80 | 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 68 61 6e 64 6c 65 20 6f 76 65 72 66 6c 6f 77 2e | tok-comment">//.handle.overflow. |
| 34ca0 | 2e 2e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 | ..</span>.........},.........<sp |
| 34cc0 | 61 6e 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 | an.class="tok-comment">//.we.pro |
| 34ce0 | 6d 69 73 65 20 74 68 61 74 20 49 6e 76 61 6c 69 64 43 68 61 72 20 77 6f 6e 27 74 20 68 61 70 70 | mise.that.InvalidChar.won't.happ |
| 34d00 | 65 6e 20 28 6f 72 20 63 72 61 73 68 20 69 6e 20 64 65 62 75 67 20 6d 6f 64 65 20 69 66 20 69 74 | en.(or.crash.in.debug.mode.if.it |
| 34d20 | 20 64 6f 65 73 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | .does)</span>.........<span.clas |
| 34d40 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 49 6e 76 61 6c 69 64 43 | s="tok-kw">error</span>.InvalidC |
| 34d60 | 68 61 72 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 | har.=>.<span.class="tok-kw">u |
| 34d80 | 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 | nreachable</span>,.....}.}</code |
| 34da0 | 3e 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 | ></pre>.......<h3.id="errdefer"> |
| 34dc0 | 65 72 72 64 65 66 65 72 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 | errdefer</h3>........<p>.......T |
| 34de0 | 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 6e 64 | he.other.component.to.error.hand |
| 34e00 | 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 20 20 | ling.is.defer.statements........ |
| 34e20 | 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 6c 20 | In.addition.to.an.unconditional. |
| 34e40 | 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 67 20 | <a.href="#defer">defer</a>,.Zig. |
| 34e60 | 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 61 73 | has.<code.class="zig"><span.clas |
| 34e80 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 64 65 66 65 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | s="tok-kw">errdefer</span></code |
| 34ea0 | 3e 2c 0a 20 20 20 20 20 20 77 68 69 63 68 20 65 76 61 6c 75 61 74 65 73 20 74 68 65 20 64 65 66 | >,.......which.evaluates.the.def |
| 34ec0 | 65 72 72 65 64 20 65 78 70 72 65 73 73 69 6f 6e 20 6f 6e 20 62 6c 6f 63 6b 20 65 78 69 74 20 70 | erred.expression.on.block.exit.p |
| 34ee0 | 61 74 68 20 69 66 20 61 6e 64 20 6f 6e 6c 79 20 69 66 0a 20 20 20 20 20 20 74 68 65 20 66 75 6e | ath.if.and.only.if.......the.fun |
| 34f00 | 63 74 69 6f 6e 20 72 65 74 75 72 6e 65 64 20 77 69 74 68 20 61 6e 20 65 72 72 6f 72 20 66 72 6f | ction.returned.with.an.error.fro |
| 34f20 | 6d 20 74 68 65 20 62 6c 6f 63 6b 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | m.the.block........</p>.......<p |
| 34f40 | 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>..... |
| 34f60 | 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 |
| 34f80 | 6c 61 73 73 3d 22 74 6f 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 |
| 34fa0 | 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 70 61 | ass="tok-fn">createFoo</span>(pa |
| 34fc0 | 72 61 6d 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c | ram:.<span.class="tok-type">i32< |
| 34fe0 | 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 3d 22 | /span>).!Foo.{.....<span.class=" |
| 35000 | 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 61 6e | tok-kw">const</span>.foo.=.<span |
| 35020 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 74 72 79 54 6f | .class="tok-kw">try</span>.tryTo |
| 35040 | 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 3d 22 | AllocateFoo();.....<span.class=" |
| 35060 | 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 6c 6f | tok-comment">//.now.we.have.allo |
| 35080 | 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 69 66 | cated.foo..we.need.to.free.it.if |
| 350a0 | 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 20 20 | .the.function.fails.</span>..... |
| 350c0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 62 75 74 | <span.class="tok-comment">//.but |
| 350e0 | 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 75 6e | .we.want.to.return.it.if.the.fun |
| 35100 | 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 61 6e | ction.succeeds.</span>.....<span |
| 35120 | 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 20 | .class="tok-kw">errdefer</span>. |
| 35140 | 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 20 63 | deallocateFoo(foo);......<span.c |
| 35160 | 6c 61 73 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 5f 62 | lass="tok-kw">const</span>.tmp_b |
| 35180 | 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 20 63 | uf.=.allocateTmpBuffer().<span.c |
| 351a0 | 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 |
| 351c0 | 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>.< |
| 351e0 | 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> |
| 35200 | 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 22 74 | .OutOfMemory;.....<span.class="t |
| 35220 | 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 79 20 | ok-comment">//.tmp_buf.is.truly. |
| 35240 | 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 6f 72 | a.temporary.resource,.and.we.for |
| 35260 | 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 6e 3e | .sure.want.to.clean.it.up</span> |
| 35280 | 0a 20 20 20 20 3c 73 70 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">/ |
| 352a0 | 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 70 65 | /.before.this.block.leaves.scope |
| 352c0 | 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" |
| 352e0 | 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 66 65 | >defer</span>.deallocateTmpBuffe |
| 35300 | 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 74 6f | r(tmp_buf);......<span.class="to |
| 35320 | 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 70 61 | k-kw">if</span>.(param.>.<spa |
| 35340 | 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 6e 3e | n.class="tok-number">1337</span> |
| 35360 | 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 | ).<span.class="tok-kw">return</s |
| 35380 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c | pan>.<span.class="tok-kw">error< |
| 353a0 | 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 6e 20 | /span>.InvalidParam;......<span. |
| 353c0 | 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 65 20 | class="tok-comment">//.here.the. |
| 353e0 | 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 27 72 | errdefer.will.not.run.since.we'r |
| 35400 | 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 75 6e | e.returning.success.from.the.fun |
| 35420 | 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 22 74 | ction.</span>.....<span.class="t |
| 35440 | 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 69 6c | ok-comment">//.but.the.defer.wil |
| 35460 | 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 22 74 | l.run!</span>.....<span.class="t |
| 35480 | 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 6f 64 | ok-kw">return</span>.foo;.}</cod |
| 354a0 | 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 65 61 | e></pre>.......<p>.......The.nea |
| 354c0 | 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 20 67 | t.thing.about.this.is.that.you.g |
| 354e0 | 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 75 74 | et.robust.error.handling.without |
| 35500 | 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 74 69 | .......the.verbosity.and.cogniti |
| 35520 | 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 73 75 | ve.overhead.of.trying.to.make.su |
| 35540 | 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 76 65 | re.every.exit.path.......is.cove |
| 35560 | 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 61 6c | red..The.deallocation.code.is.al |
| 35580 | 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 6c 6f | ways.directly.following.the.allo |
| 355a0 | 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 0a 20 | cation.code........</p>......... |
| 355c0 | 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 65 72 | .....<p>.......A.couple.of.other |
| 355e0 | 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 0a 20 | .tidbits.about.error.handling:.. |
| 35600 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 | .....</p>.......<ul>.........<li |
| 35620 | 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 65 78 | >These.primitives.give.enough.ex |
| 35640 | 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 65 6c | pressiveness.that.it's.completel |
| 35660 | 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 65 20 | y.practical.............to.have. |
| 35680 | 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 62 65 | failing.to.check.for.an.error.be |
| 356a0 | 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 79 20 | .a.compile.error..If.you.really. |
| 356c0 | 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 20 65 | want.............to.ignore.the.e |
| 356e0 | 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 22 7a | rror,.you.can.add.<code.class="z |
| 35700 | 69 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 3c 2f | ig"><span.class="tok-kw">catch</ |
| 35720 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 | span>.<span.class="tok-kw">unrea |
| 35740 | 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 20 20 | chable</span></code>.and........ |
| 35760 | 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 63 72 | .....get.the.added.benefit.of.cr |
| 35780 | 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 65 20 | ashing.in.Debug.and.ReleaseSafe. |
| 357a0 | 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 72 6f | modes.if.your.assumption.was.wro |
| 357c0 | 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 0a 20 | ng..........</li>.........<li>.. |
| 357e0 | 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 20 65 | .........Since.Zig.understands.e |
| 35800 | 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 62 72 | rror.types,.it.can.pre-weight.br |
| 35820 | 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 72 72 | anches.in.favor.of...........err |
| 35840 | 6f 72 73 20 6e 6f 74 20 6f 63 63 75 72 69 6e 67 2e 20 4a 75 73 74 20 61 20 73 6d 61 6c 6c 20 6f | ors.not.occuring..Just.a.small.o |
| 35860 | 70 74 69 6d 69 7a 61 74 69 6f 6e 20 62 65 6e 65 66 69 74 20 74 68 61 74 20 69 73 20 6e 6f 74 20 | ptimization.benefit.that.is.not. |
| 35880 | 61 76 61 69 6c 61 62 6c 65 0a 20 20 20 20 20 20 20 20 20 20 69 6e 20 6f 74 68 65 72 20 6c 61 6e | available...........in.other.lan |
| 358a0 | 67 75 61 67 65 73 2e 0a 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c | guages..........</li>.......</ul |
| 358c0 | 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 |
| 358e0 | 3e 3c 61 20 68 72 65 66 3d 22 23 64 65 66 65 72 22 3e 64 65 66 65 72 3c 2f 61 3e 3c 2f 6c 69 3e | ><a.href="#defer">defer</a></li> |
| 35900 | 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 69 66 22 3e 69 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c | .<li><a.href="#if">if</a></li>.< |
| 35920 | 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 77 69 74 63 68 22 3e 73 77 69 74 63 68 3c 2f 61 3e 3c | li><a.href="#switch">switch</a>< |
| 35940 | 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 0a 20 20 20 20 20 20 3c 70 3e 41 6e 20 65 72 72 6f 72 20 75 | /li>.</ul>.........<p>An.error.u |
| 35960 | 6e 69 6f 6e 20 69 73 20 63 72 65 61 74 65 64 20 77 69 74 68 20 74 68 65 20 3c 63 6f 64 65 20 63 | nion.is.created.with.the.<code.c |
| 35980 | 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 65 72 61 | lass="zig">!</code>.binary.opera |
| 359a0 | 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 65 2d 74 | tor........You.can.use.compile-t |
| 359c0 | 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 63 68 69 | ime.reflection.to.access.the.chi |
| 359e0 | 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 3e 0a 20 | ld.type.of.an.error.union:</p>.. |
| 35a00 | 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 |
| 35a20 | 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 |
| 35a40 | 61 73 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 |
| 35a60 | 20 3d 20 3c 73 70 61 6e 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 |
| 35a80 | 70 6f 72 74 3c 2f 73 70 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 |
| 35aa0 | 22 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. |
| 35ac0 | 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 |
| 35ae0 | 73 74 3c 2f 73 70 61 6e 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"> |
| 35b00 | 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 61 6e 3e 20 7b | "error.union"</span>.{ |
| 35b20 | 0a 20 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 |
| 35b40 | 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 6b 77 22 3e 65 | pan>.foo:.<span.class="tok-kw">e |
| 35b60 | 72 72 6f 72 3c 2f 73 70 61 6e 3e 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | rror</span>!<span.class="tok-typ |
| 35b80 | 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 |
| 35ba0 | 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 | -null">undefined</span>;......<s |
| 35bc0 | 70 61 6e 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 6d 70 6c 69 | pan.class="tok-comment">//.Impli |
| 35be0 | 63 69 74 6c 79 20 63 61 73 74 20 66 72 6f 6d 20 63 68 69 6c 64 20 74 79 70 65 20 6f 66 20 61 6e | citly.cast.from.child.type.of.an |
| 35c00 | 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 3c | .error.union:</span>.....foo.=.< |
| 35c20 | 73 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 |
| 35c40 | 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 | an>;......<span.class="tok-comme |
| 35c60 | 6e 74 22 3e 2f 2f 20 49 6d 70 6c 69 63 69 74 6c 79 20 63 61 73 74 20 66 72 6f 6d 20 61 6e 20 65 | nt">//.Implicitly.cast.from.an.e |
| 35c80 | 72 72 6f 72 20 73 65 74 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 66 6f 6f 20 3d 20 3c 73 70 61 6e | rror.set:</span>.....foo.=.<span |
| 35ca0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 53 6f 6d | .class="tok-kw">error</span>.Som |
| 35cc0 | 65 45 72 72 6f 72 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f | eError;......<span.class="tok-co |
| 35ce0 | 6d 6d 65 6e 74 22 3e 2f 2f 20 55 73 65 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 72 65 66 6c 65 | mment">//.Use.compile-time.refle |
| 35d00 | 63 74 69 6f 6e 20 74 6f 20 61 63 63 65 73 73 20 74 68 65 20 70 61 79 6c 6f 61 64 20 74 79 70 65 | ction.to.access.the.payload.type |
| 35d20 | 20 6f 66 20 61 6e 20 65 72 72 6f 72 20 75 6e 69 6f 6e 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c | .of.an.error.union:</span>.....< |
| 35d40 | 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 |
| 35d60 | 61 6e 3e 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | an>.assert(<span.class="tok-buil |
| 35d80 | 74 69 6e 22 3e 40 74 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 66 6f 6f 29 2e 50 61 79 6c 6f 61 64 | tin">@typeOf</span>(foo).Payload |
| 35da0 | 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f | .==.<span.class="tok-type">i32</ |
| 35dc0 | 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f | span>);......<span.class="tok-co |
| 35de0 | 6d 6d 65 6e 74 22 3e 2f 2f 20 55 73 65 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 72 65 66 6c 65 | mment">//.Use.compile-time.refle |
| 35e00 | 63 74 69 6f 6e 20 74 6f 20 61 63 63 65 73 73 20 74 68 65 20 65 72 72 6f 72 20 73 65 74 20 74 79 | ction.to.access.the.error.set.ty |
| 35e20 | 70 65 20 6f 66 20 61 6e 20 65 72 72 6f 72 20 75 6e 69 6f 6e 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 | pe.of.an.error.union:</span>.... |
| 35e40 | 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</ |
| 35e60 | 73 70 61 6e 3e 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | span>.assert(<span.class="tok-bu |
| 35e80 | 69 6c 74 69 6e 22 3e 40 74 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 66 6f 6f 29 2e 45 72 72 6f 72 | iltin">@typeOf</span>(foo).Error |
| 35ea0 | 53 65 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f | Set.==.<span.class="tok-kw">erro |
| 35ec0 | 72 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 | r</span>);.}</code></pre><pre><c |
| 35ee0 | 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 |
| 35f00 | 74 2e 7a 69 67 0a 54 65 73 74 20 31 2f 31 20 65 72 72 6f 72 20 75 6e 69 6f 6e 2e 2e 2e 4f 4b 0a | t.zig.Test.1/1.error.union...OK. |
| 35f20 | 41 6c 6c 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 | All.tests.passed..</code></pre>. |
| 35f40 | 0a 20 20 20 20 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 | .......<h3.id="Merging-Error-Set |
| 35f60 | 73 22 3e 4d 65 72 67 69 6e 67 20 45 72 72 6f 72 20 53 65 74 73 3c 2f 68 33 3e 0a 0a 20 20 20 20 | s">Merging.Error.Sets</h3>...... |
| 35f80 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 55 73 65 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | ..<p>.......Use.the.<code.class= |
| 35fa0 | 22 7a 69 67 22 3e 7c 7c 3c 2f 63 6f 64 65 3e 20 6f 70 65 72 61 74 6f 72 20 74 6f 20 6d 65 72 67 | "zig">||</code>.operator.to.merg |
| 35fc0 | 65 20 74 77 6f 20 65 72 72 6f 72 20 73 65 74 73 20 74 6f 67 65 74 68 65 72 2e 20 54 68 65 20 72 | e.two.error.sets.together..The.r |
| 35fe0 | 65 73 75 6c 74 69 6e 67 0a 20 20 20 20 20 20 65 72 72 6f 72 20 73 65 74 20 63 6f 6e 74 61 69 6e | esulting.......error.set.contain |
| 36000 | 73 20 74 68 65 20 65 72 72 6f 72 73 20 6f 66 20 62 6f 74 68 20 65 72 72 6f 72 20 73 65 74 73 2e | s.the.errors.of.both.error.sets. |
| 36020 | 20 44 6f 63 20 63 6f 6d 6d 65 6e 74 73 20 66 72 6f 6d 20 74 68 65 20 6c 65 66 74 2d 68 61 6e 64 | .Doc.comments.from.the.left-hand |
| 36040 | 0a 20 20 20 20 20 20 73 69 64 65 20 6f 76 65 72 72 69 64 65 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 | .......side.override.doc.comment |
| 36060 | 73 20 66 72 6f 6d 20 74 68 65 20 72 69 67 68 74 2d 68 61 6e 64 20 73 69 64 65 2e 20 49 6e 20 74 | s.from.the.right-hand.side..In.t |
| 36080 | 68 69 73 20 65 78 61 6d 70 6c 65 2c 20 74 68 65 20 64 6f 63 0a 20 20 20 20 20 20 63 6f 6d 6d 65 | his.example,.the.doc.......comme |
| 360a0 | 6e 74 73 20 66 6f 72 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 43 2e 50 61 74 68 | nts.for.<code.class="zig">C.Path |
| 360c0 | 4e 6f 74 46 6f 75 6e 64 3c 2f 63 6f 64 65 3e 20 69 73 20 3c 63 6f 64 65 3e 41 20 64 6f 63 20 63 | NotFound</code>.is.<code>A.doc.c |
| 360e0 | 6f 6d 6d 65 6e 74 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | omment</code>........</p>....... |
| 36100 | 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 69 73 20 65 73 70 65 63 69 61 6c 6c 79 20 75 73 65 | <p>.......This.is.especially.use |
| 36120 | 66 75 6c 20 66 6f 72 20 66 75 6e 63 74 69 6f 6e 73 20 77 68 69 63 68 20 72 65 74 75 72 6e 20 64 | ful.for.functions.which.return.d |
| 36140 | 69 66 66 65 72 65 6e 74 20 65 72 72 6f 72 20 73 65 74 73 20 64 65 70 65 6e 64 69 6e 67 0a 20 20 | ifferent.error.sets.depending... |
| 36160 | 20 20 20 20 6f 6e 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 | ....on.<a.href="#comptime">compt |
| 36180 | 69 6d 65 3c 2f 61 3e 20 62 72 61 6e 63 68 65 73 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 74 | ime</a>.branches..For.example,.t |
| 361a0 | 68 65 20 5a 69 67 20 73 74 61 6e 64 61 72 64 20 6c 69 62 72 61 72 79 20 75 73 65 73 0a 20 20 20 | he.Zig.standard.library.uses.... |
| 361c0 | 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 4c 69 6e 75 78 46 69 6c 65 4f 70 | ...<code.class="zig">LinuxFileOp |
| 361e0 | 65 6e 45 72 72 6f 72 20 7c 7c 20 57 69 6e 64 6f 77 73 46 69 6c 65 4f 70 65 6e 45 72 72 6f 72 3c | enError.||.WindowsFileOpenError< |
| 36200 | 2f 63 6f 64 65 3e 20 66 6f 72 20 74 68 65 20 65 72 72 6f 72 20 73 65 74 20 6f 66 20 6f 70 65 6e | /code>.for.the.error.set.of.open |
| 36220 | 69 6e 67 0a 20 20 20 20 20 20 66 69 6c 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | ing.......files........</p>..... |
| 36240 | 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 |
| 36260 | 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 |
| 36280 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 41 20 3d 20 3c 73 70 61 6e | ="tok-kw">const</span>.A.=.<span |
| 362a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 7b 0a 20 20 | .class="tok-kw">error</span>{... |
| 362c0 | 20 20 4e 6f 74 44 69 72 2c 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ..NotDir,......<span.class="tok- |
| 362e0 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 41 20 64 6f 63 20 63 6f 6d 6d 65 6e 74 3c 2f 73 70 61 6e | comment">///.A.doc.comment</span |
| 36300 | 3e 0a 20 20 20 20 50 61 74 68 4e 6f 74 46 6f 75 6e 64 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 | >.....PathNotFound,.};.<span.cla |
| 36320 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 42 20 3d 20 3c 73 70 | ss="tok-kw">const</span>.B.=.<sp |
| 36340 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 7b 0a | an.class="tok-kw">error</span>{. |
| 36360 | 20 20 20 20 4f 75 74 4f 66 4d 65 6d 6f 72 79 2c 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ....OutOfMemory,......<span.clas |
| 36380 | 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 2f 20 42 20 64 6f 63 20 63 6f 6d 6d 65 6e | s="tok-comment">///.B.doc.commen |
| 363a0 | 74 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 50 61 74 68 4e 6f 74 46 6f 75 6e 64 2c 0a 7d 3b 0a 0a 3c | t</span>.....PathNotFound,.};..< |
| 363c0 | 73 70 61 6e 20 63 6c 61 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> |
| 363e0 | 20 43 20 3d 20 41 20 7c 7c 20 42 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | .C.=.A.||.B;..<span.class="tok-k |
| 36400 | 77 22 3e 66 6e 3c 2f 73 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 |
| 36420 | 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 29 20 43 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ">foo</span>().C!<span.class="to |
| 36440 | 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. |
| 36460 | 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 |
| 36480 | 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 4e | an.class="tok-kw">error</span>.N |
| 364a0 | 6f 74 44 69 72 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 | otDir;.}..<span.class="tok-kw">t |
| 364c0 | 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" |
| 364e0 | 3e 26 71 75 6f 74 3b 6d 65 72 67 65 20 65 72 72 6f 72 20 73 65 74 73 26 71 75 6f 74 3b 3c 2f 73 | >"merge.error.sets"</s |
| 36500 | 70 61 6e 3e 20 7b 0a 20 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"> |
| 36520 | 69 66 3c 2f 73 70 61 6e 3e 20 28 66 6f 6f 28 29 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 | if</span>.(foo()).{.........<spa |
| 36540 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 61 6e 69 63 3c 2f 73 70 | n.class="tok-builtin">@panic</sp |
| 36560 | 61 6e 3e 28 3c 73 70 61 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">" |
| 36580 | 75 6e 65 78 70 65 63 74 65 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 20 | unexpected"</span>);.....}. |
| 365a0 | 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> |
| 365c0 | 20 7c 65 72 72 7c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 | .|err|.<span.class="tok-kw">swit |
| 365e0 | 63 68 3c 2f 73 70 61 6e 3e 20 28 65 72 72 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | ch</span>.(err).{.........<span. |
| 36600 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 4f 75 74 4f | class="tok-kw">error</span>.OutO |
| 36620 | 66 4d 65 6d 6f 72 79 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | fMemory.=>.<span.class="tok-b |
| 36640 | 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 |
| 36660 | 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 |
| 36680 | 74 3b 3c 2f 73 70 61 6e 3e 29 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | t;</span>),.........<span.class= |
| 366a0 | 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 50 61 74 68 4e 6f 74 46 6f 75 | "tok-kw">error</span>.PathNotFou |
| 366c0 | 6e 64 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | nd.=>.<span.class="tok-builti |
| 366e0 | 6e 22 3e 40 70 61 6e 69 63 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | n">@panic</span>(<span.class="to |
| 36700 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 75 6e 65 78 70 65 63 74 65 64 26 71 75 6f 74 3b 3c 2f 73 | k-str">"unexpected"</s |
| 36720 | 70 61 6e 3e 29 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | pan>),.........<span.class="tok- |
| 36740 | 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 4e 6f 74 44 69 72 20 3d 26 67 74 3b 20 7b 7d | kw">error</span>.NotDir.=>.{} |
| 36760 | 2c 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 | ,.....}.}</code></pre><pre><code |
| 36780 | 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 |
| 367a0 | 69 67 0a 54 65 73 74 20 31 2f 31 20 6d 65 72 67 65 20 65 72 72 6f 72 20 73 65 74 73 2e 2e 2e 4f | ig.Test.1/1.merge.error.sets...O |
| 367c0 | 4b 0a 41 6c 6c 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 | K.All.tests.passed..</code></pre |
| 367e0 | 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 64 | >...............<h3.id="Inferred |
| 36800 | 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 53 65 74 73 | -Error-Sets">Inferred.Error.Sets |
| 36820 | 3c 2f 68 33 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 6d | </h3>........<p>.......Because.m |
| 36840 | 61 6e 79 20 66 75 6e 63 74 69 6f 6e 73 20 69 6e 20 5a 69 67 20 72 65 74 75 72 6e 20 61 20 70 6f | any.functions.in.Zig.return.a.po |
| 36860 | 73 73 69 62 6c 65 20 65 72 72 6f 72 2c 20 5a 69 67 20 73 75 70 70 6f 72 74 73 20 69 6e 66 65 72 | ssible.error,.Zig.supports.infer |
| 36880 | 72 69 6e 67 20 74 68 65 20 65 72 72 6f 72 20 73 65 74 2e 0a 20 20 20 20 20 20 54 6f 20 69 6e 66 | ring.the.error.set........To.inf |
| 368a0 | 65 72 20 74 68 65 20 65 72 72 6f 72 20 73 65 74 20 66 6f 72 20 61 20 66 75 6e 63 74 69 6f 6e 2c | er.the.error.set.for.a.function, |
| 368c0 | 20 75 73 65 20 74 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 | .use.this.syntax:.......</p>.<p. |
| 368e0 | 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 |
| 36900 | 6f 64 65 20 63 6c 61 73 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 |
| 36920 | 2d 63 6f 6d 6d 65 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 | -comment">//.With.an.inferred.er |
| 36940 | 72 6f 72 20 73 65 74 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ror.set</span>.<span.class="tok- |
| 36960 | 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- |
| 36980 | 6b 77 22 3e 66 6e 3c 2f 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 |
| 369a0 | 6e 22 3e 61 64 64 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 | n">add_inferred</span>(<span.cla |
| 369c0 | 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:.< |
| 369e0 | 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 |
| 36a00 | 3e 2c 20 61 3a 20 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 | >,.a:.T,.b:.T).!T.{.....<span.cl |
| 36a20 | 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 72 3a 20 | ass="tok-kw">var</span>.answer:. |
| 36a40 | 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 64 65 66 | T.=.<span.class="tok-null">undef |
| 36a60 | 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ined</span>;.....<span.class="to |
| 36a80 | 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= |
| 36aa0 | 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | "tok-kw">if</span>.(<span.class= |
| 36ac0 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f | "tok-builtin">@addWithOverflow</ |
| 36ae0 | 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 3c 73 70 | span>(T,.a,.b,.&answer)).<sp |
| 36b00 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 4f | an.class="tok-kw">error</span>.O |
| 36b20 | 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 65 6c 73 | verflow.<span.class="tok-kw">els |
| 36b40 | 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 73 73 3d | e</span>.answer;.}..<span.class= |
| 36b60 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 57 69 74 68 20 61 6e 20 65 78 70 6c 69 63 69 | "tok-comment">//.With.an.explici |
| 36b80 | 74 20 65 72 72 6f 72 20 73 65 74 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | t.error.set</span>.<span.class=" |
| 36ba0 | 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=" |
| 36bc0 | 74 6f 6b 2d 6b 77 22 3e 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 |
| 36be0 | 6f 6b 2d 66 6e 22 3e 61 64 64 5f 65 78 70 6c 69 63 69 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e | ok-fn">add_explicit</span>(<span |
| 36c00 | 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>. |
| 36c20 | 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</ |
| 36c40 | 73 70 61 6e 3e 2c 20 61 3a 20 54 2c 20 62 3a 20 54 29 20 45 72 72 6f 72 21 54 20 7b 0a 20 20 20 | span>,.a:.T,.b:.T).Error!T.{.... |
| 36c60 | 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> |
| 36c80 | 20 61 6e 73 77 65 72 3a 20 54 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | .answer:.T.=.<span.class="tok-nu |
| 36ca0 | 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. |
| 36cc0 | 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 |
| 36ce0 | 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 70 | an.class="tok-kw">if</span>.(<sp |
| 36d00 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 64 64 57 69 74 68 4f | an.class="tok-builtin">@addWithO |
| 36d20 | 76 65 72 66 6c 6f 77 3c 2f 73 70 61 6e 3e 28 54 2c 20 61 2c 20 62 2c 20 26 61 6d 70 3b 61 6e 73 | verflow</span>(T,.a,.b,.&ans |
| 36d40 | 77 65 72 29 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 | wer)).<span.class="tok-kw">error |
| 36d60 | 3c 2f 73 70 61 6e 3e 2e 4f 76 65 72 66 6c 6f 77 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | </span>.Overflow.<span.class="to |
| 36d80 | 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 61 6e 73 77 65 72 3b 0a 7d 0a 0a 3c 73 70 | k-kw">else</span>.answer;.}..<sp |
| 36da0 | 61 6e 20 63 6c 61 73 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 | an.class="tok-kw">const</span>.E |
| 36dc0 | 72 72 6f 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f | rror.=.<span.class="tok-kw">erro |
| 36de0 | 72 3c 2f 73 70 61 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 | r</span>.{.....Overflow,.};..<sp |
| 36e00 | 61 6e 20 63 6c 61 73 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 |
| 36e20 | 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">@ |
| 36e40 | 69 6d 70 6f 72 74 3c 2f 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 |
| 36e60 | 74 72 22 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 |
| 36e80 | 70 61 6e 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>.< |
| 36ea0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 6e 66 65 72 | span.class="tok-str">"infer |
| 36ec0 | 72 65 64 20 65 72 72 6f 72 20 73 65 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | red.error.set"</span>.{.... |
| 36ee0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 | .<span.class="tok-kw">if</span>. |
| 36f00 | 28 61 64 64 5f 69 6e 66 65 72 72 65 64 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | (add_inferred(<span.class="tok-t |
| 36f20 | 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 |
| 36f40 | 2d 6e 75 6d 62 65 72 22 3e 32 35 35 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | -number">255</span>,.<span.class |
| 36f60 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 29 20 7c 5f 7c 20 3c 73 70 | ="tok-number">1</span>)).|_|.<sp |
| 36f80 | 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 |
| 36fa0 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f | pan>.<span.class="tok-kw">else</ |
| 36fc0 | 73 70 61 6e 3e 20 7c 65 72 72 7c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | span>.|err|.<span.class="tok-kw" |
| 36fe0 | 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 65 72 72 29 20 7b 0a 20 20 20 20 20 20 20 20 3c | >switch</span>.(err).{.........< |
| 37000 | 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> |
| 37020 | 2e 4f 76 65 72 66 6c 6f 77 20 3d 26 67 74 3b 20 7b 7d 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .Overflow.=>.{},.<span.class= |
| 37040 | 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6f 6b 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 7d | "tok-comment">//.ok</span>.....} |
| 37060 | 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= |
| 37080 | 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 | "shell">$.zig.test.test.zig.Test |
| 370a0 | 20 31 2f 31 20 69 6e 66 65 72 72 65 64 20 65 72 72 6f 72 20 73 65 74 2e 2e 2e 4f 4b 0a 41 6c 6c | .1/1.inferred.error.set...OK.All |
| 370c0 | 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>.... |
| 370e0 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 65 6e 20 61 20 66 75 6e 63 74 69 6f 6e 20 68 61 | ....<p>.......When.a.function.ha |
| 37100 | 73 20 61 6e 20 69 6e 66 65 72 72 65 64 20 65 72 72 6f 72 20 73 65 74 2c 20 74 68 61 74 20 66 75 | s.an.inferred.error.set,.that.fu |
| 37120 | 6e 63 74 69 6f 6e 20 62 65 63 6f 6d 65 73 20 67 65 6e 65 72 69 63 20 61 6e 64 20 74 68 75 73 20 | nction.becomes.generic.and.thus. |
| 37140 | 69 74 20 62 65 63 6f 6d 65 73 0a 20 20 20 20 20 20 74 72 69 63 6b 69 65 72 20 74 6f 20 64 6f 20 | it.becomes.......trickier.to.do. |
| 37160 | 63 65 72 74 61 69 6e 20 74 68 69 6e 67 73 20 77 69 74 68 20 69 74 2c 20 73 75 63 68 20 61 73 20 | certain.things.with.it,.such.as. |
| 37180 | 6f 62 74 61 69 6e 20 61 20 66 75 6e 63 74 69 6f 6e 20 70 6f 69 6e 74 65 72 2c 20 6f 72 20 68 61 | obtain.a.function.pointer,.or.ha |
| 371a0 | 76 65 20 61 6e 20 65 72 72 6f 72 0a 20 20 20 20 20 20 73 65 74 20 74 68 61 74 20 69 73 20 63 6f | ve.an.error.......set.that.is.co |
| 371c0 | 6e 73 69 73 74 65 6e 74 20 61 63 72 6f 73 73 20 64 69 66 66 65 72 65 6e 74 20 62 75 69 6c 64 20 | nsistent.across.different.build. |
| 371e0 | 74 61 72 67 65 74 73 2e 20 41 64 64 69 74 69 6f 6e 61 6c 6c 79 2c 20 69 6e 66 65 72 72 65 64 20 | targets..Additionally,.inferred. |
| 37200 | 65 72 72 6f 72 20 73 65 74 73 0a 20 20 20 20 20 20 61 72 65 20 69 6e 63 6f 6d 70 61 74 69 62 6c | error.sets.......are.incompatibl |
| 37220 | 65 20 77 69 74 68 20 72 65 63 75 72 73 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | e.with.recursion........</p>.... |
| 37240 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 74 68 65 73 65 20 73 69 74 75 61 74 69 6f 6e 73 | ...<p>.......In.these.situations |
| 37260 | 2c 20 69 74 20 69 73 20 72 65 63 6f 6d 6d 65 6e 64 65 64 20 74 6f 20 75 73 65 20 61 6e 20 65 78 | ,.it.is.recommended.to.use.an.ex |
| 37280 | 70 6c 69 63 69 74 20 65 72 72 6f 72 20 73 65 74 2e 20 59 6f 75 20 63 61 6e 20 67 65 6e 65 72 61 | plicit.error.set..You.can.genera |
| 372a0 | 6c 6c 79 20 73 74 61 72 74 0a 20 20 20 20 20 20 77 69 74 68 20 61 6e 20 65 6d 70 74 79 20 65 72 | lly.start.......with.an.empty.er |
| 372c0 | 72 6f 72 20 73 65 74 20 61 6e 64 20 6c 65 74 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 73 20 67 | ror.set.and.let.compile.errors.g |
| 372e0 | 75 69 64 65 20 79 6f 75 20 74 6f 77 61 72 64 20 63 6f 6d 70 6c 65 74 69 6e 67 20 74 68 65 20 73 | uide.you.toward.completing.the.s |
| 37300 | 65 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 | et........</p>.......<p>.......T |
| 37320 | 68 65 73 65 20 6c 69 6d 69 74 61 74 69 6f 6e 73 20 6d 61 79 20 62 65 20 6f 76 65 72 63 6f 6d 65 | hese.limitations.may.be.overcome |
| 37340 | 20 69 6e 20 61 20 66 75 74 75 72 65 20 76 65 72 73 69 6f 6e 20 6f 66 20 5a 69 67 2e 0a 20 20 20 | .in.a.future.version.of.Zig..... |
| 37360 | 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 32 20 | ...</p>.....................<h2. |
| 37380 | 69 64 3d 22 45 72 72 6f 72 2d 52 65 74 75 72 6e 2d 54 72 61 63 65 73 22 3e 45 72 72 6f 72 20 52 | id="Error-Return-Traces">Error.R |
| 373a0 | 65 74 75 72 6e 20 54 72 61 63 65 73 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | eturn.Traces</h2>........<p>.... |
| 373c0 | 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 6c 20 | ...Error.Return.Traces.show.all. |
| 373e0 | 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 20 65 | the.points.in.the.code.that.an.e |
| 37400 | 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 6e 67 | rror.was.returned.to.the.calling |
| 37420 | 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 69 63 | .function..This.makes.it.practic |
| 37440 | 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 61 3e | al.to.use.<a.href="#try">try</a> |
| 37460 | 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 61 62 | .everywhere.and.then.still.be.ab |
| 37480 | 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 20 65 | le.to.know.what.happened.if.an.e |
| 374a0 | 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 77 61 | rror.ends.up.bubbling.all.the.wa |
| 374c0 | 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 20 20 | y.out.of.your.application....... |
| 374e0 | 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 |
| 37500 | 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">< |
| 37520 | 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>.< |
| 37540 | 73 70 61 6e 20 63 6c 61 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 |
| 37560 | 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>() |
| 37580 | 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 |
| 375a0 | 70 61 6e 3e 20 7b 0a 20 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"> |
| 375c0 | 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 6b 2d | try</span>.foo(<span.class="tok- |
| 375e0 | 6e 75 6d 62 65 72 22 3e 31 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 | number">12</span>);.}..<span.cla |
| 37600 | 73 73 3d 22 74 6f 6b 2d 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 |
| 37620 | 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 78 3a 20 3c 73 70 61 6e 20 63 | s="tok-fn">foo</span>(x:.<span.c |
| 37640 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 21 3c 73 70 | lass="tok-type">i32</span>).!<sp |
| 37660 | 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>. |
| 37680 | 7b 0a 20 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 |
| 376a0 | 70 61 6e 3e 20 28 78 20 26 67 74 3b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | pan>.(x.>=.<span.class="tok-n |
| 376c0 | 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 61 6e | umber">5</span>).{.........<span |
| 376e0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 62 61 72 28 29 | .class="tok-kw">try</span>.bar() |
| 37700 | 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 |
| 37720 | 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | e</span>.{.........<span.class=" |
| 37740 | 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 20 20 | tok-kw">try</span>.bang2();..... |
| 37760 | 7d 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 | }.}..<span.class="tok-kw">fn</sp |
| 37780 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 62 61 72 3c 2f 73 70 | an>.<span.class="tok-fn">bar</sp |
| 377a0 | 61 6e 3e 28 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f | an>().!<span.class="tok-type">vo |
| 377c0 | 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 |
| 377e0 | 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 20 20 | -kw">if</span>.(baz()).{........ |
| 37800 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e | .<span.class="tok-kw">try</span> |
| 37820 | 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 6b 2d | .quux();.....}.<span.class="tok- |
| 37840 | 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7c 65 72 72 7c 20 3c 73 70 61 6e 20 63 6c 61 73 | kw">else</span>.|err|.<span.clas |
| 37860 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 65 72 72 29 20 7b | s="tok-kw">switch</span>.(err).{ |
| 37880 | 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 | .........<span.class="tok-kw">er |
| 378a0 | 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 3c 73 | ror</span>.FileNotFound.=>.<s |
| 378c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 68 65 | pan.class="tok-kw">try</span>.he |
| 378e0 | 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 6b 2d | llo(),.........<span.class="tok- |
| 37900 | 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 73 | kw">else</span>.=>.<span.clas |
| 37920 | 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 29 2c | s="tok-kw">try</span>.another(), |
| 37940 | 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 66 | .....}.}..<span.class="tok-kw">f |
| 37960 | 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 62 61 | n</span>.<span.class="tok-fn">ba |
| 37980 | 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 79 70 | z</span>().!<span.class="tok-typ |
| 379a0 | 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 |
| 379c0 | 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 7d 0a | ="tok-kw">try</span>.bang1();.}. |
| 379e0 | 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>. |
| 37a00 | 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 6e 3e | <span.class="tok-fn">quux</span> |
| 37a20 | 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< |
| 37a40 | 2f 73 70 61 6e 3e 20 7b 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 |
| 37a60 | 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 20 63 | ">try</span>.bang2();.}..<span.c |
| 37a80 | 6c 61 73 73 3d 22 74 6f 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 |
| 37aa0 | 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 73 70 | ass="tok-fn">hello</span>().!<sp |
| 37ac0 | 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>. |
| 37ae0 | 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f | {.....<span.class="tok-kw">try</ |
| 37b00 | 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 22 74 | span>.bang2();.}..<span.class="t |
| 37b20 | 6f 6b 2d 6b 77 22 3e 66 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 |
| 37b40 | 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 63 6c | k-fn">another</span>().!<span.cl |
| 37b60 | 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>.{.... |
| 37b80 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e | .<span.class="tok-kw">try</span> |
| 37ba0 | 20 62 61 6e 67 31 28 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .bang1();.}..<span.class="tok-kw |
| 37bc0 | 22 3e 66 6e 3c 2f 73 70 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" |
| 37be0 | 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 74 6f | >bang1</span>().!<span.class="to |
| 37c00 | 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. |
| 37c20 | 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 |
| 37c40 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 46 | an.class="tok-kw">error</span>.F |
| 37c60 | 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 6f 6b | ileNotFound;.}..<span.class="tok |
| 37c80 | 2d 6b 77 22 3e 66 6e 3c 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- |
| 37ca0 | 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 73 3d | fn">bang2</span>().!<span.class= |
| 37cc0 | 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 |
| 37ce0 | 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>. |
| 37d00 | 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 |
| 37d20 | 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 70 72 | >.PermissionDenied;.}</code></pr |
| 37d40 | 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 |
| 37d60 | 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 72 72 | .build-exe.test.zig.$../test.err |
| 37d80 | 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 73 73 | or:.PermissionDenied.<span.class |
| 37da0 | 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 | ="t37_1">/home/andy/dev/zig/docg |
| 37dc0 | 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 33 39 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 | en_tmp/test.zig:39:5</span>:.<sp |
| 37de0 | 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 62 63 39 20 69 6e 20 3f 3f 3f 20 | an.class="t2_0">0x222bc9.in.???. |
| 37e00 | 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 65 72 72 6f 72 2e 46 | (test)</span>.....return.error.F |
| 37e20 | 69 6c 65 4e 6f 74 46 6f 75 6e 64 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 | ileNotFound;.....<span.class="t3 |
| 37e40 | 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 |
| 37e60 | 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f | ">/home/andy/dev/zig/docgen_tmp/ |
| 37e80 | 74 65 73 74 2e 7a 69 67 3a 32 33 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | test.zig:23:5</span>:.<span.clas |
| 37ea0 | 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 61 61 64 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c | s="t2_0">0x222aad.in.???.(test)< |
| 37ec0 | 2f 73 70 61 6e 3e 0a 20 20 20 20 74 72 79 20 62 61 6e 67 31 28 29 3b 0a 20 20 20 20 3c 73 70 61 | /span>.....try.bang1();.....<spa |
| 37ee0 | 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 |
| 37f00 | 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f | lass="t37_1">/home/andy/dev/zig/ |
| 37f20 | 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 34 33 3a 35 3c 2f 73 70 61 6e 3e 3a | docgen_tmp/test.zig:43:5</span>: |
| 37f40 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 61 37 39 20 69 6e 20 | .<span.class="t2_0">0x222a79.in. |
| 37f60 | 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 65 72 72 | ???.(test)</span>.....return.err |
| 37f80 | 6f 72 2e 50 65 72 6d 69 73 73 69 6f 6e 44 65 6e 69 65 64 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | or.PermissionDenied;.....<span.c |
| 37fa0 | 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 |
| 37fc0 | 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 | s="t37_1">/home/andy/dev/zig/doc |
| 37fe0 | 67 65 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 | gen_tmp/test.zig:31:5</span>:.<s |
| 38000 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 62 39 64 20 69 6e 20 3f 3f 3f | pan.class="t2_0">0x222b9d.in.??? |
| 38020 | 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();. |
| 38040 | 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> |
| 38060 | 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/ |
| 38080 | 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 31 37 3a 33 | dev/zig/docgen_tmp/test.zig:17:3 |
| 380a0 | 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 30 22 3e 30 78 32 | 1</span>:.<span.class="t2_0">0x2 |
| 380c0 | 32 32 61 34 39 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 | 22a49.in.???.(test)</span>...... |
| 380e0 | 20 20 20 65 72 72 6f 72 2e 46 69 6c 65 4e 6f 74 46 6f 75 6e 64 20 3d 26 67 74 3b 20 74 72 79 20 | ...error.FileNotFound.=>.try. |
| 38100 | 68 65 6c 6c 6f 28 29 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | hello(),........................ |
| 38120 | 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 |
| 38140 | 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 |
| 38160 | 64 79 2f 64 65 76 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 37 | dy/dev/zig/docgen_tmp/test.zig:7 |
| 38180 | 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 78 | :9</span>:.<span.class="t2_0">0x |
| 381a0 | 32 32 32 39 33 61 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | 22293a.in.???.(test)</span>..... |
| 381c0 | 20 20 20 20 74 72 79 20 62 61 72 28 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ....try.bar();.........<span.cla |
| 381e0 | 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= |
| 38200 | 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 | "t37_1">/home/andy/dev/zig/docge |
| 38220 | 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 32 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e | n_tmp/test.zig:2:5</span>:.<span |
| 38240 | 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 37 65 32 20 69 6e 20 3f 3f 3f 20 28 74 | .class="t2_0">0x2227e2.in.???.(t |
| 38260 | 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 74 72 79 20 66 6f 6f 28 31 32 29 3b 0a 20 20 20 | est)</span>.....try.foo(12);.... |
| 38280 | 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>.</ |
| 382a0 | 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 4c 6f 6f | code></pre>........<p>.......Loo |
| 382c0 | 6b 20 63 6c 6f 73 65 6c 79 20 61 74 20 74 68 69 73 20 65 78 61 6d 70 6c 65 2e 20 54 68 69 73 20 | k.closely.at.this.example..This. |
| 382e0 | 69 73 20 6e 6f 20 73 74 61 63 6b 20 74 72 61 63 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | is.no.stack.trace........</p>... |
| 38300 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 59 6f 75 20 63 61 6e 20 73 65 65 20 74 68 61 74 20 74 | ....<p>.......You.can.see.that.t |
| 38320 | 68 65 20 66 69 6e 61 6c 20 65 72 72 6f 72 20 62 75 62 62 6c 65 64 20 75 70 20 77 61 73 20 3c 63 | he.final.error.bubbled.up.was.<c |
| 38340 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 50 65 72 6d 69 73 73 69 6f 6e 44 65 6e 69 65 64 | ode.class="zig">PermissionDenied |
| 38360 | 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 62 75 74 20 74 68 65 20 6f 72 69 67 69 | </code>,...........but.the.origi |
| 38380 | 6e 61 6c 20 65 72 72 6f 72 20 74 68 61 74 20 73 74 61 72 74 65 64 20 74 68 69 73 20 77 68 6f 6c | nal.error.that.started.this.whol |
| 383a0 | 65 20 74 68 69 6e 67 20 77 61 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 46 69 | e.thing.was.<code.class="zig">Fi |
| 383c0 | 6c 65 4e 6f 74 46 6f 75 6e 64 3c 2f 63 6f 64 65 3e 2e 20 49 6e 20 74 68 65 20 3c 63 6f 64 65 20 | leNotFound</code>..In.the.<code. |
| 383e0 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 62 61 72 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 2c | class="zig">bar</code>.function, |
| 38400 | 20 74 68 65 20 63 6f 64 65 20 68 61 6e 64 6c 65 73 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 65 | .the.code.handles.the.original.e |
| 38420 | 72 72 6f 72 20 63 6f 64 65 2c 0a 20 20 20 20 20 20 61 6e 64 20 74 68 65 6e 20 72 65 74 75 72 6e | rror.code,.......and.then.return |
| 38440 | 73 20 61 6e 6f 74 68 65 72 20 6f 6e 65 2c 20 66 72 6f 6d 20 74 68 65 20 73 77 69 74 63 68 20 73 | s.another.one,.from.the.switch.s |
| 38460 | 74 61 74 65 6d 65 6e 74 2e 20 45 72 72 6f 72 20 52 65 74 75 72 6e 20 54 72 61 63 65 73 20 6d 61 | tatement..Error.Return.Traces.ma |
| 38480 | 6b 65 20 74 68 69 73 20 63 6c 65 61 72 2c 20 77 68 65 72 65 61 73 20 61 20 73 74 61 63 6b 20 74 | ke.this.clear,.whereas.a.stack.t |
| 384a0 | 72 61 63 65 20 77 6f 75 6c 64 20 6c 6f 6f 6b 20 6c 69 6b 65 20 74 68 69 73 3a 0a 20 20 20 20 20 | race.would.look.like.this:...... |
| 384c0 | 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 |
| 384e0 | 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">< |
| 38500 | 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>.< |
| 38520 | 73 70 61 6e 20 63 6c 61 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 |
| 38540 | 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>() |
| 38560 | 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 |
| 38580 | 61 6e 3e 20 7b 0a 20 20 20 20 66 6f 6f 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | an>.{.....foo(<span.class="tok-n |
| 385a0 | 75 6d 62 65 72 22 3e 31 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | umber">12</span>);.}..<span.clas |
| 385c0 | 73 3d 22 74 6f 6b 2d 6b 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 |
| 385e0 | 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 78 3a 20 3c 73 70 61 6e 20 63 6c | ="tok-fn">foo</span>(x:.<span.cl |
| 38600 | 61 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 | ass="tok-type">i32</span>).<span |
| 38620 | 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>.{. |
| 38640 | 20 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 |
| 38660 | 6e 3e 20 28 78 20 26 67 74 3b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | n>.(x.>=.<span.class="tok-num |
| 38680 | 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 62 61 72 28 29 3b 0a | ber">5</span>).{.........bar();. |
| 386a0 | 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< |
| 386c0 | 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 62 61 6e 67 32 28 29 3b 0a 20 20 20 20 7d 0a | /span>.{.........bang2();.....}. |
| 386e0 | 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 |
| 38700 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 62 61 72 3c 2f 73 70 61 6e | >.<span.class="tok-fn">bar</span |
| 38720 | 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< |
| 38740 | 2f 73 70 61 6e 3e 20 7b 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 |
| 38760 | 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 62 61 7a 28 29 29 20 7b 0a 20 20 20 20 20 20 20 20 71 75 | ">if</span>.(baz()).{.........qu |
| 38780 | 75 78 28 29 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ux();.....}.<span.class="tok-kw" |
| 387a0 | 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 68 65 6c 6c 6f 28 29 3b 0a | >else</span>.{.........hello();. |
| 387c0 | 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 66 6e | ....}.}..<span.class="tok-kw">fn |
| 387e0 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 62 61 7a | </span>.<span.class="tok-fn">baz |
| 38800 | 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" |
| 38820 | 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >bool</span>.{.....<span.class=" |
| 38840 | 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 62 61 6e 67 31 28 29 3b 0a 7d | tok-kw">return</span>.bang1();.} |
| 38860 | 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> |
| 38880 | 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 6e | .<span.class="tok-fn">quux</span |
| 388a0 | 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< |
| 388c0 | 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 62 61 6e 67 32 28 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 | /span>.{.....bang2();.}..<span.c |
| 388e0 | 6c 61 73 73 3d 22 74 6f 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 |
| 38900 | 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 68 65 6c 6c 6f 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 | ass="tok-fn">hello</span>().<spa |
| 38920 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b | n.class="tok-type">void</span>.{ |
| 38940 | 0a 20 20 20 20 62 61 6e 67 32 28 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .....bang2();.}..<span.class="to |
| 38960 | 6b 2d 6b 77 22 3e 66 6e 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 |
| 38980 | 2d 66 6e 22 3e 62 61 6e 67 31 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | -fn">bang1</span>().<span.class= |
| 389a0 | 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 | "tok-type">bool</span>.{.....<sp |
| 389c0 | 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>. |
| 389e0 | 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 |
| 38a00 | 61 6e 3e 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c | an>;.}..<span.class="tok-kw">fn< |
| 38a20 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 62 61 6e 67 | /span>.<span.class="tok-fn">bang |
| 38a40 | 32 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | 2</span>().<span.class="tok-type |
| 38a60 | 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= |
| 38a80 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 61 6e 69 63 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 | "tok-builtin">@panic</span>(<spa |
| 38aa0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 50 65 72 6d 69 73 73 69 | n.class="tok-str">"Permissi |
| 38ac0 | 6f 6e 44 65 6e 69 65 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e | onDenied"</span>);.}</code> |
| 38ae0 | 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">$ |
| 38b00 | 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 |
| 38b20 | 0a 50 65 72 6d 69 73 73 69 6f 6e 44 65 6e 69 65 64 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .PermissionDenied.<span.class="t |
| 38b40 | 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f | 37_1">/home/andy/dev/zig/docgen_ |
| 38b60 | 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 33 38 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 | tmp/test.zig:38:5</span>:.<span. |
| 38b80 | 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 37 33 34 20 69 6e 20 3f 3f 3f 20 28 74 65 | class="t2_0">0x222734.in.???.(te |
| 38ba0 | 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 70 61 6e 69 63 28 26 71 75 6f 74 3b 50 65 72 6d | st)</span>.....@panic("Perm |
| 38bc0 | 69 73 73 69 6f 6e 44 65 6e 69 65 64 26 71 75 6f 74 3b 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | issionDenied");.....<span.c |
| 38be0 | 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 |
| 38c00 | 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 | s="t37_1">/home/andy/dev/zig/doc |
| 38c20 | 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 3c | gen_tmp/test.zig:30:10</span>:.< |
| 38c40 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 37 37 39 20 69 6e 20 3f 3f | span.class="t2_0">0x222779.in.?? |
| 38c60 | 3f 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 20 20 20 | ?.(test)</span>.....bang2();.... |
| 38c80 | 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 |
| 38ca0 | 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 |
| 38cc0 | 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 31 37 | y/dev/zig/docgen_tmp/test.zig:17 |
| 38ce0 | 3a 31 34 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 | :14</span>:.<span.class="t2_0">0 |
| 38d00 | 78 32 32 32 37 31 62 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 | x22271b.in.???.(test)</span>.... |
| 38d20 | 20 20 20 20 20 68 65 6c 6c 6f 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e | .....hello();..............<span |
| 38d40 | 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 |
| 38d60 | 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 | ass="t37_1">/home/andy/dev/zig/d |
| 38d80 | 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 37 3a 31 32 3c 2f 73 70 61 6e 3e 3a 20 | ocgen_tmp/test.zig:7:12</span>:. |
| 38da0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 36 65 36 20 69 6e 20 3f | <span.class="t2_0">0x2226e6.in.? |
| 38dc0 | 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 62 61 72 28 29 3b 0a | ??.(test)</span>.........bar();. |
| 38de0 | 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">^ |
| 38e00 | 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 |
| 38e20 | 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a | e/andy/dev/zig/docgen_tmp/test.z |
| 38e40 | 69 67 3a 32 3a 38 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 | ig:2:8</span>:.<span.class="t2_0 |
| 38e60 | 22 3e 30 78 32 32 32 36 63 65 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a | ">0x2226ce.in.???.(test)</span>. |
| 38e80 | 20 20 20 20 66 6f 6f 28 31 32 29 3b 0a 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ....foo(12);........<span.class= |
| 38ea0 | 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 |
| 38ec0 | 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 | 7_1">/home/andy/dev/zig/build/li |
| 38ee0 | 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a | b/zig/std/special/bootstrap.zig: |
| 38f00 | 38 36 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 | 86:22</span>:.<span.class="t2_0" |
| 38f20 | 3e 30 78 32 32 32 36 61 39 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 | >0x2226a9.in.???.(test)</span>.. |
| 38f40 | 20 20 20 20 20 20 20 20 20 20 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 | ...........root.main();......... |
| 38f60 | 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" |
| 38f80 | 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 |
| 38fa0 | 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 | ome/andy/dev/zig/build/lib/zig/s |
| 38fc0 | 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 37 30 3a 32 30 3c 2f | td/special/bootstrap.zig:70:20</ |
| 38fe0 | 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 36 | span>:.<span.class="t2_0">0x2226 |
| 39000 | 35 35 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 | 55.in.???.(test)</span>.....retu |
| 39020 | 72 6e 20 63 61 6c 6c 4d 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | rn.callMain();.................. |
| 39040 | 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>.< |
| 39060 | 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 64 65 | span.class="t37_1">/home/andy/de |
| 39080 | 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f | v/zig/build/lib/zig/std/special/ |
| 390a0 | 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 36 34 3a 33 39 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 | bootstrap.zig:64:39</span>:.<spa |
| 390c0 | 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 34 62 38 20 69 6e 20 3f 3f 3f 20 28 | n.class="t2_0">0x2224b8.in.???.( |
| 390e0 | 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 74 64 2e 6f 73 2e 70 6f 73 69 78 2e 65 78 | test)</span>.....std.os.posix.ex |
| 39100 | 69 74 28 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 28 61 72 67 63 2c 20 61 72 67 76 2c 20 | it(callMainWithArgs(argc,.argv,. |
| 39120 | 65 6e 76 70 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 | envp));......................... |
| 39140 | 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 |
| 39160 | 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">/ |
| 39180 | 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f | home/andy/dev/zig/build/lib/zig/ |
| 391a0 | 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 33 37 3a 35 3c 2f | std/special/bootstrap.zig:37:5</ |
| 391c0 | 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 33 | span>:.<span.class="t2_0">0x2223 |
| 391e0 | 37 30 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 6e 6f 49 | 70.in.???.(test)</span>.....@noI |
| 39200 | 6e 6c 69 6e 65 43 61 6c 6c 28 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 29 3b | nlineCall(posixCallMainAndExit); |
| 39220 | 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 |
| 39240 | 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | >.</code></pre>........<p>...... |
| 39260 | 20 48 65 72 65 2c 20 74 68 65 20 73 74 61 63 6b 20 74 72 61 63 65 20 64 6f 65 73 20 6e 6f 74 20 | .Here,.the.stack.trace.does.not. |
| 39280 | 65 78 70 6c 61 69 6e 20 68 6f 77 20 74 68 65 20 63 6f 6e 74 72 6f 6c 0a 20 20 20 20 20 20 66 6c | explain.how.the.control.......fl |
| 392a0 | 6f 77 20 69 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 62 61 72 3c 2f 63 6f 64 | ow.in.<code.class="zig">bar</cod |
| 392c0 | 65 3e 20 67 6f 74 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 | e>.got.to.the.<code.class="zig"> |
| 392e0 | 68 65 6c 6c 6f 28 29 3c 2f 63 6f 64 65 3e 20 63 61 6c 6c 2e 0a 20 20 20 20 20 20 4f 6e 65 20 77 | hello()</code>.call........One.w |
| 39300 | 6f 75 6c 64 20 68 61 76 65 20 74 6f 20 6f 70 65 6e 20 61 20 64 65 62 75 67 67 65 72 20 6f 72 20 | ould.have.to.open.a.debugger.or. |
| 39320 | 66 75 72 74 68 65 72 20 69 6e 73 74 72 75 6d 65 6e 74 20 74 68 65 20 61 70 70 6c 69 63 61 74 69 | further.instrument.the.applicati |
| 39340 | 6f 6e 0a 20 20 20 20 20 20 69 6e 20 6f 72 64 65 72 20 74 6f 20 66 69 6e 64 20 6f 75 74 2e 20 54 | on.......in.order.to.find.out..T |
| 39360 | 68 65 20 65 72 72 6f 72 20 72 65 74 75 72 6e 20 74 72 61 63 65 2c 20 6f 6e 20 74 68 65 20 6f 74 | he.error.return.trace,.on.the.ot |
| 39380 | 68 65 72 20 68 61 6e 64 2c 20 0a 20 20 20 20 20 20 73 68 6f 77 73 20 65 78 61 63 74 6c 79 20 68 | her.hand,........shows.exactly.h |
| 393a0 | 6f 77 20 74 68 65 20 65 72 72 6f 72 20 62 75 62 62 6c 65 64 20 75 70 2e 0a 20 20 20 20 20 20 3c | ow.the.error.bubbled.up........< |
| 393c0 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 64 65 62 75 67 67 69 | /p>.......<p>.......This.debuggi |
| 393e0 | 6e 67 20 66 65 61 74 75 72 65 20 6d 61 6b 65 73 20 69 74 20 65 61 73 69 65 72 20 74 6f 20 69 74 | ng.feature.makes.it.easier.to.it |
| 39400 | 65 72 61 74 65 20 71 75 69 63 6b 6c 79 20 6f 6e 20 63 6f 64 65 20 74 68 61 74 0a 20 20 20 20 20 | erate.quickly.on.code.that...... |
| 39420 | 20 72 6f 62 75 73 74 6c 79 20 68 61 6e 64 6c 65 73 20 61 6c 6c 20 65 72 72 6f 72 20 63 6f 6e 64 | .robustly.handles.all.error.cond |
| 39440 | 69 74 69 6f 6e 73 2e 20 54 68 69 73 20 6d 65 61 6e 73 20 74 68 61 74 20 5a 69 67 20 64 65 76 65 | itions..This.means.that.Zig.deve |
| 39460 | 6c 6f 70 65 72 73 0a 20 20 20 20 20 20 77 69 6c 6c 20 6e 61 74 75 72 61 6c 6c 79 20 66 69 6e 64 | lopers.......will.naturally.find |
| 39480 | 20 74 68 65 6d 73 65 6c 76 65 73 20 77 72 69 74 69 6e 67 20 63 6f 72 72 65 63 74 2c 20 72 6f 62 | .themselves.writing.correct,.rob |
| 394a0 | 75 73 74 20 63 6f 64 65 20 69 6e 20 6f 72 64 65 72 0a 20 20 20 20 20 20 74 6f 20 69 6e 63 72 65 | ust.code.in.order.......to.incre |
| 394c0 | 61 73 65 20 74 68 65 69 72 20 64 65 76 65 6c 6f 70 6d 65 6e 74 20 70 61 63 65 2e 0a 20 20 20 20 | ase.their.development.pace...... |
| 394e0 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 45 72 72 6f 72 20 52 65 74 | ..</p>.......<p>.......Error.Ret |
| 39500 | 75 72 6e 20 54 72 61 63 65 73 20 61 72 65 20 65 6e 61 62 6c 65 64 20 62 79 20 64 65 66 61 75 6c | urn.Traces.are.enabled.by.defaul |
| 39520 | 74 20 69 6e 20 3c 61 20 68 72 65 66 3d 22 23 44 65 62 75 67 22 3e 44 65 62 75 67 3c 2f 61 3e 20 | t.in.<a.href="#Debug">Debug</a>. |
| 39540 | 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 53 61 66 65 22 3e 52 65 6c 65 61 | and.<a.href="#ReleaseSafe">Relea |
| 39560 | 73 65 53 61 66 65 3c 2f 61 3e 20 62 75 69 6c 64 73 20 61 6e 64 20 64 69 73 61 62 6c 65 64 20 62 | seSafe</a>.builds.and.disabled.b |
| 39580 | 79 20 64 65 66 61 75 6c 74 20 69 6e 20 3c 61 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 46 61 | y.default.in.<a.href="#ReleaseFa |
| 395a0 | 73 74 22 3e 52 65 6c 65 61 73 65 46 61 73 74 3c 2f 61 3e 20 61 6e 64 20 3c 61 20 68 72 65 66 3d | st">ReleaseFast</a>.and.<a.href= |
| 395c0 | 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> |
| 395e0 | 20 62 75 69 6c 64 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | .builds........</p>.......<p>... |
| 39600 | 20 20 20 20 54 68 65 72 65 20 61 72 65 20 61 20 66 65 77 20 77 61 79 73 20 74 6f 20 61 63 74 69 | ....There.are.a.few.ways.to.acti |
| 39620 | 76 61 74 65 20 74 68 69 73 20 65 72 72 6f 72 20 72 65 74 75 72 6e 20 74 72 61 63 69 6e 67 20 66 | vate.this.error.return.tracing.f |
| 39640 | 65 61 74 75 72 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 | eature:.......</p>.......<ul>... |
| 39660 | 20 20 20 20 20 20 3c 6c 69 3e 52 65 74 75 72 6e 20 61 6e 20 65 72 72 6f 72 20 66 72 6f 6d 20 6d | ......<li>Return.an.error.from.m |
| 39680 | 61 69 6e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 6e 20 65 72 72 6f 72 20 6d 61 | ain</li>.........<li>An.error.ma |
| 396a0 | 6b 65 73 20 69 74 73 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 | kes.its.way.to.<code.class="zig" |
| 396c0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 | ><span.class="tok-kw">catch</spa |
| 396e0 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 | n>.<span.class="tok-kw">unreacha |
| 39700 | 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 79 6f 75 20 68 61 76 65 20 6e | ble</span></code>.and.you.have.n |
| 39720 | 6f 74 20 6f 76 65 72 72 69 64 64 65 6e 20 74 68 65 20 64 65 66 61 75 6c 74 20 70 61 6e 69 63 20 | ot.overridden.the.default.panic. |
| 39740 | 68 61 6e 64 6c 65 72 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 55 73 65 20 3c 61 20 | handler</li>.........<li>Use.<a. |
| 39760 | 68 72 65 66 3d 22 23 65 72 72 6f 72 52 65 74 75 72 6e 54 72 61 63 65 22 3e 65 72 72 6f 72 52 65 | href="#errorReturnTrace">errorRe |
| 39780 | 74 75 72 6e 54 72 61 63 65 3c 2f 61 3e 20 74 6f 20 61 63 63 65 73 73 20 74 68 65 20 63 75 72 72 | turnTrace</a>.to.access.the.curr |
| 397a0 | 65 6e 74 20 72 65 74 75 72 6e 20 74 72 61 63 65 2e 20 59 6f 75 20 63 61 6e 20 75 73 65 20 3c 63 | ent.return.trace..You.can.use.<c |
| 397c0 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 74 64 2e 64 65 62 75 67 2e 64 75 6d 70 53 74 | ode.class="zig">std.debug.dumpSt |
| 397e0 | 61 63 6b 54 72 61 63 65 3c 2f 63 6f 64 65 3e 20 74 6f 20 70 72 69 6e 74 20 69 74 2e 20 54 68 69 | ackTrace</code>.to.print.it..Thi |
| 39800 | 73 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 20 63 6f 6d 70 74 69 6d 65 2d 6b 6e 6f 77 | s.function.returns.comptime-know |
| 39820 | 6e 20 3c 61 20 68 72 65 66 3d 22 23 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 61 3e 20 77 68 65 6e 20 | n.<a.href="#null">null</a>.when. |
| 39840 | 62 75 69 6c 64 69 6e 67 20 77 69 74 68 6f 75 74 20 65 72 72 6f 72 20 72 65 74 75 72 6e 20 74 72 | building.without.error.return.tr |
| 39860 | 61 63 69 6e 67 20 73 75 70 70 6f 72 74 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a | acing.support.</li>.......</ul>. |
| 39880 | 20 20 20 20 20 20 3c 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 | ......<h3.id="Implementation-Det |
| 398a0 | 61 69 6c 73 22 3e 49 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 44 65 74 61 69 6c 73 3c 2f 68 33 | ails">Implementation.Details</h3 |
| 398c0 | 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 6f 20 61 6e 61 6c 79 7a 65 20 70 65 | >........<p>.......To.analyze.pe |
| 398e0 | 72 66 6f 72 6d 61 6e 63 65 20 63 6f 73 74 2c 20 74 68 65 72 65 20 61 72 65 20 74 77 6f 20 63 61 | rformance.cost,.there.are.two.ca |
| 39900 | 73 65 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 | ses:.......</p>.......<ul>...... |
| 39920 | 20 20 20 3c 6c 69 3e 77 68 65 6e 20 6e 6f 20 65 72 72 6f 72 73 20 61 72 65 20 72 65 74 75 72 6e | ...<li>when.no.errors.are.return |
| 39940 | 65 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 77 68 65 6e 20 72 65 74 75 72 6e 69 | ed</li>.........<li>when.returni |
| 39960 | 6e 67 20 65 72 72 6f 72 73 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 | ng.errors</li>.......</ul>...... |
| 39980 | 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 74 68 65 20 63 61 73 65 20 77 68 65 6e 20 6e 6f 20 | .<p>.......For.the.case.when.no. |
| 399a0 | 65 72 72 6f 72 73 20 61 72 65 20 72 65 74 75 72 6e 65 64 2c 20 74 68 65 20 63 6f 73 74 20 69 73 | errors.are.returned,.the.cost.is |
| 399c0 | 20 61 20 73 69 6e 67 6c 65 20 6d 65 6d 6f 72 79 20 77 72 69 74 65 20 6f 70 65 72 61 74 69 6f 6e | .a.single.memory.write.operation |
| 399e0 | 2c 20 6f 6e 6c 79 20 69 6e 20 74 68 65 20 66 69 72 73 74 20 6e 6f 6e 2d 66 61 69 6c 61 62 6c 65 | ,.only.in.the.first.non-failable |
| 39a00 | 20 66 75 6e 63 74 69 6f 6e 20 69 6e 20 74 68 65 20 63 61 6c 6c 20 67 72 61 70 68 20 74 68 61 74 | .function.in.the.call.graph.that |
| 39a20 | 20 63 61 6c 6c 73 20 61 20 66 61 69 6c 61 62 6c 65 20 66 75 6e 63 74 69 6f 6e 2c 20 69 2e 65 2e | .calls.a.failable.function,.i.e. |
| 39a40 | 20 77 68 65 6e 20 61 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 69 6e 67 20 3c 63 6f 64 65 | .when.a.function.returning.<code |
| 39a60 | 20 63 6c 61 73 73 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 |
| 39a80 | 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 61 6c 6c 73 20 61 20 66 | pe">void</span></code>.calls.a.f |
| 39aa0 | 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 7a | unction.returning.<code.class="z |
| 39ac0 | 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f | ig"><span.class="tok-kw">error</ |
| 39ae0 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 54 68 69 73 20 69 73 20 74 6f 20 69 | span></code>........This.is.to.i |
| 39b00 | 6e 69 74 69 61 6c 69 7a 65 20 74 68 69 73 20 73 74 72 75 63 74 20 69 6e 20 74 68 65 20 73 74 61 | nitialize.this.struct.in.the.sta |
| 39b20 | 63 6b 20 6d 65 6d 6f 72 79 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 | ck.memory:.......</p>.......<pre |
| 39b40 | 3e 3c 63 6f 64 65 20 63 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=" |
| 39b60 | 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=" |
| 39b80 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 53 74 61 63 6b 54 72 61 63 65 20 | tok-kw">const</span>.StackTrace. |
| 39ba0 | 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 |
| 39bc0 | 70 61 6e 3e 20 7b 0a 20 20 20 20 69 6e 64 65 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | pan>.{.....index:.<span.class="t |
| 39be0 | 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 69 6e 73 74 72 | ok-type">usize</span>,.....instr |
| 39c00 | 75 63 74 69 6f 6e 5f 61 64 64 72 65 73 73 65 73 3a 20 5b 4e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 | uction_addresses:.[N]<span.class |
| 39c20 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 3c 2f 63 6f | ="tok-type">usize</span>,.};</co |
| 39c40 | 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 48 65 72 65 2c 20 | de></pre>.......<p>.......Here,. |
| 39c60 | 4e 20 69 73 20 74 68 65 20 6d 61 78 69 6d 75 6d 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 20 64 | N.is.the.maximum.function.call.d |
| 39c80 | 65 70 74 68 20 61 73 20 64 65 74 65 72 6d 69 6e 65 64 20 62 79 20 63 61 6c 6c 20 67 72 61 70 68 | epth.as.determined.by.call.graph |
| 39ca0 | 20 61 6e 61 6c 79 73 69 73 2e 20 52 65 63 75 72 73 69 6f 6e 20 69 73 20 69 67 6e 6f 72 65 64 20 | .analysis..Recursion.is.ignored. |
| 39cc0 | 61 6e 64 20 63 6f 75 6e 74 73 20 66 6f 72 20 32 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | and.counts.for.2........</p>.... |
| 39ce0 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 20 70 6f 69 6e 74 65 72 20 74 6f 20 3c 63 6f 64 65 20 | ...<p>.......A.pointer.to.<code. |
| 39d00 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 53 74 61 63 6b 54 72 61 63 65 3c 2f 63 6f 64 65 3e 20 69 73 | class="zig">StackTrace</code>.is |
| 39d20 | 20 70 61 73 73 65 64 20 61 73 20 61 20 73 65 63 72 65 74 20 70 61 72 61 6d 65 74 65 72 20 74 6f | .passed.as.a.secret.parameter.to |
| 39d40 | 20 65 76 65 72 79 20 66 75 6e 63 74 69 6f 6e 20 74 68 61 74 20 63 61 6e 20 72 65 74 75 72 6e 20 | .every.function.that.can.return. |
| 39d60 | 61 6e 20 65 72 72 6f 72 2c 20 62 75 74 20 69 74 27 73 20 61 6c 77 61 79 73 20 74 68 65 20 66 69 | an.error,.but.it's.always.the.fi |
| 39d80 | 72 73 74 20 70 61 72 61 6d 65 74 65 72 2c 20 73 6f 20 69 74 20 63 61 6e 20 6c 69 6b 65 6c 79 20 | rst.parameter,.so.it.can.likely. |
| 39da0 | 73 69 74 20 69 6e 20 61 20 72 65 67 69 73 74 65 72 20 61 6e 64 20 73 74 61 79 20 74 68 65 72 65 | sit.in.a.register.and.stay.there |
| 39dc0 | 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 61 | ........</p>.......<p>.......Tha |
| 39de0 | 74 27 73 20 69 74 20 66 6f 72 20 74 68 65 20 70 61 74 68 20 77 68 65 6e 20 6e 6f 20 65 72 72 6f | t's.it.for.the.path.when.no.erro |
| 39e00 | 72 73 20 6f 63 63 75 72 2e 20 49 74 27 73 20 70 72 61 63 74 69 63 61 6c 6c 79 20 66 72 65 65 20 | rs.occur..It's.practically.free. |
| 39e20 | 69 6e 20 74 65 72 6d 73 20 6f 66 20 70 65 72 66 6f 72 6d 61 6e 63 65 2e 0a 20 20 20 20 20 20 3c | in.terms.of.performance........< |
| 39e40 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 65 6e 20 67 65 6e 65 72 61 74 | /p>.......<p>.......When.generat |
| 39e60 | 69 6e 67 20 74 68 65 20 63 6f 64 65 20 66 6f 72 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 68 61 74 | ing.the.code.for.a.function.that |
| 39e80 | 20 72 65 74 75 72 6e 73 20 61 6e 20 65 72 72 6f 72 2c 20 6a 75 73 74 20 62 65 66 6f 72 65 20 74 | .returns.an.error,.just.before.t |
| 39ea0 | 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 |
| 39ec0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 73 | ="tok-kw">return</span></code>.s |
| 39ee0 | 74 61 74 65 6d 65 6e 74 20 28 6f 6e 6c 79 20 66 6f 72 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 | tatement.(only.for.the.<code.cla |
| 39f00 | 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 | ss="zig"><span.class="tok-kw">re |
| 39f20 | 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 73 20 74 68 | turn</span></code>.statements.th |
| 39f40 | 61 74 20 72 65 74 75 72 6e 20 65 72 72 6f 72 73 29 2c 20 5a 69 67 20 67 65 6e 65 72 61 74 65 73 | at.return.errors),.Zig.generates |
| 39f60 | 20 61 20 63 61 6c 6c 20 74 6f 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 3a 0a 20 20 20 20 20 20 | .a.call.to.this.function:....... |
| 39f80 | 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 |
| 39fa0 | 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 2f 2f 20 6d | "><span.class="tok-comment">//.m |
| 39fc0 | 61 72 6b 65 64 20 61 73 20 26 71 75 6f 74 3b 6e 6f 2d 69 6e 6c 69 6e 65 26 71 75 6f 74 3b 20 69 | arked.as."no-inline".i |
| 39fe0 | 6e 20 4c 4c 56 4d 20 49 52 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | n.LLVM.IR</span>.<span.class="to |
| 3a000 | 6b 2d 6b 77 22 3e 66 6e 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 |
| 3a020 | 2d 66 6e 22 3e 5f 5f 7a 69 67 5f 72 65 74 75 72 6e 5f 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 28 73 | -fn">__zig_return_error</span>(s |
| 3a040 | 74 61 63 6b 5f 74 72 61 63 65 3a 20 2a 53 74 61 63 6b 54 72 61 63 65 29 20 3c 73 70 61 6e 20 63 | tack_trace:.*StackTrace).<span.c |
| 3a060 | 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>.{... |
| 3a080 | 20 20 73 74 61 63 6b 5f 74 72 61 63 65 2e 69 6e 73 74 72 75 63 74 69 6f 6e 5f 61 64 64 72 65 73 | ..stack_trace.instruction_addres |
| 3a0a0 | 73 65 73 5b 73 74 61 63 6b 5f 74 72 61 63 65 2e 69 6e 64 65 78 5d 20 3d 20 3c 73 70 61 6e 20 63 | ses[stack_trace.index].=.<span.c |
| 3a0c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 72 65 74 75 72 6e 41 64 64 72 65 73 | lass="tok-builtin">@returnAddres |
| 3a0e0 | 73 3c 2f 73 70 61 6e 3e 28 29 3b 0a 20 20 20 20 73 74 61 63 6b 5f 74 72 61 63 65 2e 69 6e 64 65 | s</span>();.....stack_trace.inde |
| 3a100 | 78 20 3d 20 28 73 74 61 63 6b 5f 74 72 61 63 65 2e 69 6e 64 65 78 20 2b 20 3c 73 70 61 6e 20 63 | x.=.(stack_trace.index.+.<span.c |
| 3a120 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 25 20 4e 3b | lass="tok-number">1</span>).%.N; |
| 3a140 | 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | .}</code></pre>.......<p>....... |
| 3a160 | 54 68 65 20 63 6f 73 74 20 69 73 20 32 20 6d 61 74 68 20 6f 70 65 72 61 74 69 6f 6e 73 20 70 6c | The.cost.is.2.math.operations.pl |
| 3a180 | 75 73 20 73 6f 6d 65 20 6d 65 6d 6f 72 79 20 72 65 61 64 73 20 61 6e 64 20 77 72 69 74 65 73 2e | us.some.memory.reads.and.writes. |
| 3a1a0 | 20 54 68 65 20 6d 65 6d 6f 72 79 20 61 63 63 65 73 73 65 64 20 69 73 20 63 6f 6e 73 74 72 61 69 | .The.memory.accessed.is.constrai |
| 3a1c0 | 6e 65 64 20 61 6e 64 20 73 68 6f 75 6c 64 20 72 65 6d 61 69 6e 20 63 61 63 68 65 64 20 66 6f 72 | ned.and.should.remain.cached.for |
| 3a1e0 | 20 74 68 65 20 64 75 72 61 74 69 6f 6e 20 6f 66 20 74 68 65 20 65 72 72 6f 72 20 72 65 74 75 72 | .the.duration.of.the.error.retur |
| 3a200 | 6e 20 62 75 62 62 6c 69 6e 67 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e | n.bubbling........</p>.......<p> |
| 3a220 | 0a 20 20 20 20 20 20 41 73 20 66 6f 72 20 63 6f 64 65 20 73 69 7a 65 20 63 6f 73 74 2c 20 31 20 | .......As.for.code.size.cost,.1. |
| 3a240 | 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 20 62 65 66 6f 72 65 20 61 20 72 65 74 75 72 6e 20 73 74 | function.call.before.a.return.st |
| 3a260 | 61 74 65 6d 65 6e 74 20 69 73 20 6e 6f 20 62 69 67 20 64 65 61 6c 2e 20 45 76 65 6e 20 73 6f 2c | atement.is.no.big.deal..Even.so, |
| 3a280 | 0a 20 20 20 20 20 20 49 20 68 61 76 65 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 | .......I.have.<a.href="https://g |
| 3a2a0 | 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 36 39 30 | ithub.com/ziglang/zig/issues/690 |
| 3a2c0 | 22 3e 61 20 70 6c 61 6e 3c 2f 61 3e 20 74 6f 20 6d 61 6b 65 20 74 68 65 20 63 61 6c 6c 20 74 6f | ">a.plan</a>.to.make.the.call.to |
| 3a2e0 | 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 5f 5f 7a 69 67 5f 72 | .......<code.class="zig">__zig_r |
| 3a300 | 65 74 75 72 6e 5f 65 72 72 6f 72 3c 2f 63 6f 64 65 3e 20 61 20 74 61 69 6c 20 63 61 6c 6c 2c 20 | eturn_error</code>.a.tail.call,. |
| 3a320 | 77 68 69 63 68 20 62 72 69 6e 67 73 20 74 68 65 20 63 6f 64 65 20 73 69 7a 65 20 63 6f 73 74 20 | which.brings.the.code.size.cost. |
| 3a340 | 64 6f 77 6e 20 74 6f 20 61 63 74 75 61 6c 6c 79 20 7a 65 72 6f 2e 20 57 68 61 74 20 69 73 20 61 | down.to.actually.zero..What.is.a |
| 3a360 | 20 72 65 74 75 72 6e 20 73 74 61 74 65 6d 65 6e 74 20 69 6e 20 63 6f 64 65 20 77 69 74 68 6f 75 | .return.statement.in.code.withou |
| 3a380 | 74 20 65 72 72 6f 72 20 72 65 74 75 72 6e 20 74 72 61 63 69 6e 67 20 63 61 6e 20 62 65 63 6f 6d | t.error.return.tracing.can.becom |
| 3a3a0 | 65 20 61 20 6a 75 6d 70 20 69 6e 73 74 72 75 63 74 69 6f 6e 20 69 6e 20 63 6f 64 65 20 77 69 74 | e.a.jump.instruction.in.code.wit |
| 3a3c0 | 68 20 65 72 72 6f 72 20 72 65 74 75 72 6e 20 74 72 61 63 69 6e 67 2e 0a 20 20 20 20 20 20 3c 2f | h.error.return.tracing........</ |
| 3a3e0 | 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 | p>............................<h |
| 3a400 | 31 20 69 64 3d 22 4f 70 74 69 6f 6e 61 6c 73 22 3e 4f 70 74 69 6f 6e 61 6c 73 3c 2f 68 31 3e 0a | 1.id="Optionals">Optionals</h1>. |
| 3a420 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4f 6e 65 20 61 72 65 61 20 74 68 61 74 20 5a | .......<p>.......One.area.that.Z |
| 3a440 | 69 67 20 70 72 6f 76 69 64 65 73 20 73 61 66 65 74 79 20 77 69 74 68 6f 75 74 20 63 6f 6d 70 72 | ig.provides.safety.without.compr |
| 3a460 | 6f 6d 69 73 69 6e 67 20 65 66 66 69 63 69 65 6e 63 79 20 6f 72 0a 20 20 20 20 20 20 72 65 61 64 | omising.efficiency.or.......read |
| 3a480 | 61 62 69 6c 69 74 79 20 69 73 20 77 69 74 68 20 74 68 65 20 6f 70 74 69 6f 6e 61 6c 20 74 79 70 | ability.is.with.the.optional.typ |
| 3a4a0 | 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 | e........</p>.......<p>.......Th |
| 3a4c0 | 65 20 71 75 65 73 74 69 6f 6e 20 6d 61 72 6b 20 73 79 6d 62 6f 6c 69 7a 65 73 20 74 68 65 20 6f | e.question.mark.symbolizes.the.o |
| 3a4e0 | 70 74 69 6f 6e 61 6c 20 74 79 70 65 2e 20 59 6f 75 20 63 61 6e 20 63 6f 6e 76 65 72 74 20 61 20 | ptional.type..You.can.convert.a. |
| 3a500 | 74 79 70 65 20 74 6f 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 0a 20 20 20 20 20 20 74 79 70 65 20 62 | type.to.an.optional.......type.b |
| 3a520 | 79 20 70 75 74 74 69 6e 67 20 61 20 71 75 65 73 74 69 6f 6e 20 6d 61 72 6b 20 69 6e 20 66 72 6f | y.putting.a.question.mark.in.fro |
| 3a540 | 6e 74 20 6f 66 20 69 74 2c 20 6c 69 6b 65 20 74 68 69 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | nt.of.it,.like.this:.......</p>. |
| 3a560 | 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 |
| 3a580 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 6e 6f 72 6d 61 6c | an.class="tok-comment">//.normal |
| 3a5a0 | 20 69 6e 74 65 67 65 72 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | .integer</span>.<span.class="tok |
| 3a5c0 | 2d 6b 77 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 | -kw">const</span>.normal_int:.<s |
| 3a5e0 | 70 61 6e 20 63 6c 61 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>. |
| 3a600 | 3d 20 3c 73 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< |
| 3a620 | 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e | /span>;..<span.class="tok-commen |
| 3a640 | 74 22 3e 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 | t">//.optional.integer</span>.<s |
| 3a660 | 70 61 6e 20 63 6c 61 73 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>. |
| 3a680 | 6f 70 74 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 | optional_int:.?<span.class="tok- |
| 3a6a0 | 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=" |
| 3a6c0 | 74 6f 6b 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 | tok-number">5678</span>;</code>< |
| 3a6e0 | 2f 70 72 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 | /pre>.......<p>.......Now.the.va |
| 3a700 | 72 69 61 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 | riable.<code.class="zig">optiona |
| 3a720 | 6c 5f 69 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 | l_int</code>.could.be.an.<code.c |
| 3a740 | 6c 61 73 73 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 |
| 3a760 | 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 6f 72 20 3c 63 6f 64 65 20 63 6c | ">i32</span></code>,.or.<code.cl |
| 3a780 | 61 73 73 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" |
| 3a7a0 | 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | >null</span></code>........</p>. |
| 3a7c0 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 73 74 65 61 64 20 6f 66 20 69 6e 74 65 67 | ......<p>.......Instead.of.integ |
| 3a7e0 | 65 72 73 2c 20 6c 65 74 27 73 20 74 61 6c 6b 20 61 62 6f 75 74 20 70 6f 69 6e 74 65 72 73 2e 20 | ers,.let's.talk.about.pointers.. |
| 3a800 | 4e 75 6c 6c 20 72 65 66 65 72 65 6e 63 65 73 20 61 72 65 20 74 68 65 20 73 6f 75 72 63 65 20 6f | Null.references.are.the.source.o |
| 3a820 | 66 20 6d 61 6e 79 20 72 75 6e 74 69 6d 65 0a 20 20 20 20 20 20 65 78 63 65 70 74 69 6f 6e 73 2c | f.many.runtime.......exceptions, |
| 3a840 | 20 61 6e 64 20 65 76 65 6e 20 73 74 61 6e 64 20 61 63 63 75 73 65 64 20 6f 66 20 62 65 69 6e 67 | .and.even.stand.accused.of.being |
| 3a860 | 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 77 77 77 2e 6c 75 63 69 | .......<a.href="https://www.luci |
| 3a880 | 64 63 68 61 72 74 2e 63 6f 6d 2f 74 65 63 68 62 6c 6f 67 2f 32 30 31 35 2f 30 38 2f 33 31 2f 74 | dchart.com/techblog/2015/08/31/t |
| 3a8a0 | 68 65 2d 77 6f 72 73 74 2d 6d 69 73 74 61 6b 65 2d 6f 66 2d 63 6f 6d 70 75 74 65 72 2d 73 63 69 | he-worst-mistake-of-computer-sci |
| 3a8c0 | 65 6e 63 65 2f 22 3e 74 68 65 20 77 6f 72 73 74 20 6d 69 73 74 61 6b 65 20 6f 66 20 63 6f 6d 70 | ence/">the.worst.mistake.of.comp |
| 3a8e0 | 75 74 65 72 20 73 63 69 65 6e 63 65 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | uter.science</a>........</p>.... |
| 3a900 | 20 20 20 3c 70 3e 5a 69 67 20 64 6f 65 73 20 6e 6f 74 20 68 61 76 65 20 74 68 65 6d 2e 3c 2f 70 | ...<p>Zig.does.not.have.them.</p |
| 3a920 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 73 74 65 61 64 2c 20 79 6f 75 20 63 | >.......<p>.......Instead,.you.c |
| 3a940 | 61 6e 20 75 73 65 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 70 6f 69 6e 74 65 72 2e 20 54 68 69 73 | an.use.an.optional.pointer..This |
| 3a960 | 20 73 65 63 72 65 74 6c 79 20 63 6f 6d 70 69 6c 65 73 20 64 6f 77 6e 20 74 6f 20 61 20 6e 6f 72 | .secretly.compiles.down.to.a.nor |
| 3a980 | 6d 61 6c 20 70 6f 69 6e 74 65 72 2c 0a 20 20 20 20 20 20 73 69 6e 63 65 20 77 65 20 6b 6e 6f 77 | mal.pointer,.......since.we.know |
| 3a9a0 | 20 77 65 20 63 61 6e 20 75 73 65 20 30 20 61 73 20 74 68 65 20 6e 75 6c 6c 20 76 61 6c 75 65 20 | .we.can.use.0.as.the.null.value. |
| 3a9c0 | 66 6f 72 20 74 68 65 20 6f 70 74 69 6f 6e 61 6c 20 74 79 70 65 2e 20 42 75 74 20 74 68 65 20 63 | for.the.optional.type..But.the.c |
| 3a9e0 | 6f 6d 70 69 6c 65 72 0a 20 20 20 20 20 20 63 61 6e 20 63 68 65 63 6b 20 79 6f 75 72 20 77 6f 72 | ompiler.......can.check.your.wor |
| 3aa00 | 6b 20 61 6e 64 20 6d 61 6b 65 20 73 75 72 65 20 79 6f 75 20 64 6f 6e 27 74 20 61 73 73 69 67 6e | k.and.make.sure.you.don't.assign |
| 3aa20 | 20 6e 75 6c 6c 20 74 6f 20 73 6f 6d 65 74 68 69 6e 67 20 74 68 61 74 20 63 61 6e 27 74 20 62 65 | .null.to.something.that.can't.be |
| 3aa40 | 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>..... |
| 3aa60 | 20 20 54 79 70 69 63 61 6c 6c 79 20 74 68 65 20 64 6f 77 6e 73 69 64 65 20 6f 66 20 6e 6f 74 20 | ..Typically.the.downside.of.not. |
| 3aa80 | 68 61 76 69 6e 67 20 6e 75 6c 6c 20 69 73 20 74 68 61 74 20 69 74 20 6d 61 6b 65 73 20 74 68 65 | having.null.is.that.it.makes.the |
| 3aaa0 | 20 63 6f 64 65 20 6d 6f 72 65 20 76 65 72 62 6f 73 65 20 74 6f 0a 20 20 20 20 20 20 77 72 69 74 | .code.more.verbose.to.......writ |
| 3aac0 | 65 2e 20 42 75 74 2c 20 6c 65 74 27 73 20 63 6f 6d 70 61 72 65 20 73 6f 6d 65 20 65 71 75 69 76 | e..But,.let's.compare.some.equiv |
| 3aae0 | 61 6c 65 6e 74 20 43 20 63 6f 64 65 20 61 6e 64 20 5a 69 67 20 63 6f 64 65 2e 0a 20 20 20 20 20 | alent.C.code.and.Zig.code....... |
| 3ab00 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 61 73 6b 3a 20 63 61 6c 6c | .</p>.......<p>.......Task:.call |
| 3ab20 | 20 6d 61 6c 6c 6f 63 2c 20 69 66 20 74 68 65 20 72 65 73 75 6c 74 20 69 73 20 6e 75 6c 6c 2c 20 | .malloc,.if.the.result.is.null,. |
| 3ab40 | 72 65 74 75 72 6e 20 6e 75 6c 6c 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | return.null........</p>.......<p |
| 3ab60 | 3e 43 20 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 | >C.code</p>.......<pre><code.cla |
| 3ab80 | 73 73 3d 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 | ss="cpp">//.malloc.prototype.inc |
| 3aba0 | 6c 75 64 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 | luded.for.reference.void.*malloc |
| 3abc0 | 28 73 69 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 | (size_t.size);..struct.Foo.*do_a |
| 3abe0 | 5f 74 68 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 | _thing(void).{.....char.*ptr.=.m |
| 3ac00 | 61 6c 6c 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 | alloc(1234);.....if.(!ptr).retur |
| 3ac20 | 6e 20 4e 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 | n.NULL;.....//.....}</code></pre |
| 3ac40 | 3e 0a 20 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 | >.......<p>Zig.code</p>.......<p |
| 3ac60 | 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 |
| 3ac80 | 3d 22 74 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 | ="tok-comment">//.malloc.prototy |
| 3aca0 | 70 65 20 69 6e 63 6c 75 64 65 64 20 66 6f 72 20 72 65 66 65 72 65 6e 63 65 3c 2f 73 70 61 6e 3e | pe.included.for.reference</span> |
| 3acc0 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 74 65 72 6e 3c 2f 73 70 | .<span.class="tok-kw">extern</sp |
| 3ace0 | 61 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 |
| 3ad00 | 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 6c 6c 6f 63 3c 2f | n>.<span.class="tok-fn">malloc</ |
| 3ad20 | 73 70 61 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 | span>(size:.size_t).?*<span.clas |
| 3ad40 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 | s="tok-type">u8</span>;..<span.c |
| 3ad60 | 6c 61 73 73 3d 22 74 6f 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 |
| 3ad80 | 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 64 6f 41 54 68 69 6e 67 3c 2f 73 70 61 6e 3e 28 29 20 3f | ass="tok-fn">doAThing</span>().? |
| 3ada0 | 2a 46 6f 6f 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | *Foo.{.....<span.class="tok-kw"> |
| 3adc0 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 74 72 20 3d 20 6d 61 6c 6c 6f 63 28 3c 73 70 61 6e 20 | const</span>.ptr.=.malloc(<span. |
| 3ade0 | 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 20 | class="tok-number">1234</span>). |
| 3ae00 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 72 65 6c 73 65 3c 2f 73 70 61 | <span.class="tok-kw">orelse</spa |
| 3ae20 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f | n>.<span.class="tok-kw">return</ |
| 3ae40 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c | span>.<span.class="tok-null">nul |
| 3ae60 | 6c 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 | l</span>;.....<span.class="tok-c |
| 3ae80 | 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 64 65 3e 3c 2f | omment">//....</span>.}</code></ |
| 3aea0 | 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 20 20 48 65 72 65 2c 20 5a 69 67 | pre>.......<p>.........Here,.Zig |
| 3aec0 | 20 69 73 20 61 74 20 6c 65 61 73 74 20 61 73 20 63 6f 6e 76 65 6e 69 65 6e 74 2c 20 69 66 20 6e | .is.at.least.as.convenient,.if.n |
| 3aee0 | 6f 74 20 6d 6f 72 65 2c 20 74 68 61 6e 20 43 2e 20 41 6e 64 2c 20 74 68 65 20 74 79 70 65 20 6f | ot.more,.than.C..And,.the.type.o |
| 3af00 | 66 20 22 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 | f."ptr".........is.<code.class=" |
| 3af20 | 7a 69 67 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 | zig">*<span.class="tok-type">u8< |
| 3af40 | 2f 73 70 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 | /span></code>.<em>not</em>.<code |
| 3af60 | 20 63 6c 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 | .class="zig">?*<span.class="tok- |
| 3af80 | 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 20 54 68 65 20 3c 63 6f 64 | type">u8</span></code>..The.<cod |
| 3afa0 | 65 20 63 6c 61 73 73 3d 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 |
| 3afc0 | 77 22 3e 6f 72 65 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 0a | w">orelse</span></code>.keyword. |
| 3afe0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 75 6e 77 72 61 70 70 65 64 20 74 68 | ....................unwrapped.th |
| 3b000 | 65 20 6f 70 74 69 6f 6e 61 6c 20 74 79 70 65 20 61 6e 64 20 74 68 65 72 65 66 6f 72 65 20 3c 63 | e.optional.type.and.therefore.<c |
| 3b020 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 70 74 72 3c 2f 63 6f 64 65 3e 20 69 73 20 67 75 | ode.class="zig">ptr</code>.is.gu |
| 3b040 | 61 72 61 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 | aranteed.to.be.non-null.everywhe |
| 3b060 | 72 65 0a 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 | re.........it.is.used.in.the.fun |
| 3b080 | 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | ction........</p>.......<p>..... |
| 3b0a0 | 20 20 20 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 | ....The.other.form.of.checking.a |
| 3b0c0 | 67 61 69 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 | gainst.NULL.you.might.see.looks. |
| 3b0e0 | 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 70 72 65 | like.this:.......</p>.......<pre |
| 3b100 | 3e 3c 63 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 | ><code.class="cpp">void.do_a_thi |
| 3b120 | 6e 67 28 73 74 72 75 63 74 20 46 6f 6f 20 2a 66 6f 6f 29 20 7b 0a 20 20 20 20 2f 2f 20 64 6f 20 | ng(struct.Foo.*foo).{.....//.do. |
| 3b140 | 73 6f 6d 65 20 73 74 75 66 66 0a 0a 20 20 20 20 69 66 20 28 66 6f 6f 29 20 7b 0a 20 20 20 20 20 | some.stuff......if.(foo).{...... |
| 3b160 | 20 20 20 64 6f 5f 73 6f 6d 65 74 68 69 6e 67 5f 77 69 74 68 5f 66 6f 6f 28 66 6f 6f 29 3b 0a 20 | ...do_something_with_foo(foo);.. |
| 3b180 | 20 20 20 7d 0a 0a 20 20 20 20 2f 2f 20 64 6f 20 73 6f 6d 65 20 73 74 75 66 66 0a 7d 3c 2f 63 6f | ...}......//.do.some.stuff.}</co |
| 3b1a0 | 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 20 20 49 6e 20 5a | de></pre>.......<p>.........In.Z |
| 3b1c0 | 69 67 20 79 6f 75 20 63 61 6e 20 61 63 63 6f 6d 70 6c 69 73 68 20 74 68 65 20 73 61 6d 65 20 74 | ig.you.can.accomplish.the.same.t |
| 3b1e0 | 68 69 6e 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 | hing:.......</p>.......<pre><cod |
| 3b200 | 65 20 63 6c 61 73 73 3d 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 |
| 3b220 | 77 22 3e 66 6e 3c 2f 73 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 |
| 3b240 | 22 3e 64 6f 41 54 68 69 6e 67 3c 2f 73 70 61 6e 3e 28 6f 70 74 69 6f 6e 61 6c 5f 66 6f 6f 3a 20 | ">doAThing</span>(optional_foo:. |
| 3b260 | 3f 2a 46 6f 6f 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f | ?*Foo).<span.class="tok-type">vo |
| 3b280 | 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 |
| 3b2a0 | 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 64 6f 20 73 6f 6d 65 20 73 74 75 66 66 3c 2f 73 70 61 6e | -comment">//.do.some.stuff</span |
| 3b2c0 | 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 69 66 3c 2f | >......<span.class="tok-kw">if</ |
| 3b2e0 | 73 70 61 6e 3e 20 28 6f 70 74 69 6f 6e 61 6c 5f 66 6f 6f 29 20 7c 66 6f 6f 7c 20 7b 0a 20 20 20 | span>.(optional_foo).|foo|.{.... |
| 3b300 | 20 20 20 64 6f 53 6f 6d 65 74 68 69 6e 67 57 69 74 68 46 6f 6f 28 66 6f 6f 29 3b 0a 20 20 20 20 | ...doSomethingWithFoo(foo);..... |
| 3b320 | 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 | }......<span.class="tok-comment" |
| 3b340 | 3e 2f 2f 20 64 6f 20 73 6f 6d 65 20 73 74 75 66 66 3c 2f 73 70 61 6e 3e 0a 7d 3c 2f 63 6f 64 65 | >//.do.some.stuff</span>.}</code |
| 3b360 | 3e 3c 2f 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 | ></pre>.......<p>.......Once.aga |
| 3b380 | 69 6e 2c 20 74 68 65 20 6e 6f 74 61 62 6c 65 20 74 68 69 6e 67 20 68 65 72 65 20 69 73 20 74 68 | in,.the.notable.thing.here.is.th |
| 3b3a0 | 61 74 20 69 6e 73 69 64 65 20 74 68 65 20 69 66 20 62 6c 6f 63 6b 2c 0a 20 20 20 20 20 20 3c 63 | at.inside.the.if.block,.......<c |
| 3b3c0 | 6f 64 65 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 | ode.class="zig">foo</code>.is.no |
| 3b3e0 | 20 6c 6f 6e 67 65 72 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 70 6f 69 6e 74 65 72 2c 20 69 74 20 | .longer.an.optional.pointer,.it. |
| 3b400 | 69 73 20 61 20 70 6f 69 6e 74 65 72 2c 20 77 68 69 63 68 0a 20 20 20 20 20 20 63 61 6e 6e 6f 74 | is.a.pointer,.which.......cannot |
| 3b420 | 20 62 65 20 6e 75 6c 6c 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | .be.null........</p>.......<p>.. |
| 3b440 | 20 20 20 20 20 4f 6e 65 20 62 65 6e 65 66 69 74 20 74 6f 20 74 68 69 73 20 69 73 20 74 68 61 74 | .....One.benefit.to.this.is.that |
| 3b460 | 20 66 75 6e 63 74 69 6f 6e 73 20 77 68 69 63 68 20 74 61 6b 65 20 70 6f 69 6e 74 65 72 73 20 61 | .functions.which.take.pointers.a |
| 3b480 | 73 20 61 72 67 75 6d 65 6e 74 73 20 63 61 6e 0a 20 20 20 20 20 20 62 65 20 61 6e 6e 6f 74 61 74 | s.arguments.can.......be.annotat |
| 3b4a0 | 65 64 20 77 69 74 68 20 74 68 65 20 22 6e 6f 6e 6e 75 6c 6c 22 20 61 74 74 72 69 62 75 74 65 20 | ed.with.the."nonnull".attribute. |
| 3b4c0 | 2d 20 3c 63 6f 64 65 3e 5f 5f 61 74 74 72 69 62 75 74 65 5f 5f 28 28 6e 6f 6e 6e 75 6c 6c 29 29 | -.<code>__attribute__((nonnull)) |
| 3b4e0 | 3c 2f 63 6f 64 65 3e 20 69 6e 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a | </code>.in.......<a.href="https: |
| 3b500 | 2f 2f 67 63 63 2e 67 6e 75 2e 6f 72 67 2f 6f 6e 6c 69 6e 65 64 6f 63 73 2f 67 63 63 2d 34 2e 30 | //gcc.gnu.org/onlinedocs/gcc-4.0 |
| 3b520 | 2e 30 2f 67 63 63 2f 46 75 6e 63 74 69 6f 6e 2d 41 74 74 72 69 62 75 74 65 73 2e 68 74 6d 6c 22 | .0/gcc/Function-Attributes.html" |
| 3b540 | 3e 47 43 43 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 54 68 65 20 6f 70 74 69 6d 69 7a 65 72 20 63 61 | >GCC</a>........The.optimizer.ca |
| 3b560 | 6e 20 73 6f 6d 65 74 69 6d 65 73 20 6d 61 6b 65 20 62 65 74 74 65 72 20 64 65 63 69 73 69 6f 6e | n.sometimes.make.better.decision |
| 3b580 | 73 20 6b 6e 6f 77 69 6e 67 20 74 68 61 74 20 70 6f 69 6e 74 65 72 20 61 72 67 75 6d 65 6e 74 73 | s.knowing.that.pointer.arguments |
| 3b5a0 | 0a 20 20 20 20 20 20 63 61 6e 6e 6f 74 20 62 65 20 6e 75 6c 6c 2e 0a 20 20 20 20 20 20 3c 2f 70 | .......cannot.be.null........</p |
| 3b5c0 | 3e 0a 20 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 4f | >.......<h2.id="Optional-Type">O |
| 3b5e0 | 70 74 69 6f 6e 61 6c 20 54 79 70 65 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 6e 20 6f | ptional.Type</h2>........<p>An.o |
| 3b600 | 70 74 69 6f 6e 61 6c 20 69 73 20 63 72 65 61 74 65 64 20 62 79 20 70 75 74 74 69 6e 67 20 3c 63 | ptional.is.created.by.putting.<c |
| 3b620 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3f 3c 2f 63 6f 64 65 3e 20 69 6e 20 66 72 6f 6e | ode.class="zig">?</code>.in.fron |
| 3b640 | 74 20 6f 66 20 61 20 74 79 70 65 2e 20 59 6f 75 20 63 61 6e 20 75 73 65 20 63 6f 6d 70 69 6c 65 | t.of.a.type..You.can.use.compile |
| 3b660 | 2d 74 69 6d 65 0a 20 20 20 20 20 20 72 65 66 6c 65 63 74 69 6f 6e 20 74 6f 20 61 63 63 65 73 73 | -time.......reflection.to.access |
| 3b680 | 20 74 68 65 20 63 68 69 6c 64 20 74 79 70 65 20 6f 66 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 3a 3c | .the.child.type.of.an.optional:< |
| 3b6a0 | 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 |
| 3b6c0 | 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 |
| 3b6e0 | 61 6e 20 63 6c 61 73 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 |
| 3b700 | 73 73 65 72 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | ssert.=.<span.class="tok-builtin |
| 3b720 | 22 3e 40 69 6d 70 6f 72 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 |
| 3b740 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 | k-str">"std"</span>).d |
| 3b760 | 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ebug.assert;..<span.class="tok-k |
| 3b780 | 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- |
| 3b7a0 | 73 74 72 22 3e 26 71 75 6f 74 3b 6f 70 74 69 6f 6e 61 6c 20 74 79 70 65 26 71 75 6f 74 3b 3c 2f | str">"optional.type"</ |
| 3b7c0 | 73 70 61 6e 3e 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 |
| 3b7e0 | 6d 65 6e 74 22 3e 2f 2f 20 44 65 63 6c 61 72 65 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 61 6e 64 | ment">//.Declare.an.optional.and |
| 3b800 | 20 69 6d 70 6c 69 63 69 74 6c 79 20 63 61 73 74 20 66 72 6f 6d 20 6e 75 6c 6c 3a 3c 2f 73 70 61 | .implicitly.cast.from.null:</spa |
| 3b820 | 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< |
| 3b840 | 2f 73 70 61 6e 3e 20 66 6f 6f 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | /span>.foo:.?<span.class="tok-ty |
| 3b860 | 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 |
| 3b880 | 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 | k-null">null</span>;......<span. |
| 3b8a0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 49 6d 70 6c 69 63 69 74 6c | class="tok-comment">//.Implicitl |
| 3b8c0 | 79 20 63 61 73 74 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 | y.cast.from.child.type.of.an.opt |
| 3b8e0 | 69 6f 6e 61 6c 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 66 6f 6f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | ional</span>.....foo.=.<span.cla |
| 3b900 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 | ss="tok-number">1234</span>;.... |
| 3b920 | 20 20 3c 73 70 61 6e 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 | ..<span.class="tok-comment">//.U |
| 3b940 | 73 65 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 72 65 66 6c 65 63 74 69 6f 6e 20 74 6f 20 61 63 | se.compile-time.reflection.to.ac |
| 3b960 | 63 65 73 73 20 74 68 65 20 63 68 69 6c 64 20 74 79 70 65 20 6f 66 20 74 68 65 20 6f 70 74 69 6f | cess.the.child.type.of.the.optio |
| 3b980 | 6e 61 6c 3a 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | nal:</span>.....<span.class="tok |
| 3b9a0 | 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 28 3c 73 70 61 | -kw">comptime</span>.assert(<spa |
| 3b9c0 | 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 4f 66 3c 2f 73 | n.class="tok-builtin">@typeOf</s |
| 3b9e0 | 70 61 6e 3e 28 66 6f 6f 29 2e 43 68 69 6c 64 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | pan>(foo).Child.==.<span.class=" |
| 3ba00 | 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c | tok-type">i32</span>);.}</code>< |
| 3ba20 | 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">$. |
| 3ba40 | 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 31 2f 31 20 6f 70 74 69 6f | zig.test.test.zig.Test.1/1.optio |
| 3ba60 | 6e 61 6c 20 74 79 70 65 2e 2e 2e 4f 4b 0a 41 6c 6c 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a | nal.type...OK.All.tests.passed.. |
| 3ba80 | 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. |
| 3baa0 | 69 64 3d 22 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | id="null">null</h2>........<p>.. |
| 3bac0 | 20 20 20 20 20 4a 75 73 74 20 6c 69 6b 65 20 3c 61 20 68 72 65 66 3d 22 23 75 6e 64 65 66 69 6e | .....Just.like.<a.href="#undefin |
| 3bae0 | 65 64 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 61 3e 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | ed">undefined</a>,.<code.class=" |
| 3bb00 | 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 6c | zig"><span.class="tok-null">null |
| 3bb20 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 68 61 73 20 69 74 73 20 6f 77 6e 20 74 79 70 65 2c | </span></code>.has.its.own.type, |
| 3bb40 | 20 61 6e 64 20 74 68 65 20 6f 6e 6c 79 20 77 61 79 20 74 6f 20 75 73 65 20 69 74 20 69 73 20 74 | .and.the.only.way.to.use.it.is.t |
| 3bb60 | 6f 0a 20 20 20 20 20 20 63 61 73 74 20 69 74 20 74 6f 20 61 20 64 69 66 66 65 72 65 6e 74 20 74 | o.......cast.it.to.a.different.t |
| 3bb80 | 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 65 3e 3c 63 6f 64 65 | ype:.......</p>.......<pre><code |
| 3bba0 | 20 63 6c 61 73 73 3d 22 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 |
| 3bbc0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6f 70 74 69 6f 6e 61 6c 5f 76 61 6c 75 65 3a 20 3f | ">const</span>.optional_value:.? |
| 3bbe0 | 3c 73 70 61 6e 20 63 6c 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 |
| 3bc00 | 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< |
| 3bc20 | 2f 73 70 61 6e 3e 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 | /span>;</code></pre>............ |
| 3bc40 | 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 43 61 73 74 69 6e | .........<h1.id="Casting">Castin |
| 3bc60 | 67 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 74 72 6f 6e | g</h1>........<p>.......A.<stron |
| 3bc80 | 67 3e 74 79 70 65 20 63 61 73 74 3c 2f 73 74 72 6f 6e 67 3e 20 63 6f 6e 76 65 72 74 73 20 61 20 | g>type.cast</strong>.converts.a. |
| 3bca0 | 76 61 6c 75 65 20 6f 66 20 6f 6e 65 20 74 79 70 65 20 74 6f 20 61 6e 6f 74 68 65 72 2e 0a 20 20 | value.of.one.type.to.another.... |
| 3bcc0 | 20 20 20 20 5a 69 67 20 68 61 73 20 3c 61 20 68 72 65 66 3d 22 23 49 6d 70 6c 69 63 69 74 2d 43 | ....Zig.has.<a.href="#Implicit-C |
| 3bce0 | 61 73 74 73 22 3e 49 6d 70 6c 69 63 69 74 20 43 61 73 74 73 3c 2f 61 3e 20 66 6f 72 20 63 6f 6e | asts">Implicit.Casts</a>.for.con |
| 3bd00 | 76 65 72 73 69 6f 6e 73 20 74 68 61 74 20 61 72 65 20 6b 6e 6f 77 6e 20 74 6f 20 62 65 20 63 6f | versions.that.are.known.to.be.co |
| 3bd20 | 6d 70 6c 65 74 65 6c 79 20 73 61 66 65 20 61 6e 64 20 75 6e 61 6d 62 69 67 75 6f 75 73 2c 0a 20 | mpletely.safe.and.unambiguous,.. |
| 3bd40 | 20 20 20 20 20 61 6e 64 20 3c 61 20 68 72 65 66 3d 22 23 45 78 70 6c 69 63 69 74 2d 43 61 73 74 | .....and.<a.href="#Explicit-Cast |
| 3bd60 | 73 22 3e 45 78 70 6c 69 63 69 74 20 43 61 73 74 73 3c 2f 61 3e 20 66 6f 72 20 63 6f 6e 76 65 72 | s">Explicit.Casts</a>.for.conver |
| 3bd80 | 73 69 6f 6e 73 20 74 68 61 74 20 6f 6e 65 20 77 6f 75 6c 64 20 6e 6f 74 20 77 61 6e 74 20 74 6f | sions.that.one.would.not.want.to |
| 3bda0 | 20 68 61 70 70 65 6e 20 6f 6e 20 61 63 63 69 64 65 6e 74 2e 0a 20 20 20 20 20 20 54 68 65 72 65 | .happen.on.accident........There |
| 3bdc0 | 20 69 73 20 61 6c 73 6f 20 61 20 74 68 69 72 64 20 6b 69 6e 64 20 6f 66 20 74 79 70 65 20 63 6f | .is.also.a.third.kind.of.type.co |
| 3bde0 | 6e 76 65 72 73 69 6f 6e 20 63 61 6c 6c 65 64 20 3c 61 20 68 72 65 66 3d 22 23 50 65 65 72 2d 54 | nversion.called.<a.href="#Peer-T |
| 3be00 | 79 70 65 2d 52 65 73 6f 6c 75 74 69 6f 6e 22 3e 50 65 65 72 20 54 79 70 65 20 52 65 73 6f 6c 75 | ype-Resolution">Peer.Type.Resolu |
| 3be20 | 74 69 6f 6e 3c 2f 61 3e 20 66 6f 72 0a 20 20 20 20 20 20 74 68 65 20 63 61 73 65 20 77 68 65 6e | tion</a>.for.......the.case.when |
| 3be40 | 20 61 20 72 65 73 75 6c 74 20 74 79 70 65 20 6d 75 73 74 20 62 65 20 64 65 63 69 64 65 64 20 67 | .a.result.type.must.be.decided.g |
| 3be60 | 69 76 65 6e 20 6d 75 6c 74 69 70 6c 65 20 6f 70 65 72 61 6e 64 20 74 79 70 65 73 2e 0a 20 20 20 | iven.multiple.operand.types..... |
| 3be80 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 49 6d 70 6c 69 63 69 74 2d 43 | ...</p>.......<h2.id="Implicit-C |
| 3bea0 | 61 73 74 73 22 3e 49 6d 70 6c 69 63 69 74 20 43 61 73 74 73 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 | asts">Implicit.Casts</h2>....... |
| 3bec0 | 20 3c 70 3e 0a 20 20 20 20 20 20 41 6e 20 69 6d 70 6c 69 63 69 74 20 63 61 73 74 20 6f 63 63 75 | .<p>.......An.implicit.cast.occu |
| 3bee0 | 72 73 20 77 68 65 6e 20 6f 6e 65 20 74 79 70 65 20 69 73 20 65 78 70 65 63 74 65 64 2c 20 62 75 | rs.when.one.type.is.expected,.bu |
| 3bf00 | 74 20 64 69 66 66 65 72 65 6e 74 20 74 79 70 65 20 69 73 20 70 72 6f 76 69 64 65 64 3a 0a 20 20 | t.different.type.is.provided:... |
| 3bf20 | 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 |
| 3bf40 | 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 |
| 3bf60 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 3c 2f 73 70 61 | "><span.class="tok-kw">test</spa |
| 3bf80 | 6e 3e 20 3c 73 70 61 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 | n>.<span.class="tok-str">"i |
| 3bfa0 | 6d 70 6c 69 63 69 74 20 63 61 73 74 20 2d 20 76 61 72 69 61 62 6c 65 20 64 65 63 6c 61 72 61 74 | mplicit.cast.-.variable.declarat |
| 3bfc0 | 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 |
| 3bfe0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 | ss="tok-kw">var</span>.a:.<span. |
| 3c000 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 | class="tok-type">u8</span>.=.<sp |
| 3c020 | 61 6e 20 63 6c 61 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>;. |
| 3c040 | 20 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 |
| 3c060 | 61 6e 3e 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 31 | an>.b:.<span.class="tok-type">u1 |
| 3c080 | 36 3c 2f 73 70 61 6e 3e 20 3d 20 61 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | 6</span>.=.a;.}..<span.class="to |
| 3c0a0 | 6b 2d 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 |
| 3c0c0 | 6f 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 2d 20 66 75 | ok-str">"implicit.cast.-.fu |
| 3c0e0 | 6e 63 74 69 6f 6e 20 63 61 6c 6c 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c | nction.call"</span>.{.....< |
| 3c100 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 | span.class="tok-kw">var</span>.a |
| 3c120 | 3a 20 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 |
| 3c140 | 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c | n>.=.<span.class="tok-number">1< |
| 3c160 | 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 66 6f 6f 28 61 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 | /span>;.....foo(a);.}..<span.cla |
| 3c180 | 73 73 3d 22 74 6f 6b 2d 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 |
| 3c1a0 | 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 62 3a 20 3c 73 70 61 6e 20 63 | s="tok-fn">foo</span>(b:.<span.c |
| 3c1c0 | 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 29 20 3c 73 70 61 | lass="tok-type">u16</span>).<spa |
| 3c1e0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b | n.class="tok-type">void</span>.{ |
| 3c200 | 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 |
| 3c220 | 61 6e 3e 20 3c 73 70 61 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">" |
| 3c240 | 69 6d 70 6c 69 63 69 74 20 63 61 73 74 20 2d 20 69 6e 76 6f 6b 65 20 61 20 74 79 70 65 20 61 73 | implicit.cast.-.invoke.a.type.as |
| 3c260 | 20 61 20 66 75 6e 63 74 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c | .a.function"</span>.{.....< |
| 3c280 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 | span.class="tok-kw">var</span>.a |
| 3c2a0 | 3a 20 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 |
| 3c2c0 | 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c | n>.=.<span.class="tok-number">1< |
| 3c2e0 | 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" |
| 3c300 | 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | >var</span>.b.=.<span.class="tok |
| 3c320 | 2d 74 79 70 65 22 3e 75 31 36 3c 2f 73 70 61 6e 3e 28 61 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f | -type">u16</span>(a);.}</code></ |
| 3c340 | 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 |
| 3c360 | 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 31 2f 33 20 69 6d 70 6c 69 63 | ig.test.test.zig.Test.1/3.implic |
| 3c380 | 69 74 20 63 61 73 74 20 2d 20 76 61 72 69 61 62 6c 65 20 64 65 63 6c 61 72 61 74 69 6f 6e 2e 2e | it.cast.-.variable.declaration.. |
| 3c3a0 | 2e 4f 4b 0a 54 65 73 74 20 32 2f 33 20 69 6d 70 6c 69 63 69 74 20 63 61 73 74 20 2d 20 66 75 6e | .OK.Test.2/3.implicit.cast.-.fun |
| 3c3c0 | 63 74 69 6f 6e 20 63 61 6c 6c 2e 2e 2e 4f 4b 0a 54 65 73 74 20 33 2f 33 20 69 6d 70 6c 69 63 69 | ction.call...OK.Test.3/3.implici |
| 3c3e0 | 74 20 63 61 73 74 20 2d 20 69 6e 76 6f 6b 65 20 61 20 74 79 70 65 20 61 73 20 61 20 66 75 6e 63 | t.cast.-.invoke.a.type.as.a.func |
| 3c400 | 74 69 6f 6e 2e 2e 2e 4f 4b 0a 41 6c 6c 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f | tion...OK.All.tests.passed..</co |
| 3c420 | 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 6d 70 6c 69 | de></pre>........<p>.......Impli |
| 3c440 | 63 69 74 20 63 61 73 74 73 20 61 72 65 20 6f 6e 6c 79 20 61 6c 6c 6f 77 65 64 20 77 68 65 6e 20 | cit.casts.are.only.allowed.when. |
| 3c460 | 69 74 20 69 73 20 63 6f 6d 70 6c 65 74 65 6c 79 20 75 6e 61 6d 62 69 67 75 6f 75 73 20 68 6f 77 | it.is.completely.unambiguous.how |
| 3c480 | 20 74 6f 20 67 65 74 20 66 72 6f 6d 20 6f 6e 65 20 74 79 70 65 20 74 6f 20 61 6e 6f 74 68 65 72 | .to.get.from.one.type.to.another |
| 3c4a0 | 2c 0a 20 20 20 20 20 20 61 6e 64 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 20 69 | ,.......and.the.transformation.i |
| 3c4c0 | 73 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 62 65 20 73 61 66 65 2e 0a 20 20 20 20 20 20 3c | s.guaranteed.to.be.safe........< |
| 3c4e0 | 2f 70 3e 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 49 6d 70 6c 69 63 69 74 2d 43 61 73 74 2d | /p>.......<h3.id="Implicit-Cast- |
| 3c500 | 53 74 72 69 63 74 65 72 2d 51 75 61 6c 69 66 69 63 61 74 69 6f 6e 22 3e 49 6d 70 6c 69 63 69 74 | Stricter-Qualification">Implicit |
| 3c520 | 20 43 61 73 74 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 68 | .Cast:.Stricter.Qualification</h |
| 3c540 | 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 56 61 6c 75 65 73 20 77 68 69 63 68 | 3>........<p>.......Values.which |
| 3c560 | 20 68 61 76 65 20 74 68 65 20 73 61 6d 65 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 61 74 | .have.the.same.representation.at |
| 3c580 | 20 72 75 6e 74 69 6d 65 20 63 61 6e 20 62 65 20 63 61 73 74 20 74 6f 20 69 6e 63 72 65 61 73 65 | .runtime.can.be.cast.to.increase |
| 3c5a0 | 20 74 68 65 20 73 74 72 69 63 74 6e 65 73 73 0a 20 20 20 20 20 20 6f 66 20 74 68 65 20 71 75 61 | .the.strictness.......of.the.qua |
| 3c5c0 | 6c 69 66 69 65 72 73 2c 20 6e 6f 20 6d 61 74 74 65 72 20 68 6f 77 20 6e 65 73 74 65 64 20 74 68 | lifiers,.no.matter.how.nested.th |
| 3c5e0 | 65 20 71 75 61 6c 69 66 69 65 72 73 20 61 72 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | e.qualifiers.are:.......</p>.... |
| 3c600 | 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 |
| 3c620 | 73 3d 22 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 |
| 3c640 | 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 2d 20 6e 6f 6e 2d 63 6f 6e 73 74 20 74 6f 20 | st</span></code>.-.non-const.to. |
| 3c660 | 63 6f 6e 73 74 20 69 73 20 61 6c 6c 6f 77 65 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | const.is.allowed</li>........... |
| 3c680 | 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 |
| 3c6a0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 6f 6c 61 74 69 6c 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | s="tok-kw">volatile</span></code |
| 3c6c0 | 3e 20 2d 20 6e 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 | >.-.non-volatile.to.volatile.is. |
| 3c6e0 | 61 6c 6c 6f 77 65 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 | allowed</li>...........<li><code |
| 3c700 | 20 63 6c 61 73 73 3d 22 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 |
| 3c720 | 22 3e 61 6c 69 67 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 2d 20 62 69 67 67 65 72 20 74 | ">align</span></code>.-.bigger.t |
| 3c740 | 6f 20 73 6d 61 6c 6c 65 72 20 61 6c 69 67 6e 6d 65 6e 74 20 69 73 20 61 6c 6c 6f 77 65 64 20 3c | o.smaller.alignment.is.allowed.< |
| 3c760 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 45 72 72 | /li>...........<li><a.href="#Err |
| 3c780 | 6f 72 2d 53 65 74 2d 54 79 70 65 22 3e 65 72 72 6f 72 20 73 65 74 73 3c 2f 61 3e 20 74 6f 20 73 | or-Set-Type">error.sets</a>.to.s |
| 3c7a0 | 75 70 65 72 73 65 74 73 20 69 73 20 61 6c 6c 6f 77 65 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c | upersets.is.allowed</li>.......< |
| 3c7c0 | 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 73 65 20 63 61 73 74 73 | /ul>.......<p>.......These.casts |
| 3c7e0 | 20 61 72 65 20 6e 6f 2d 6f 70 73 20 61 74 20 72 75 6e 74 69 6d 65 20 73 69 6e 63 65 20 74 68 65 | .are.no-ops.at.runtime.since.the |
| 3c800 | 20 76 61 6c 75 65 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 64 6f 65 73 20 6e 6f 74 20 63 | .value.representation.does.not.c |
| 3c820 | 68 61 6e 67 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 | hange........</p>.......<p.class |
| 3c840 | 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 |
| 3c860 | 6c 61 73 73 3d 22 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"> |
| 3c880 | 74 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 |
| 3c8a0 | 22 3e 26 71 75 6f 74 3b 69 6d 70 6c 69 63 69 74 20 63 61 73 74 20 2d 20 63 6f 6e 73 74 20 71 75 | ">"implicit.cast.-.const.qu |
| 3c8c0 | 61 6c 69 66 69 63 61 74 69 6f 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c | alification"</span>.{.....< |
| 3c8e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 | span.class="tok-kw">var</span>.a |
| 3c900 | 3a 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 |
| 3c920 | 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | an>.=.<span.class="tok-number">1 |
| 3c940 | 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 |
| 3c960 | 22 3e 76 61 72 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 | ">var</span>.b:.*<span.class="to |
| 3c980 | 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 26 61 6d 70 3b 61 3b 0a 20 20 20 | k-type">i32</span>.=.&a;.... |
| 3c9a0 | 20 66 6f 6f 28 62 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | .foo(b);.}..<span.class="tok-kw" |
| 3c9c0 | 3e 66 6e 3c 2f 73 70 61 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"> |
| 3c9e0 | 66 6f 6f 3c 2f 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 | foo</span>(a:.*<span.class="tok- |
| 3ca00 | 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 |
| 3ca20 | 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= |
| 3ca40 | 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 7d 3c 2f 63 6f 64 65 3e | "tok-type">void</span>.{}</code> |
| 3ca60 | 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">$ |
| 3ca80 | 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 31 2f 31 20 69 6d 70 6c | .zig.test.test.zig.Test.1/1.impl |
| 3caa0 | 69 63 69 74 20 63 61 73 74 20 2d 20 63 6f 6e 73 74 20 71 75 61 6c 69 66 69 63 61 74 69 6f 6e 2e | icit.cast.-.const.qualification. |
| 3cac0 | 2e 2e 4f 4b 0a 41 6c 6c 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.tests.passed..</code></ |
| 3cae0 | 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 61 64 64 69 74 69 6f | pre>........<p>.......In.additio |
| 3cb00 | 6e 2c 20 70 6f 69 6e 74 65 72 73 20 69 6d 70 6c 69 63 69 74 6c 79 20 63 61 73 74 20 74 6f 20 63 | n,.pointers.implicitly.cast.to.c |
| 3cb20 | 6f 6e 73 74 20 6f 70 74 69 6f 6e 61 6c 20 70 6f 69 6e 74 65 72 73 3a 0a 20 20 20 20 20 20 3c 2f | onst.optional.pointers:.......</ |
| 3cb40 | 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 |
| 3cb60 | 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 |
| 3cb80 | 6e 20 63 6c 61 73 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 |
| 3cba0 | 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 |
| 3cbc0 | 6d 70 6f 72 74 3c 2f 73 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 |
| 3cbe0 | 72 22 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 |
| 3cc00 | 6e 20 63 6c 61 73 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 | n.class="tok-kw">const</span>.as |
| 3cc20 | 73 65 72 74 20 3d 20 73 74 64 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 3c 73 70 61 6e 20 63 | sert.=.std.debug.assert;.<span.c |
| 3cc40 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 65 6d 20 3d | lass="tok-kw">const</span>.mem.= |
| 3cc60 | 20 73 74 64 2e 6d 65 6d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | .std.mem;..<span.class="tok-kw"> |
| 3cc80 | 74 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 |
| 3cca0 | 22 3e 26 71 75 6f 74 3b 63 61 73 74 20 2a 5b 31 5d 5b 2a 5d 63 6f 6e 73 74 20 75 38 20 74 6f 20 | ">"cast.*[1][*]const.u8.to. |
| 3ccc0 | 5b 2a 5d 63 6f 6e 73 74 20 3f 5b 2a 5d 63 6f 6e 73 74 20 75 38 26 71 75 6f 74 3b 3c 2f 73 70 61 | [*]const.?[*]const.u8"</spa |
| 3cce0 | 6e 3e 20 7b 0a 20 20 20 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 |
| 3cd00 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 77 69 6e 64 6f 77 5f 6e 61 6d 65 20 3d 20 5b 3c 73 70 61 6e 20 | nst</span>.window_name.=.[<span. |
| 3cd20 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 5b 2a 5d 3c | class="tok-number">1</span>][*]< |
| 3cd40 | 73 70 61 6e 20 63 6c 61 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> |
| 3cd60 | 20 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 |
| 3cd80 | 3e 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 63 26 71 75 6f 74 3b 77 | >{<span.class="tok-str">c"w |
| 3cda0 | 69 6e 64 6f 77 20 6e 61 6d 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 7d 3b 0a 20 20 20 20 3c 73 | indow.name"</span>};.....<s |
| 3cdc0 | 70 61 6e 20 63 6c 61 73 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>. |
| 3cde0 | 78 3a 20 5b 2a 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 | x:.[*]<span.class="tok-kw">const |
| 3ce00 | 3c 2f 73 70 61 6e 3e 20 3f 5b 2a 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | </span>.?[*]<span.class="tok-kw" |
| 3ce20 | 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 |
| 3ce40 | 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 26 61 6d 70 3b 77 69 6e 64 6f 77 5f 6e 61 6d | ype">u8</span>.=.&window_nam |
| 3ce60 | 65 3b 0a 20 20 20 20 61 73 73 65 72 74 28 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 | e;.....assert(mem.eql(<span.clas |
| 3ce80 | 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 63 73 74 72 | s="tok-type">u8</span>,.std.cstr |
| 3cea0 | 2e 74 6f 53 6c 69 63 65 43 6f 6e 73 74 28 78 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | .toSliceConst(x[<span.class="tok |
| 3cec0 | 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 2e 3f 29 2c 20 3c 73 70 61 6e 20 63 6c 61 | -number">0</span>].?),.<span.cla |
| 3cee0 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 77 69 6e 64 6f 77 20 6e 61 6d 65 26 71 | ss="tok-str">"window.name&q |
| 3cf00 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 | uot;</span>));.}</code></pre><pr |
| 3cf20 | 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 |
| 3cf40 | 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 31 2f 31 20 63 61 73 74 20 2a 5b 31 5d 5b 2a 5d 63 | .test.zig.Test.1/1.cast.*[1][*]c |
| 3cf60 | 6f 6e 73 74 20 75 38 20 74 6f 20 5b 2a 5d 63 6f 6e 73 74 20 3f 5b 2a 5d 63 6f 6e 73 74 20 75 38 | onst.u8.to.[*]const.?[*]const.u8 |
| 3cf80 | 2e 2e 2e 4f 4b 0a 41 6c 6c 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.tests.passed..</code>< |
| 3cfa0 | 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 49 6d 70 6c | /pre>...............<h3.id="Impl |
| 3cfc0 | 69 63 69 74 2d 43 61 73 74 2d 49 6e 74 65 67 65 72 2d 61 6e 64 2d 46 6c 6f 61 74 2d 57 69 64 65 | icit-Cast-Integer-and-Float-Wide |
| 3cfe0 | 6e 69 6e 67 22 3e 49 6d 70 6c 69 63 69 74 20 43 61 73 74 3a 20 49 6e 74 65 67 65 72 20 61 6e 64 | ning">Implicit.Cast:.Integer.and |
| 3d000 | 20 46 6c 6f 61 74 20 57 69 64 65 6e 69 6e 67 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a | .Float.Widening</h3>........<p>. |
| 3d020 | 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 |
| 3d040 | 72 73 3c 2f 61 3e 20 69 6d 70 6c 69 63 69 74 6c 79 20 63 61 73 74 20 74 6f 20 69 6e 74 65 67 65 | rs</a>.implicitly.cast.to.intege |
| 3d060 | 72 20 74 79 70 65 73 20 77 68 69 63 68 20 63 61 6e 20 72 65 70 72 65 73 65 6e 74 20 65 76 65 72 | r.types.which.can.represent.ever |
| 3d080 | 79 20 76 61 6c 75 65 20 6f 66 20 74 68 65 20 6f 6c 64 20 74 79 70 65 2c 20 61 6e 64 20 6c 69 6b | y.value.of.the.old.type,.and.lik |
| 3d0a0 | 65 77 69 73 65 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 73 22 3e 46 6c | ewise.......<a.href="#Floats">Fl |
| 3d0c0 | 6f 61 74 73 3c 2f 61 3e 20 69 6d 70 6c 69 63 69 74 6c 79 20 63 61 73 74 20 74 6f 20 66 6c 6f 61 | oats</a>.implicitly.cast.to.floa |
| 3d0e0 | 74 20 74 79 70 65 73 20 77 68 69 63 68 20 63 61 6e 20 72 65 70 72 65 73 65 6e 74 20 65 76 65 72 | t.types.which.can.represent.ever |
| 3d100 | 79 20 76 61 6c 75 65 20 6f 66 20 74 68 65 20 6f 6c 64 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c | y.value.of.the.old.type........< |
| 3d120 | 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 |
| 3d140 | 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 |
| 3d160 | 61 6e 20 63 6c 61 73 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 |
| 3d180 | 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">@ |
| 3d1a0 | 69 6d 70 6f 72 74 3c 2f 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 |
| 3d1c0 | 74 72 22 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 |
| 3d1e0 | 61 6e 20 63 6c 61 73 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 |
| 3d200 | 73 73 65 72 74 20 3d 20 73 74 64 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 3c 73 70 61 6e 20 | ssert.=.std.debug.assert;.<span. |
| 3d220 | 63 6c 61 73 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. |
| 3d240 | 3d 20 73 74 64 2e 6d 65 6d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | =.std.mem;..<span.class="tok-kw" |
| 3d260 | 3e 74 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 |
| 3d280 | 72 22 3e 26 71 75 6f 74 3b 69 6e 74 65 67 65 72 20 77 69 64 65 6e 69 6e 67 26 71 75 6f 74 3b 3c | r">"integer.widening"< |
| 3d2a0 | 2f 73 70 61 6e 3e 20 7b 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 |
| 3d2c0 | 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ">var</span>.a:.<span.class="tok |
| 3d2e0 | 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=" |
| 3d300 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 35 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 | tok-number">250</span>;.....<spa |
| 3d320 | 6e 20 63 6c 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 | n.class="tok-kw">var</span>.b:.< |
| 3d340 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 31 36 3c 2f 73 70 61 6e 3e | span.class="tok-type">u16</span> |
| 3d360 | 20 3d 20 61 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 | .=.a;.....<span.class="tok-kw">v |
| 3d380 | 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 6b 2d 74 79 | ar</span>.c:.<span.class="tok-ty |
| 3d3a0 | 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 62 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | pe">u32</span>.=.b;.....<span.cl |
| 3d3c0 | 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 70 61 6e | ass="tok-kw">var</span>.d:.<span |
| 3d3e0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 36 34 3c 2f 73 70 61 6e 3e 20 3d 20 63 | .class="tok-type">u64</span>.=.c |
| 3d400 | 3b 0a 20 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</ |
| 3d420 | 73 70 61 6e 3e 20 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | span>.e:.<span.class="tok-type"> |
| 3d440 | 75 36 34 3c 2f 73 70 61 6e 3e 20 3d 20 64 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | u64</span>.=.d;.....<span.class= |
| 3d460 | 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 66 3a 20 3c 73 70 61 6e 20 63 6c 61 | "tok-kw">var</span>.f:.<span.cla |
| 3d480 | 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 20 3d 20 65 3b 0a 20 | ss="tok-type">u128</span>.=.e;.. |
| 3d4a0 | 20 20 20 61 73 73 65 72 74 28 66 20 3d 3d 20 61 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | ...assert(f.==.a);.}..<span.clas |
| 3d4c0 | 73 3d 22 74 6f 6b 2d 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 |
| 3d4e0 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 6d 70 6c 69 63 69 74 20 75 6e 73 69 | ss="tok-str">"implicit.unsi |
| 3d500 | 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 65 72 26 71 | gned.integer.to.signed.integer&q |
| 3d520 | 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 |
| 3d540 | 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-kw">var</span>.a:.<span.class |
| 3d560 | 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 |
| 3d580 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 35 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 | ass="tok-number">250</span>;.... |
| 3d5a0 | 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> |
| 3d5c0 | 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 31 36 3c 2f | .b:.<span.class="tok-type">i16</ |
| 3d5e0 | 73 70 61 6e 3e 20 3d 20 61 3b 0a 20 20 20 20 61 73 73 65 72 74 28 62 20 3d 3d 20 3c 73 70 61 6e | span>.=.a;.....assert(b.==.<span |
| 3d600 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 35 30 3c 2f 73 70 61 6e 3e 29 3b | .class="tok-number">250</span>); |
| 3d620 | 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 |
| 3d640 | 70 61 6e 3e 20 3c 73 70 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">" |
| 3d660 | 3b 66 6c 6f 61 74 20 77 69 64 65 6e 69 6e 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | ;float.widening"</span>.{.. |
| 3d680 | 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 |
| 3d6a0 | 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 66 31 36 | n>.a:.<span.class="tok-type">f16 |
| 3d6c0 | 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 |
| 3d6e0 | 72 22 3e 31 32 2e 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 | r">12.34</span>;.....<span.class |
| 3d700 | 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 3a 20 3c 73 70 61 6e 20 63 6c | ="tok-kw">var</span>.b:.<span.cl |
| 3d720 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 61 3b 0a 20 | ass="tok-type">f32</span>.=.a;.. |
| 3d740 | 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 |
| 3d760 | 6e 3e 20 63 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 36 34 | n>.c:.<span.class="tok-type">f64 |
| 3d780 | 3c 2f 73 70 61 6e 3e 20 3d 20 62 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | </span>.=.b;.....<span.class="to |
| 3d7a0 | 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 64 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | k-kw">var</span>.d:.<span.class= |
| 3d7c0 | 22 74 6f 6b 2d 74 79 70 65 22 3e 66 31 32 38 3c 2f 73 70 61 6e 3e 20 3d 20 63 3b 0a 20 20 20 20 | "tok-type">f128</span>.=.c;..... |
| 3d7e0 | 61 73 73 65 72 74 28 64 20 3d 3d 20 61 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 | assert(d.==.a);.}</code></pre><p |
| 3d800 | 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 |
| 3d820 | 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 31 2f 33 20 69 6e 74 65 67 65 72 20 77 69 64 65 | t.test.zig.Test.1/3.integer.wide |
| 3d840 | 6e 69 6e 67 2e 2e 2e 4f 4b 0a 54 65 73 74 20 32 2f 33 20 69 6d 70 6c 69 63 69 74 20 75 6e 73 69 | ning...OK.Test.2/3.implicit.unsi |
| 3d860 | 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 65 72 2e 2e | gned.integer.to.signed.integer.. |
| 3d880 | 2e 4f 4b 0a 54 65 73 74 20 33 2f 33 20 66 6c 6f 61 74 20 77 69 64 65 6e 69 6e 67 2e 2e 2e 4f 4b | .OK.Test.3/3.float.widening...OK |
| 3d8a0 | 0a 41 6c 6c 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 | .All.tests.passed..</code></pre> |
| 3d8c0 | 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 49 6d 70 6c 69 63 69 74 2d | ...............<h3.id="Implicit- |
| 3d8e0 | 43 61 73 74 2d 41 72 72 61 79 73 22 3e 49 6d 70 6c 69 63 69 74 20 43 61 73 74 3a 20 41 72 72 61 | Cast-Arrays">Implicit.Cast:.Arra |
| 3d900 | 79 73 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 5b 4e 5d 54 20 74 6f 20 | ys</h3>........<p>TODO:.[N]T.to. |
| 3d920 | 5b 5d 63 6f 6e 73 74 20 54 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 2a 63 6f | []const.T</p>.......<p>TODO:.*co |
| 3d940 | 6e 73 74 20 5b 4e 5d 54 20 74 6f 20 5b 5d 63 6f 6e 73 74 20 54 3c 2f 70 3e 0a 20 20 20 20 20 20 | nst.[N]T.to.[]const.T</p>....... |
| 3d960 | 3c 70 3e 54 4f 44 4f 3a 20 5b 4e 5d 54 20 74 6f 20 2a 63 6f 6e 73 74 20 5b 5d 63 6f 6e 73 74 20 | <p>TODO:.[N]T.to.*const.[]const. |
| 3d980 | 54 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 5b 4e 5d 54 20 74 6f 20 3f 5b 5d | T</p>.......<p>TODO:.[N]T.to.?[] |
| 3d9a0 | 63 6f 6e 73 74 20 54 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 2a 5b 4e 5d 54 | const.T</p>.......<p>TODO:.*[N]T |
| 3d9c0 | 20 74 6f 20 5b 5d 54 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 2a 5b 4e 5d 54 | .to.[]T</p>.......<p>TODO:.*[N]T |
| 3d9e0 | 20 74 6f 20 5b 2a 5d 54 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 2a 5b 4e 5d | .to.[*]T</p>.......<p>TODO:.*[N] |
| 3da00 | 54 20 74 6f 20 3f 5b 2a 5d 54 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 2a 54 | T.to.?[*]T</p>.......<p>TODO:.*T |
| 3da20 | 20 74 6f 20 2a 5b 31 5d 54 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 5b 4e 5d | .to.*[1]T</p>.......<p>TODO:.[N] |
| 3da40 | 54 20 74 6f 20 45 21 5b 5d 63 6f 6e 73 74 20 54 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 | T.to.E![]const.T</p>............ |
| 3da60 | 20 20 3c 68 33 20 69 64 3d 22 49 6d 70 6c 69 63 69 74 2d 43 61 73 74 2d 4f 70 74 69 6f 6e 61 6c | ..<h3.id="Implicit-Cast-Optional |
| 3da80 | 73 22 3e 49 6d 70 6c 69 63 69 74 20 43 61 73 74 3a 20 4f 70 74 69 6f 6e 61 6c 73 3c 2f 68 33 3e | s">Implicit.Cast:.Optionals</h3> |
| 3daa0 | 0a 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 54 20 74 6f 20 3f 54 3c 2f 70 3e 0a 20 20 20 | ........<p>TODO:.T.to.?T</p>.... |
| 3dac0 | 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 54 20 74 6f 20 45 21 3f 54 3c 2f 70 3e 0a 20 20 20 20 20 20 | ...<p>TODO:.T.to.E!?T</p>....... |
| 3dae0 | 3c 70 3e 54 4f 44 4f 3a 20 6e 75 6c 6c 20 74 6f 20 3f 54 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 | <p>TODO:.null.to.?T</p>......... |
| 3db00 | 20 20 20 20 20 3c 68 33 20 69 64 3d 22 49 6d 70 6c 69 63 69 74 2d 43 61 73 74 2d 54 2d 74 6f 2d | .....<h3.id="Implicit-Cast-T-to- |
| 3db20 | 45 54 22 3e 49 6d 70 6c 69 63 69 74 20 43 61 73 74 3a 20 54 20 74 6f 20 45 21 54 3c 2f 68 33 3e | ET">Implicit.Cast:.T.to.E!T</h3> |
| 3db40 | 0a 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 | ........<p>TODO</p>............. |
| 3db60 | 20 3c 68 33 20 69 64 3d 22 49 6d 70 6c 69 63 69 74 2d 43 61 73 74 2d 45 2d 74 6f 2d 45 54 22 3e | .<h3.id="Implicit-Cast-E-to-ET"> |
| 3db80 | 49 6d 70 6c 69 63 69 74 20 43 61 73 74 3a 20 45 20 74 6f 20 45 21 54 3c 2f 68 33 3e 0a 0a 20 20 | Implicit.Cast:.E.to.E!T</h3>.... |
| 3dba0 | 20 20 20 20 3c 70 3e 54 4f 44 4f 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 | ....<p>TODO</p>..............<h3 |
| 3dbc0 | 20 69 64 3d 22 49 6d 70 6c 69 63 69 74 2d 43 61 73 74 2d 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 2d | .id="Implicit-Cast-comptime_int- |
| 3dbe0 | 74 6f 2d 63 6f 6e 73 74 2d 69 6e 74 65 67 65 72 22 3e 49 6d 70 6c 69 63 69 74 20 43 61 73 74 3a | to-const-integer">Implicit.Cast: |
| 3dc00 | 20 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 20 74 6f 20 2a 63 6f 6e 73 74 20 69 6e 74 65 67 65 72 3c | .comptime_int.to.*const.integer< |
| 3dc20 | 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 | /h3>........<p>TODO</p>......... |
| 3dc40 | 20 20 20 20 20 3c 68 33 20 69 64 3d 22 49 6d 70 6c 69 63 69 74 2d 43 61 73 74 2d 63 6f 6d 70 74 | .....<h3.id="Implicit-Cast-compt |
| 3dc60 | 69 6d 65 5f 66 6c 6f 61 74 2d 74 6f 2d 63 6f 6e 73 74 2d 66 6c 6f 61 74 22 3e 49 6d 70 6c 69 63 | ime_float-to-const-float">Implic |
| 3dc80 | 69 74 20 43 61 73 74 3a 20 63 6f 6d 70 74 69 6d 65 5f 66 6c 6f 61 74 20 74 6f 20 2a 63 6f 6e 73 | it.Cast:.comptime_float.to.*cons |
| 3dca0 | 74 20 66 6c 6f 61 74 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3c 2f 70 3e 0a | t.float</h3>........<p>TODO</p>. |
| 3dcc0 | 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 49 6d 70 6c 69 63 69 74 2d 43 61 | .............<h3.id="Implicit-Ca |
| 3dce0 | 73 74 2d 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2d 6b 6e 6f 77 6e 2d 6e 75 6d 62 65 72 73 22 3e 49 | st-compile-time-known-numbers">I |
| 3dd00 | 6d 70 6c 69 63 69 74 20 43 61 73 74 3a 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 6b 6e 6f 77 6e | mplicit.Cast:.compile-time.known |
| 3dd20 | 20 6e 75 6d 62 65 72 73 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3c 2f 70 3e | .numbers</h3>........<p>TODO</p> |
| 3dd40 | 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 49 6d 70 6c 69 63 69 74 2d 43 | ..............<h3.id="Implicit-C |
| 3dd60 | 61 73 74 2d 75 6e 69 6f 6e 2d 74 6f 2d 65 6e 75 6d 22 3e 49 6d 70 6c 69 63 69 74 20 43 61 73 74 | ast-union-to-enum">Implicit.Cast |
| 3dd80 | 3a 20 75 6e 69 6f 6e 20 74 6f 20 65 6e 75 6d 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 | :.union.to.enum</h3>........<p>T |
| 3dda0 | 4f 44 4f 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 49 6d 70 | ODO</p>..............<h3.id="Imp |
| 3ddc0 | 6c 69 63 69 74 2d 43 61 73 74 2d 65 6e 75 6d 2d 74 6f 2d 75 6e 69 6f 6e 22 3e 49 6d 70 6c 69 63 | licit-Cast-enum-to-union">Implic |
| 3dde0 | 69 74 20 43 61 73 74 3a 20 65 6e 75 6d 20 74 6f 20 75 6e 69 6f 6e 3c 2f 68 33 3e 0a 0a 20 20 20 | it.Cast:.enum.to.union</h3>..... |
| 3de00 | 20 20 20 3c 70 3e 54 4f 44 4f 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 | ...<p>TODO</p>..............<h3. |
| 3de20 | 69 64 3d 22 49 6d 70 6c 69 63 69 74 2d 43 61 73 74 2d 54 2d 74 6f 2d 54 2d 77 68 65 6e 2d 73 69 | id="Implicit-Cast-T-to-T-when-si |
| 3de40 | 7a 65 4f 66 54 2d 2d 22 3e 49 6d 70 6c 69 63 69 74 20 43 61 73 74 3a 20 54 20 74 6f 20 2a 54 20 | zeOfT--">Implicit.Cast:.T.to.*T. |
| 3de60 | 77 68 65 6e 20 40 73 69 7a 65 4f 66 28 54 29 20 3d 3d 20 30 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 | when.@sizeOf(T).==.0</h3>....... |
| 3de80 | 20 3c 70 3e 54 4f 44 4f 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 | .<p>TODO</p>..............<h3.id |
| 3dea0 | 3d 22 49 6d 70 6c 69 63 69 74 2d 43 61 73 74 2d 75 6e 64 65 66 69 6e 65 64 22 3e 49 6d 70 6c 69 | ="Implicit-Cast-undefined">Impli |
| 3dec0 | 63 69 74 20 43 61 73 74 3a 20 75 6e 64 65 66 69 6e 65 64 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 | cit.Cast:.undefined</h3>........ |
| 3dee0 | 3c 70 3e 54 4f 44 4f 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d | <p>TODO</p>..............<h3.id= |
| 3df00 | 22 49 6d 70 6c 69 63 69 74 2d 43 61 73 74 2d 54 2d 74 6f 2d 63 6f 6e 73 74 2d 54 22 3e 49 6d 70 | "Implicit-Cast-T-to-const-T">Imp |
| 3df20 | 6c 69 63 69 74 20 43 61 73 74 3a 20 54 20 74 6f 20 2a 63 6f 6e 73 74 20 54 3c 2f 68 33 3e 0a 0a | licit.Cast:.T.to.*const.T</h3>.. |
| 3df40 | 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a | ......<p>TODO</p>............... |
| 3df60 | 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 45 78 70 6c 69 63 69 74 2d 43 61 73 74 73 22 3e 45 | .......<h2.id="Explicit-Casts">E |
| 3df80 | 78 70 6c 69 63 69 74 20 43 61 73 74 73 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | xplicit.Casts</h2>........<p>... |
| 3dfa0 | 20 20 20 20 45 78 70 6c 69 63 69 74 20 63 61 73 74 73 20 61 72 65 20 70 65 72 66 6f 72 6d 65 64 | ....Explicit.casts.are.performed |
| 3dfc0 | 20 76 69 61 20 3c 61 20 68 72 65 66 3d 22 23 42 75 69 6c 74 69 6e 2d 46 75 6e 63 74 69 6f 6e 73 | .via.<a.href="#Builtin-Functions |
| 3dfe0 | 22 3e 42 75 69 6c 74 69 6e 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 53 | ">Builtin.Functions</a>........S |
| 3e000 | 6f 6d 65 20 65 78 70 6c 69 63 69 74 20 63 61 73 74 73 20 61 72 65 20 73 61 66 65 3b 20 73 6f 6d | ome.explicit.casts.are.safe;.som |
| 3e020 | 65 20 61 72 65 20 6e 6f 74 2e 0a 20 20 20 20 20 20 53 6f 6d 65 20 65 78 70 6c 69 63 69 74 20 63 | e.are.not........Some.explicit.c |
| 3e040 | 61 73 74 73 20 70 65 72 66 6f 72 6d 20 6c 61 6e 67 75 61 67 65 2d 6c 65 76 65 6c 20 61 73 73 65 | asts.perform.language-level.asse |
| 3e060 | 72 74 69 6f 6e 73 3b 20 73 6f 6d 65 20 64 6f 20 6e 6f 74 2e 0a 20 20 20 20 20 20 53 6f 6d 65 20 | rtions;.some.do.not........Some. |
| 3e080 | 65 78 70 6c 69 63 69 74 20 63 61 73 74 73 20 61 72 65 20 6e 6f 2d 6f 70 73 20 61 74 20 72 75 6e | explicit.casts.are.no-ops.at.run |
| 3e0a0 | 74 69 6d 65 3b 20 73 6f 6d 65 20 61 72 65 20 6e 6f 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | time;.some.are.not........</p>.. |
| 3e0c0 | 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d | .....<ul>...........<li><a.href= |
| 3e0e0 | 22 23 62 69 74 43 61 73 74 22 3e 40 62 69 74 43 61 73 74 3c 2f 61 3e 20 2d 20 63 68 61 6e 67 65 | "#bitCast">@bitCast</a>.-.change |
| 3e100 | 20 74 79 70 65 20 62 75 74 20 6d 61 69 6e 74 61 69 6e 20 62 69 74 20 72 65 70 72 65 73 65 6e 74 | .type.but.maintain.bit.represent |
| 3e120 | 61 74 69 6f 6e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 | ation</li>...........<li><a.href |
| 3e140 | 3d 22 23 61 6c 69 67 6e 43 61 73 74 22 3e 40 61 6c 69 67 6e 43 61 73 74 3c 2f 61 3e 20 2d 20 6d | ="#alignCast">@alignCast</a>.-.m |
| 3e160 | 61 6b 65 20 61 20 70 6f 69 6e 74 65 72 20 68 61 76 65 20 6d 6f 72 65 20 61 6c 69 67 6e 6d 65 6e | ake.a.pointer.have.more.alignmen |
| 3e180 | 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 62 | t</li>...........<li><a.href="#b |
| 3e1a0 | 6f 6f 6c 54 6f 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 | oolToInt">@boolToInt</a>.-.conve |
| 3e1c0 | 72 74 20 74 72 75 65 20 74 6f 20 31 20 61 6e 64 20 66 61 6c 73 65 20 74 6f 20 30 3c 2f 6c 69 3e | rt.true.to.1.and.false.to.0</li> |
| 3e1e0 | 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 79 74 65 73 54 6f | ...........<li><a.href="#bytesTo |
| 3e200 | 53 6c 69 63 65 22 3e 40 62 79 74 65 73 54 6f 53 6c 69 63 65 3c 2f 61 3e 20 2d 20 63 6f 6e 76 65 | Slice">@bytesToSlice</a>.-.conve |
| 3e220 | 72 74 20 61 20 73 6c 69 63 65 20 6f 66 20 62 79 74 65 73 20 74 6f 20 61 20 73 6c 69 63 65 20 6f | rt.a.slice.of.bytes.to.a.slice.o |
| 3e240 | 66 20 61 6e 6f 74 68 65 72 20 74 79 70 65 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c | f.another.type</li>...........<l |
| 3e260 | 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 |
| 3e280 | 74 3c 2f 61 3e 20 2d 20 6f 62 74 61 69 6e 20 74 68 65 20 69 6e 74 65 67 65 72 20 74 61 67 20 76 | t</a>.-.obtain.the.integer.tag.v |
| 3e2a0 | 61 6c 75 65 20 6f 66 20 61 6e 20 65 6e 75 6d 20 6f 72 20 74 61 67 67 65 64 20 75 6e 69 6f 6e 3c | alue.of.an.enum.or.tagged.union< |
| 3e2c0 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 65 72 72 | /li>...........<li><a.href="#err |
| 3e2e0 | 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 2d 20 63 6f 6e 76 65 | SetCast">@errSetCast</a>.-.conve |
| 3e300 | 72 74 20 74 6f 20 61 20 73 6d 61 6c 6c 65 72 20 65 72 72 6f 72 20 73 65 74 3c 2f 6c 69 3e 0a 20 | rt.to.a.smaller.error.set</li>.. |
| 3e320 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 65 72 72 6f 72 54 6f 49 6e | .........<li><a.href="#errorToIn |
| 3e340 | 74 22 3e 40 65 72 72 6f 72 54 6f 49 6e 74 3c 2f 61 3e 20 2d 20 6f 62 74 61 69 6e 20 74 68 65 20 | t">@errorToInt</a>.-.obtain.the. |
| 3e360 | 69 6e 74 65 67 65 72 20 76 61 6c 75 65 20 6f 66 20 61 6e 20 65 72 72 6f 72 20 63 6f 64 65 3c 2f | integer.value.of.an.error.code</ |
| 3e380 | 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 66 6c 6f 61 | li>...........<li><a.href="#floa |
| 3e3a0 | 74 43 61 73 74 22 3e 40 66 6c 6f 61 74 43 61 73 74 3c 2f 61 3e 20 2d 20 63 6f 6e 76 65 72 74 20 | tCast">@floatCast</a>.-.convert. |
| 3e3c0 | 61 20 6c 61 72 67 65 72 20 66 6c 6f 61 74 20 74 6f 20 61 20 73 6d 61 6c 6c 65 72 20 66 6c 6f 61 | a.larger.float.to.a.smaller.floa |
| 3e3e0 | 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 66 | t</li>...........<li><a.href="#f |
| 3e400 | 6c 6f 61 74 54 6f 49 6e 74 22 3e 40 66 6c 6f 61 74 54 6f 49 6e 74 3c 2f 61 3e 20 2d 20 6f 62 74 | loatToInt">@floatToInt</a>.-.obt |
| 3e420 | 61 69 6e 20 74 68 65 20 69 6e 74 65 67 65 72 20 70 61 72 74 20 6f 66 20 61 20 66 6c 6f 61 74 20 | ain.the.integer.part.of.a.float. |
| 3e440 | 76 61 6c 75 65 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 | value</li>...........<li><a.href |
| 3e460 | 3d 22 23 69 6e 74 43 61 73 74 22 3e 40 69 6e 74 43 61 73 74 3c 2f 61 3e 20 2d 20 63 6f 6e 76 65 | ="#intCast">@intCast</a>.-.conve |
| 3e480 | 72 74 20 62 65 74 77 65 65 6e 20 69 6e 74 65 67 65 72 20 74 79 70 65 73 3c 2f 6c 69 3e 0a 20 20 | rt.between.integer.types</li>... |
| 3e4a0 | 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 45 6e 75 6d 22 | ........<li><a.href="#intToEnum" |
| 3e4c0 | 3e 40 69 6e 74 54 6f 45 6e 75 6d 3c 2f 61 3e 20 2d 20 6f 62 74 61 69 6e 20 61 6e 20 65 6e 75 6d | >@intToEnum</a>.-.obtain.an.enum |
| 3e4e0 | 20 76 61 6c 75 65 20 62 61 73 65 64 20 6f 6e 20 69 74 73 20 69 6e 74 65 67 65 72 20 74 61 67 20 | .value.based.on.its.integer.tag. |
| 3e500 | 76 61 6c 75 65 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 | value</li>...........<li><a.href |
| 3e520 | 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 61 3e 20 2d | ="#intToError">@intToError</a>.- |
| 3e540 | 20 6f 62 74 61 69 6e 20 61 6e 20 65 72 72 6f 72 20 63 6f 64 65 20 62 61 73 65 64 20 6f 6e 20 69 | .obtain.an.error.code.based.on.i |
| 3e560 | 74 73 20 69 6e 74 65 67 65 72 20 76 61 6c 75 65 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | ts.integer.value</li>........... |
| 3e580 | 3c 6c 69 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 | <li><a.href="#intToFloat">@intTo |
| 3e5a0 | 46 6c 6f 61 74 3c 2f 61 3e 20 2d 20 63 6f 6e 76 65 72 74 20 61 6e 20 69 6e 74 65 67 65 72 20 74 | Float</a>.-.convert.an.integer.t |
| 3e5c0 | 6f 20 61 20 66 6c 6f 61 74 20 76 61 6c 75 65 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | o.a.float.value</li>...........< |
| 3e5e0 | 6c 69 3e 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 | li><a.href="#intToPtr">@intToPtr |
| 3e600 | 3c 2f 61 3e 20 2d 20 63 6f 6e 76 65 72 74 20 61 6e 20 61 64 64 72 65 73 73 20 74 6f 20 61 20 70 | </a>.-.convert.an.address.to.a.p |
| 3e620 | 6f 69 6e 74 65 72 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 | ointer</li>...........<li><a.hre |
| 3e640 | 66 3d 22 23 70 74 72 43 61 73 74 22 3e 40 70 74 72 43 61 73 74 3c 2f 61 3e 20 2d 20 63 6f 6e 76 | f="#ptrCast">@ptrCast</a>.-.conv |
| 3e660 | 65 72 74 20 62 65 74 77 65 65 6e 20 70 6f 69 6e 74 65 72 20 74 79 70 65 73 3c 2f 6c 69 3e 0a 20 | ert.between.pointer.types</li>.. |
| 3e680 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 70 74 72 54 6f 49 6e 74 22 | .........<li><a.href="#ptrToInt" |
| 3e6a0 | 3e 40 70 74 72 54 6f 49 6e 74 3c 2f 61 3e 20 2d 20 6f 62 74 61 69 6e 20 74 68 65 20 61 64 64 72 | >@ptrToInt</a>.-.obtain.the.addr |
| 3e6c0 | 65 73 73 20 6f 66 20 61 20 70 6f 69 6e 74 65 72 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 | ess.of.a.pointer</li>........... |
| 3e6e0 | 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 6c 69 63 65 54 6f 42 79 74 65 73 22 3e 40 73 6c 69 | <li><a.href="#sliceToBytes">@sli |
| 3e700 | 63 65 54 6f 42 79 74 65 73 3c 2f 61 3e 20 2d 20 63 6f 6e 76 65 72 74 20 61 20 73 6c 69 63 65 20 | ceToBytes</a>.-.convert.a.slice. |
| 3e720 | 6f 66 20 61 6e 79 74 68 69 6e 67 20 74 6f 20 61 20 73 6c 69 63 65 20 6f 66 20 62 79 74 65 73 3c | of.anything.to.a.slice.of.bytes< |
| 3e740 | 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 74 72 75 | /li>...........<li><a.href="#tru |
| 3e760 | 6e 63 61 74 65 22 3e 40 74 72 75 6e 63 61 74 65 3c 2f 61 3e 20 2d 20 63 6f 6e 76 65 72 74 20 62 | ncate">@truncate</a>.-.convert.b |
| 3e780 | 65 74 77 65 65 6e 20 69 6e 74 65 67 65 72 20 74 79 70 65 73 2c 20 63 68 6f 70 70 69 6e 67 20 6f | etween.integer.types,.chopping.o |
| 3e7a0 | 66 66 20 62 69 74 73 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 0a | ff.bits</li>.......</ul>........ |
| 3e7c0 | 0a 20 20 20 20 20 20 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 | .......<h2.id="Peer-Type-Resolut |
| 3e7e0 | 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 68 32 3e 0a 0a | ion">Peer.Type.Resolution</h2>.. |
| 3e800 | 20 20 20 20 20 20 3c 70 3e 50 65 65 72 20 54 79 70 65 20 52 65 73 6f 6c 75 74 69 6f 6e 20 6f 63 | ......<p>Peer.Type.Resolution.oc |
| 3e820 | 63 75 72 73 20 69 6e 20 74 68 65 73 65 20 70 6c 61 63 65 73 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 | curs.in.these.places:</p>....... |
| 3e840 | 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 73 77 69 74 63 | <ul>.........<li><a.href="#switc |
| 3e860 | 68 22 3e 73 77 69 74 63 68 3c 2f 61 3e 20 65 78 70 72 65 73 73 69 6f 6e 73 3c 2f 6c 69 3e 0a 20 | h">switch</a>.expressions</li>.. |
| 3e880 | 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 69 66 22 3e 69 66 3c 2f 61 3e 20 | .......<li><a.href="#if">if</a>. |
| 3e8a0 | 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 61 20 | expressions</li>.........<li><a. |
| 3e8c0 | 68 72 65 66 3d 22 23 77 68 69 6c 65 22 3e 77 68 69 6c 65 3c 2f 61 3e 20 65 78 70 72 65 73 73 69 | href="#while">while</a>.expressi |
| 3e8e0 | 6f 6e 73 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 66 | ons</li>.........<li><a.href="#f |
| 3e900 | 6f 72 22 3e 66 6f 72 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 | or">for</a>.expressions</li>.... |
| 3e920 | 20 20 20 20 20 3c 6c 69 3e 4d 75 6c 74 69 70 6c 65 20 62 72 65 61 6b 20 73 74 61 74 65 6d 65 6e | .....<li>Multiple.break.statemen |
| 3e940 | 74 73 20 69 6e 20 61 20 62 6c 6f 63 6b 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 | ts.in.a.block</li>.........<li>S |
| 3e960 | 6f 6d 65 20 3c 61 20 68 72 65 66 3d 22 23 54 61 62 6c 65 2d 6f 66 2d 4f 70 65 72 61 74 6f 72 73 | ome.<a.href="#Table-of-Operators |
| 3e980 | 22 3e 62 69 6e 61 72 79 20 6f 70 65 72 61 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | ">binary.operations</a></li>.... |
| 3e9a0 | 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 6b 69 | ...</ul>.......<p>.......This.ki |
| 3e9c0 | 6e 64 20 6f 66 20 74 79 70 65 20 72 65 73 6f 6c 75 74 69 6f 6e 20 63 68 6f 6f 73 65 73 20 61 20 | nd.of.type.resolution.chooses.a. |
| 3e9e0 | 74 79 70 65 20 74 68 61 74 20 61 6c 6c 20 70 65 65 72 20 74 79 70 65 73 20 63 61 6e 20 69 6d 70 | type.that.all.peer.types.can.imp |
| 3ea00 | 6c 69 63 69 74 6c 79 20 63 61 73 74 20 69 6e 74 6f 2e 20 48 65 72 65 20 61 72 65 0a 20 20 20 20 | licitly.cast.into..Here.are..... |
| 3ea20 | 20 20 73 6f 6d 65 20 65 78 61 6d 70 6c 65 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | ..some.examples:.......</p>..... |
| 3ea40 | 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 |
| 3ea60 | 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 |
| 3ea80 | 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 |
| 3eaa0 | 61 6e 20 63 6c 61 73 73 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</ |
| 3eac0 | 73 70 61 6e 3e 28 3c 73 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 |
| 3eae0 | 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 |
| 3eb00 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 | ="tok-kw">const</span>.assert.=. |
| 3eb20 | 73 74 64 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | std.debug.assert;.<span.class="t |
| 3eb40 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 65 6d 20 3d 20 73 74 64 2e 6d 65 | ok-kw">const</span>.mem.=.std.me |
| 3eb60 | 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 3c 2f 73 | m;..<span.class="tok-kw">test</s |
| 3eb80 | 70 61 6e 3e 20 3c 73 70 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">" |
| 3eba0 | 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 3b | ;peer.resolve.int.widening" |
| 3ebc0 | 3c 2f 73 70 61 6e 3e 20 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 |
| 3ebe0 | 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | w">var</span>.a:.<span.class="to |
| 3ec00 | 6b 2d 74 79 70 65 22 3e 69 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | k-type">i8</span>.=.<span.class= |
| 3ec20 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 | "tok-number">12</span>;.....<spa |
| 3ec40 | 6e 20 63 6c 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 | n.class="tok-kw">var</span>.b:.< |
| 3ec60 | 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 61 6e 3e | span.class="tok-type">i16</span> |
| 3ec80 | 20 3d 20 3c 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 | .=.<span.class="tok-number">34</ |
| 3eca0 | 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"> |
| 3ecc0 | 76 61 72 3c 2f 73 70 61 6e 3e 20 63 20 3d 20 61 20 2b 20 62 3b 0a 20 20 20 20 61 73 73 65 72 74 | var</span>.c.=.a.+.b;.....assert |
| 3ece0 | 28 63 20 3d 3d 20 3c 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 | (c.==.<span.class="tok-number">4 |
| 3ed00 | 36 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 73 | 6</span>);.....assert(<span.clas |
| 3ed20 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 63 | s="tok-builtin">@typeOf</span>(c |
| 3ed40 | 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 31 36 3c | ).==.<span.class="tok-type">i16< |
| 3ed60 | 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" |
| 3ed80 | 3e 74 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 |
| 3eda0 | 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 73 20 6f 66 20 | r">"peer.resolve.arrays.of. |
| 3edc0 | 64 69 66 66 65 72 65 6e 74 20 73 69 7a 65 20 74 6f 20 63 6f 6e 73 74 20 73 6c 69 63 65 26 71 75 | different.size.to.const.slice&qu |
| 3ede0 | 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 72 74 28 6d 65 6d 2e 65 71 6c 28 | ot;</span>.{.....assert(mem.eql( |
| 3ee00 | 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> |
| 3ee20 | 2c 20 62 6f 6f 6c 54 6f 53 74 72 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c | ,.boolToStr(<span.class="tok-nul |
| 3ee40 | 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | l">true</span>),.<span.class="to |
| 3ee60 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 72 75 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 | k-str">"true"</span>)) |
| 3ee80 | 3b 0a 20 20 20 20 61 73 73 65 72 74 28 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 | ;.....assert(mem.eql(<span.class |
| 3eea0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 62 6f 6f 6c 54 6f 53 74 72 | ="tok-type">u8</span>,.boolToStr |
| 3eec0 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 | (<span.class="tok-null">false</s |
| 3eee0 | 70 61 6e 3e 29 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 | pan>),.<span.class="tok-str">&qu |
| 3ef00 | 6f 74 3b 66 61 6c 73 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 20 20 20 20 3c 73 70 | ot;false"</span>));.....<sp |
| 3ef20 | 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 |
| 3ef40 | 3e 20 61 73 73 65 72 74 28 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >.assert(mem.eql(<span.class="to |
| 3ef60 | 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 70 | k-type">u8</span>,.boolToStr(<sp |
| 3ef80 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 | an.class="tok-null">true</span>) |
| 3efa0 | 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 72 | ,.<span.class="tok-str">"tr |
| 3efc0 | 75 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ue"</span>));.....<span.cla |
| 3efe0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 61 73 73 65 | ss="tok-kw">comptime</span>.asse |
| 3f000 | 72 74 28 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | rt(mem.eql(<span.class="tok-type |
| 3f020 | 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 62 6f 6f 6c 54 6f 53 74 72 28 3c 73 70 61 6e 20 63 6c 61 | ">u8</span>,.boolToStr(<span.cla |
| 3f040 | 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 29 2c 20 3c 73 70 | ss="tok-null">false</span>),.<sp |
| 3f060 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 61 6c 73 65 26 71 | an.class="tok-str">"false&q |
| 3f080 | 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | uot;</span>));.}.<span.class="to |
| 3f0a0 | 6b 2d 6b 77 22 3e 66 6e 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 |
| 3f0c0 | 2d 66 6e 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 | -fn">boolToStr</span>(b:.<span.c |
| 3f0e0 | 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 5b 5d 3c | lass="tok-type">bool</span>).[]< |
| 3f100 | 73 70 61 6e 20 63 6c 61 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> |
| 3f120 | 20 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 |
| 3f140 | 3e 20 7b 0a 20 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 |
| 3f160 | 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | urn</span>.<span.class="tok-kw"> |
| 3f180 | 69 66 3c 2f 73 70 61 6e 3e 20 28 62 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | if</span>.(b).<span.class="tok-s |
| 3f1a0 | 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 20 3c 73 70 61 | tr">"true"</span>.<spa |
| 3f1c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 | n.class="tok-kw">else</span>.<sp |
| 3f1e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 61 6c 73 65 26 71 | an.class="tok-str">"false&q |
| 3f200 | 75 6f 74 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 | uot;</span>;.}..<span.class="tok |
| 3f220 | 2d 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 |
| 3f240 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 70 65 65 72 20 72 65 73 6f 6c 76 65 20 61 72 72 61 79 20 | k-str">"peer.resolve.array. |
| 3f260 | 61 6e 64 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 | and.const.slice"</span>.{.. |
| 3f280 | 20 20 20 74 65 73 74 50 65 65 72 52 65 73 6f 6c 76 65 41 72 72 61 79 43 6f 6e 73 74 53 6c 69 63 | ...testPeerResolveArrayConstSlic |
| 3f2a0 | 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 | e(<span.class="tok-null">true</s |
| 3f2c0 | 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pan>);.....<span.class="tok-kw"> |
| 3f2e0 | 63 6f 6d 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 | comptime</span>.testPeerResolveA |
| 3f300 | 72 72 61 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 | rrayConstSlice(<span.class="tok- |
| 3f320 | 6e 75 6c 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 | null">true</span>);.}.<span.clas |
| 3f340 | 73 3d 22 74 6f 6b 2d 6b 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 |
| 3f360 | 3d 22 74 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 | ="tok-fn">testPeerResolveArrayCo |
| 3f380 | 6e 73 74 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 | nstSlice</span>(b:.<span.class=" |
| 3f3a0 | 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 |
| 3f3c0 | 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>.{..... |
| 3f3e0 | 3c 73 70 61 6e 20 63 6c 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 |
| 3f400 | 3e 20 76 61 6c 75 65 31 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | >.value1.=.<span.class="tok-kw"> |
| 3f420 | 69 66 3c 2f 73 70 61 6e 3e 20 28 62 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | if</span>.(b).<span.class="tok-s |
| 3f440 | 74 72 22 3e 26 71 75 6f 74 3b 61 6f 65 75 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 | tr">"aoeu"</span>.<spa |
| 3f460 | 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 28 5b 5d | n.class="tok-kw">else</span>.([] |
| 3f480 | 3c 73 70 61 6e 20 63 6c 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 |
| 3f4a0 | 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 |
| 3f4c0 | 6e 3e 29 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b | n>)(<span.class="tok-str">" |
| 3f4e0 | 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 73 | zz"</span>);.....<span.clas |
| 3f500 | 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 3d | s="tok-kw">const</span>.value2.= |
| 3f520 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 | .<span.class="tok-kw">if</span>. |
| 3f540 | 28 62 29 20 28 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 | (b).([]<span.class="tok-kw">cons |
| 3f560 | 74 3c 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"> |
| 3f580 | 75 38 3c 2f 73 70 61 6e 3e 29 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | u8</span>)(<span.class="tok-str" |
| 3f5a0 | 3e 26 71 75 6f 74 3b 7a 7a 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c | >"zz"</span>).<span.cl |
| 3f5c0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 | ass="tok-kw">else</span>.<span.c |
| 3f5e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 61 6f 65 75 26 71 75 6f 74 3b 3c | lass="tok-str">"aoeu"< |
| 3f600 | 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 61 73 73 65 72 74 28 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e | /span>;.....assert(mem.eql(<span |
| 3f620 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 76 61 6c | .class="tok-type">u8</span>,.val |
| 3f640 | 75 65 31 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 | ue1,.<span.class="tok-str">" |
| 3f660 | 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 61 73 73 65 72 74 | ;aoeu"</span>));.....assert |
| 3f680 | 28 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | (mem.eql(<span.class="tok-type"> |
| 3f6a0 | 75 38 3c 2f 73 70 61 6e 3e 2c 20 76 61 6c 75 65 32 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | u8</span>,.value2,.<span.class=" |
| 3f6c0 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 7a 7a 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 | tok-str">"zz"</span>)) |
| 3f6e0 | 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</ |
| 3f700 | 73 70 61 6e 3e 20 3c 73 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 |
| 3f720 | 74 3b 70 65 65 72 20 74 79 70 65 20 72 65 73 6f 6c 75 74 69 6f 6e 3a 20 3f 54 20 61 6e 64 20 54 | t;peer.type.resolution:.?T.and.T |
| 3f740 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 72 74 28 70 65 65 72 54 | "</span>.{.....assert(peerT |
| 3f760 | 79 70 65 54 41 6e 64 4f 70 74 69 6f 6e 61 6c 54 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ypeTAndOptionalT(<span.class="to |
| 3f780 | 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 | k-null">true</span>,.<span.class |
| 3f7a0 | 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 29 2e 3f 20 3d 3d 20 3c | ="tok-null">false</span>).?.==.< |
| 3f7c0 | 73 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> |
| 3f7e0 | 29 3b 0a 20 20 20 20 61 73 73 65 72 74 28 70 65 65 72 54 79 70 65 54 41 6e 64 4f 70 74 69 6f 6e | );.....assert(peerTypeTAndOption |
| 3f800 | 61 6c 54 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 | alT(<span.class="tok-null">false |
| 3f820 | 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e | </span>,.<span.class="tok-null"> |
| 3f840 | 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 29 2e 3f 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | false</span>).?.==.<span.class=" |
| 3f860 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e | tok-number">3</span>);.....<span |
| 3f880 | 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>. |
| 3f8a0 | 7b 0a 20 20 20 20 20 20 20 20 61 73 73 65 72 74 28 70 65 65 72 54 79 70 65 54 41 6e 64 4f 70 74 | {.........assert(peerTypeTAndOpt |
| 3f8c0 | 69 6f 6e 61 6c 54 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 | ionalT(<span.class="tok-null">tr |
| 3f8e0 | 75 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c | ue</span>,.<span.class="tok-null |
| 3f900 | 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 29 2e 3f 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ">false</span>).?.==.<span.class |
| 3f920 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 | ="tok-number">0</span>);........ |
| 3f940 | 20 61 73 73 65 72 74 28 70 65 65 72 54 79 70 65 54 41 6e 64 4f 70 74 69 6f 6e 61 6c 54 28 3c 73 | .assert(peerTypeTAndOptionalT(<s |
| 3f960 | 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 |
| 3f980 | 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c | >,.<span.class="tok-null">false< |
| 3f9a0 | 2f 73 70 61 6e 3e 29 2e 3f 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | /span>).?.==.<span.class="tok-nu |
| 3f9c0 | 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 7d 0a 3c 73 70 61 6e 20 63 | mber">3</span>);.....}.}.<span.c |
| 3f9e0 | 6c 61 73 73 3d 22 74 6f 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 |
| 3fa00 | 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 70 65 65 72 54 79 70 65 54 41 6e 64 4f 70 74 69 6f 6e 61 | ass="tok-fn">peerTypeTAndOptiona |
| 3fa20 | 6c 54 3c 2f 73 70 61 6e 3e 28 63 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | lT</span>(c:.<span.class="tok-ty |
| 3fa40 | 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | pe">bool</span>,.b:.<span.class= |
| 3fa60 | 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 29 20 3f 3c 73 70 61 6e 20 63 | "tok-type">bool</span>).?<span.c |
| 3fa80 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | lass="tok-type">usize</span>.{.. |
| 3faa0 | 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 |
| 3fac0 | 3e 20 28 63 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | >.(c).{.........<span.class="tok |
| 3fae0 | 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=" |
| 3fb00 | 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 62 29 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-kw">if</span>.(b).<span.clas |
| 3fb20 | 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 | s="tok-null">null</span>.<span.c |
| 3fb40 | 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. |
| 3fb60 | 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 28 3c 73 | class="tok-type">usize</span>(<s |
| 3fb80 | 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>) |
| 3fba0 | 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 |
| 3fbc0 | 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ">return</span>.<span.class="tok |
| 3fbe0 | 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | -type">usize</span>(<span.class= |
| 3fc00 | 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 |
| 3fc20 | 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 |
| 3fc40 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 70 65 65 72 20 74 79 70 | n.class="tok-str">"peer.typ |
| 3fc60 | 65 20 72 65 73 6f 6c 75 74 69 6f 6e 3a 20 5b 30 5d 75 38 20 61 6e 64 20 5b 5d 63 6f 6e 73 74 20 | e.resolution:.[0]u8.and.[]const. |
| 3fc80 | 75 38 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 72 74 28 70 65 65 | u8"</span>.{.....assert(pee |
| 3fca0 | 72 54 79 70 65 45 6d 70 74 79 41 72 72 61 79 41 6e 64 53 6c 69 63 65 28 3c 73 70 61 6e 20 63 6c | rTypeEmptyArrayAndSlice(<span.cl |
| 3fcc0 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 | ass="tok-null">true</span>,.<spa |
| 3fce0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 69 26 71 75 6f 74 3b | n.class="tok-str">"hi" |
| 3fd00 | 3c 2f 73 70 61 6e 3e 29 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | </span>).len.==.<span.class="tok |
| 3fd20 | 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 61 73 73 65 72 74 28 70 | -number">0</span>);.....assert(p |
| 3fd40 | 65 65 72 54 79 70 65 45 6d 70 74 79 41 72 72 61 79 41 6e 64 53 6c 69 63 65 28 3c 73 70 61 6e 20 | eerTypeEmptyArrayAndSlice(<span. |
| 3fd60 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 2c 20 3c | class="tok-null">false</span>,.< |
| 3fd80 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 69 26 71 75 | span.class="tok-str">"hi&qu |
| 3fda0 | 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ot;</span>).len.==.<span.class=" |
| 3fdc0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e | tok-number">1</span>);.....<span |
| 3fde0 | 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>. |
| 3fe00 | 7b 0a 20 20 20 20 20 20 20 20 61 73 73 65 72 74 28 70 65 65 72 54 79 70 65 45 6d 70 74 79 41 72 | {.........assert(peerTypeEmptyAr |
| 3fe20 | 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 |
| 3fe40 | 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 |
| 3fe60 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 69 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6c 65 6e | -str">"hi"</span>).len |
| 3fe80 | 20 3d 3d 20 3c 73 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</ |
| 3fea0 | 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 61 73 73 65 72 74 28 70 65 65 72 54 79 70 65 45 | span>);.........assert(peerTypeE |
| 3fec0 | 6d 70 74 79 41 72 72 61 79 41 6e 64 53 6c 69 63 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | mptyArrayAndSlice(<span.class="t |
| 3fee0 | 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 |
| 3ff00 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 69 26 71 75 6f 74 3b 3c 2f 73 70 61 | ss="tok-str">"hi"</spa |
| 3ff20 | 6e 3e 29 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | n>).len.==.<span.class="tok-numb |
| 3ff40 | 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 | er">1</span>);.....}.}.<span.cla |
| 3ff60 | 73 73 3d 22 74 6f 6b 2d 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 |
| 3ff80 | 73 3d 22 74 6f 6b 2d 66 6e 22 3e 70 65 65 72 54 79 70 65 45 6d 70 74 79 41 72 72 61 79 41 6e 64 | s="tok-fn">peerTypeEmptyArrayAnd |
| 3ffa0 | 53 6c 69 63 65 3c 2f 73 70 61 6e 3e 28 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | Slice</span>(a:.<span.class="tok |
| 3ffc0 | 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 20 73 6c 69 63 65 3a 20 5b 5d 3c 73 70 | -type">bool</span>,.slice:.[]<sp |
| 3ffe0 | 61 6e 20 63 6c 61 73 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>.< |
| 40000 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 | span.class="tok-type">u8</span>) |
| 40020 | 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | .[]<span.class="tok-kw">const</s |
| 40040 | 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</ |
| 40060 | 73 70 61 6e 3e 20 7b 0a 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" |
| 40080 | 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | >if</span>.(a).{.........<span.c |
| 400a0 | 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 5b 5d 3c 73 | lass="tok-kw">return</span>.[]<s |
| 400c0 | 70 61 6e 20 63 6c 61 73 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>. |
| 400e0 | 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> |
| 40100 | 7b 7d 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | {};.....}......<span.class="tok- |
| 40120 | 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 73 6c 69 63 65 5b 3c 73 70 61 6e 20 63 6c | kw">return</span>.slice[<span.cl |
| 40140 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 3c 73 70 61 6e | ass="tok-number">0</span>..<span |
| 40160 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 5d 3b 0a 7d | .class="tok-number">1</span>];.} |
| 40180 | 0a 3c 73 70 61 6e 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 |
| 401a0 | 3e 20 3c 73 70 61 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 |
| 401c0 | 65 72 20 74 79 70 65 20 72 65 73 6f 6c 75 74 69 6f 6e 3a 20 5b 30 5d 75 38 2c 20 5b 5d 63 6f 6e | er.type.resolution:.[0]u8,.[]con |
| 401e0 | 73 74 20 75 38 2c 20 61 6e 64 20 65 72 72 6f 72 21 5b 5d 75 38 26 71 75 6f 74 3b 3c 2f 73 70 61 | st.u8,.and.error![]u8"</spa |
| 40200 | 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 22 | n>.{.....{.........<span.class=" |
| 40220 | 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 64 61 74 61 20 3d 20 3c 73 70 61 6e 20 | tok-kw">var</span>.data.=.<span. |
| 40240 | 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"</ |
| 40260 | 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- |
| 40280 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 6c 69 63 65 20 3d 20 64 61 74 61 5b 3c 73 | kw">const</span>.slice.=.data[<s |
| 402a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e | pan.class="tok-number">0</span>. |
| 402c0 | 2e 5d 3b 0a 20 20 20 20 20 20 20 20 61 73 73 65 72 74 28 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .];.........assert((<span.class= |
| 402e0 | 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 70 65 65 72 54 79 70 65 45 6d 70 74 | "tok-kw">try</span>.peerTypeEmpt |
| 40300 | 79 41 72 72 61 79 41 6e 64 53 6c 69 63 65 41 6e 64 45 72 72 6f 72 28 3c 73 70 61 6e 20 63 6c 61 | yArrayAndSliceAndError(<span.cla |
| 40320 | 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 2c 20 73 6c 69 63 65 | ss="tok-null">true</span>,.slice |
| 40340 | 29 29 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | )).len.==.<span.class="tok-numbe |
| 40360 | 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 61 73 73 65 72 74 28 28 3c 73 | r">0</span>);.........assert((<s |
| 40380 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 70 65 | pan.class="tok-kw">try</span>.pe |
| 403a0 | 65 72 54 79 70 65 45 6d 70 74 79 41 72 72 61 79 41 6e 64 53 6c 69 63 65 41 6e 64 45 72 72 6f 72 | erTypeEmptyArrayAndSliceAndError |
| 403c0 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 | (<span.class="tok-null">false</s |
| 403e0 | 70 61 6e 3e 2c 20 73 6c 69 63 65 29 29 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | pan>,.slice)).len.==.<span.class |
| 40400 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 20 | ="tok-number">1</span>);.....}.. |
| 40420 | 20 20 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 |
| 40440 | 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 |
| 40460 | 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 64 61 74 61 20 3d 20 3c 73 70 61 6e 20 63 | ok-kw">var</span>.data.=.<span.c |
| 40480 | 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 |
| 404a0 | 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | pan>;.........<span.class="tok-k |
| 404c0 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 6c 69 63 65 20 3d 20 64 61 74 61 5b 3c 73 70 | w">const</span>.slice.=.data[<sp |
| 404e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e | an.class="tok-number">0</span>.. |
| 40500 | 5d 3b 0a 20 20 20 20 20 20 20 20 61 73 73 65 72 74 28 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ];.........assert((<span.class=" |
| 40520 | 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 70 65 65 72 54 79 70 65 45 6d 70 74 79 | tok-kw">try</span>.peerTypeEmpty |
| 40540 | 41 72 72 61 79 41 6e 64 53 6c 69 63 65 41 6e 64 45 72 72 6f 72 28 3c 73 70 61 6e 20 63 6c 61 73 | ArrayAndSliceAndError(<span.clas |
| 40560 | 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 73 6c 69 63 65 29 | s="tok-null">true</span>,.slice) |
| 40580 | 29 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | ).len.==.<span.class="tok-number |
| 405a0 | 22 3e 30 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 61 73 73 65 72 74 28 28 3c 73 70 | ">0</span>);.........assert((<sp |
| 405c0 | 61 6e 20 63 6c 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 | an.class="tok-kw">try</span>.pee |
| 405e0 | 72 54 79 70 65 45 6d 70 74 79 41 72 72 61 79 41 6e 64 53 6c 69 63 65 41 6e 64 45 72 72 6f 72 28 | rTypeEmptyArrayAndSliceAndError( |
| 40600 | 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 |
| 40620 | 61 6e 3e 2c 20 73 6c 69 63 65 29 29 2e 6c 65 6e 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | an>,.slice)).len.==.<span.class= |
| 40640 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 7d 0a | "tok-number">1</span>);.....}.}. |
| 40660 | 3c 73 70 61 6e 20 63 6c 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>.< |
| 40680 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 70 65 65 72 54 79 70 65 45 6d 70 74 | span.class="tok-fn">peerTypeEmpt |
| 406a0 | 79 41 72 72 61 79 41 6e 64 53 6c 69 63 65 41 6e 64 45 72 72 6f 72 3c 2f 73 70 61 6e 3e 28 61 3a | yArrayAndSliceAndError</span>(a: |
| 406c0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 | .<span.class="tok-type">bool</sp |
| 406e0 | 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 74 | an>,.slice:.[]<span.class="tok-t |
| 40700 | 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 |
| 40720 | 2d 6b 77 22 3e 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 | -kw">error</span>![]<span.class= |
| 40740 | 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 6e | "tok-type">u8</span>.{.....<span |
| 40760 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 29 20 7b 0a | .class="tok-kw">if</span>.(a).{. |
| 40780 | 20 20 20 20 20 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 |
| 407a0 | 75 72 6e 3c 2f 73 70 61 6e 3e 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | urn</span>.[]<span.class="tok-ty |
| 407c0 | 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 7b 7d 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 3c 73 70 61 | pe">u8</span>{};.....}......<spa |
| 407e0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 73 | n.class="tok-kw">return</span>.s |
| 40800 | 6c 69 63 65 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c | lice[<span.class="tok-number">0< |
| 40820 | 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 22 | /span>..<span.class="tok-number" |
| 40840 | 3e 31 3c 2f 73 70 61 6e 3e 5d 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c | >1</span>];.}</code></pre><pre>< |
| 40860 | 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 |
| 40880 | 73 74 2e 7a 69 67 0a 54 65 73 74 20 31 2f 36 20 70 65 65 72 20 72 65 73 6f 6c 76 65 20 69 6e 74 | st.zig.Test.1/6.peer.resolve.int |
| 408a0 | 20 77 69 64 65 6e 69 6e 67 2e 2e 2e 4f 4b 0a 54 65 73 74 20 32 2f 36 20 70 65 65 72 20 72 65 73 | .widening...OK.Test.2/6.peer.res |
| 408c0 | 6f 6c 76 65 20 61 72 72 61 79 73 20 6f 66 20 64 69 66 66 65 72 65 6e 74 20 73 69 7a 65 20 74 6f | olve.arrays.of.different.size.to |
| 408e0 | 20 63 6f 6e 73 74 20 73 6c 69 63 65 2e 2e 2e 4f 4b 0a 54 65 73 74 20 33 2f 36 20 70 65 65 72 20 | .const.slice...OK.Test.3/6.peer. |
| 40900 | 72 65 73 6f 6c 76 65 20 61 72 72 61 79 20 61 6e 64 20 63 6f 6e 73 74 20 73 6c 69 63 65 2e 2e 2e | resolve.array.and.const.slice... |
| 40920 | 4f 4b 0a 54 65 73 74 20 34 2f 36 20 70 65 65 72 20 74 79 70 65 20 72 65 73 6f 6c 75 74 69 6f 6e | OK.Test.4/6.peer.type.resolution |
| 40940 | 3a 20 3f 54 20 61 6e 64 20 54 2e 2e 2e 4f 4b 0a 54 65 73 74 20 35 2f 36 20 70 65 65 72 20 74 79 | :.?T.and.T...OK.Test.5/6.peer.ty |
| 40960 | 70 65 20 72 65 73 6f 6c 75 74 69 6f 6e 3a 20 5b 30 5d 75 38 20 61 6e 64 20 5b 5d 63 6f 6e 73 74 | pe.resolution:.[0]u8.and.[]const |
| 40980 | 20 75 38 2e 2e 2e 4f 4b 0a 54 65 73 74 20 36 2f 36 20 70 65 65 72 20 74 79 70 65 20 72 65 73 6f | .u8...OK.Test.6/6.peer.type.reso |
| 409a0 | 6c 75 74 69 6f 6e 3a 20 5b 30 5d 75 38 2c 20 5b 5d 63 6f 6e 73 74 20 75 38 2c 20 61 6e 64 20 65 | lution:.[0]u8,.[]const.u8,.and.e |
| 409c0 | 72 72 6f 72 21 5b 5d 75 38 2e 2e 2e 4f 4b 0a 41 6c 6c 20 74 65 73 74 73 20 70 61 73 73 65 64 2e | rror![]u8...OK.All.tests.passed. |
| 409e0 | 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 0a 20 | .</code></pre>.................. |
| 40a00 | 20 20 20 20 20 3c 68 31 20 69 64 3d 22 76 6f 69 64 22 3e 76 6f 69 64 3c 2f 68 31 3e 0a 0a 20 20 | .....<h1.id="void">void</h1>.... |
| 40a20 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | ....<p>.......<code.class="zig"> |
| 40a40 | 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 |
| 40a60 | 6e 3e 3c 2f 63 6f 64 65 3e 20 72 65 70 72 65 73 65 6e 74 73 20 61 20 74 79 70 65 20 74 68 61 74 | n></code>.represents.a.type.that |
| 40a80 | 20 68 61 73 20 6e 6f 20 76 61 6c 75 65 2e 20 43 6f 64 65 20 74 68 61 74 20 6d 61 6b 65 73 20 75 | .has.no.value..Code.that.makes.u |
| 40aa0 | 73 65 20 6f 66 20 76 6f 69 64 20 76 61 6c 75 65 73 20 69 73 0a 20 20 20 20 20 20 6e 6f 74 20 69 | se.of.void.values.is.......not.i |
| 40ac0 | 6e 63 6c 75 64 65 64 20 69 6e 20 74 68 65 20 66 69 6e 61 6c 20 67 65 6e 65 72 61 74 65 64 20 63 | ncluded.in.the.final.generated.c |
| 40ae0 | 6f 64 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 | ode:.......</p>.......<pre><code |
| 40b00 | 20 63 6c 61 73 73 3d 22 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 |
| 40b20 | 22 3e 65 78 70 6f 72 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ">export</span>.<span.class="tok |
| 40b40 | 2d 6b 77 22 3e 66 6e 3c 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- |
| 40b60 | 66 6e 22 3e 65 6e 74 72 79 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | fn">entry</span>().<span.class=" |
| 40b80 | 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 |
| 40ba0 | 6e 20 63 6c 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:.< |
| 40bc0 | 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 |
| 40be0 | 3e 20 3d 20 7b 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | >.=.{};.....<span.class="tok-kw" |
| 40c00 | 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 79 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | >var</span>.y:.<span.class="tok- |
| 40c20 | 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 3d 20 7b 7d 3b 0a 20 20 20 20 78 20 3d 20 | type">void</span>.=.{};.....x.=. |
| 40c40 | 79 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 57 68 65 6e 20 | y;.}</code></pre>.......<p>When. |
| 40c60 | 74 68 69 73 20 74 75 72 6e 73 20 69 6e 74 6f 20 4c 4c 56 4d 20 49 52 2c 20 74 68 65 72 65 20 69 | this.turns.into.LLVM.IR,.there.i |
| 40c80 | 73 20 6e 6f 20 63 6f 64 65 20 67 65 6e 65 72 61 74 65 64 20 69 6e 20 74 68 65 20 62 6f 64 79 20 | s.no.code.generated.in.the.body. |
| 40ca0 | 6f 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 65 6e 74 72 79 3c 2f 63 6f 64 65 | of.<code.class="zig">entry</code |
| 40cc0 | 3e 2c 0a 20 20 20 20 20 20 65 76 65 6e 20 69 6e 20 64 65 62 75 67 20 6d 6f 64 65 2e 20 46 6f 72 | >,.......even.in.debug.mode..For |
| 40ce0 | 20 65 78 61 6d 70 6c 65 2c 20 6f 6e 20 78 38 36 5f 36 34 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | .example,.on.x86_64:</p>.......< |
| 40d00 | 70 72 65 3e 3c 63 6f 64 65 3e 30 30 30 30 30 30 30 30 30 30 30 30 30 30 31 30 20 26 6c 74 3b 65 | pre><code>0000000000000010.<e |
| 40d20 | 6e 74 72 79 26 67 74 3b 3a 0a 20 20 31 30 3a 09 35 35 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ntry>:...10:.55.............. |
| 40d40 | 20 20 20 20 20 09 70 75 73 68 20 20 20 25 72 62 70 0a 20 20 31 31 3a 09 34 38 20 38 39 20 65 35 | ......push...%rbp...11:.48.89.e5 |
| 40d60 | 20 20 20 20 20 20 20 20 20 20 20 20 20 09 6d 6f 76 20 20 20 20 25 72 73 70 2c 25 72 62 70 0a 20 | ..............mov....%rsp,%rbp.. |
| 40d80 | 20 31 34 3a 09 35 64 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 09 70 6f 70 20 20 | .14:.5d....................pop.. |
| 40da0 | 20 20 25 72 62 70 0a 20 20 31 35 3a 09 63 33 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ..%rbp...15:.c3................. |
| 40dc0 | 20 20 09 72 65 74 71 20 20 20 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 | ...retq...</code></pre>.......<p |
| 40de0 | 3e 54 68 65 73 65 20 61 73 73 65 6d 62 6c 79 20 69 6e 73 74 72 75 63 74 69 6f 6e 73 20 64 6f 20 | >These.assembly.instructions.do. |
| 40e00 | 6e 6f 74 20 68 61 76 65 20 61 6e 79 20 63 6f 64 65 20 61 73 73 6f 63 69 61 74 65 64 20 77 69 74 | not.have.any.code.associated.wit |
| 40e20 | 68 20 74 68 65 20 76 6f 69 64 20 76 61 6c 75 65 73 20 2d 0a 20 20 20 20 20 20 74 68 65 79 20 6f | h.the.void.values.-.......they.o |
| 40e40 | 6e 6c 79 20 70 65 72 66 6f 72 6d 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 20 70 72 | nly.perform.the.function.call.pr |
| 40e60 | 6f 6c 6f 67 75 65 20 61 6e 64 20 65 70 69 6c 6f 67 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e | ologue.and.epilog.</p>.......<p> |
| 40e80 | 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 | .......<code.class="zig"><span.c |
| 40ea0 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | lass="tok-type">void</span></cod |
| 40ec0 | 65 3e 20 63 61 6e 20 62 65 20 75 73 65 66 75 6c 20 66 6f 72 20 69 6e 73 74 61 6e 74 69 61 74 69 | e>.can.be.useful.for.instantiati |
| 40ee0 | 6e 67 20 67 65 6e 65 72 69 63 20 74 79 70 65 73 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 67 | ng.generic.types..For.example,.g |
| 40f00 | 69 76 65 6e 20 61 0a 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | iven.a...........<code.class="zi |
| 40f20 | 67 22 3e 4d 61 70 28 4b 65 79 2c 20 56 61 6c 75 65 29 3c 2f 63 6f 64 65 3e 2c 20 6f 6e 65 20 63 | g">Map(Key,.Value)</code>,.one.c |
| 40f40 | 61 6e 20 70 61 73 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 | an.pass.<code.class="zig"><span. |
| 40f60 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | class="tok-type">void</span></co |
| 40f80 | 64 65 3e 20 66 6f 72 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 56 61 | de>.for.the.<code.class="zig">Va |
| 40fa0 | 6c 75 65 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | lue</code>...................... |
| 40fc0 | 20 74 79 70 65 20 74 6f 20 6d 61 6b 65 20 69 74 20 69 6e 74 6f 20 61 20 3c 63 6f 64 65 20 63 6c | .type.to.make.it.into.a.<code.cl |
| 40fe0 | 61 73 73 3d 22 7a 69 67 22 3e 53 65 74 3c 2f 63 6f 64 65 3e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e | ass="zig">Set</code>:.......</p> |
| 41000 | 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< |
| 41020 | 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. |
| 41040 | 63 6c 61 73 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. |
| 41060 | 3d 20 3c 73 70 61 6e 20 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 |
| 41080 | 6f 72 74 3c 2f 73 70 61 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" |
| 410a0 | 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. |
| 410c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 | class="tok-kw">const</span>.asse |
| 410e0 | 72 74 20 3d 20 73 74 64 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c | rt.=.std.debug.assert;..<span.cl |
| 41100 | 61 73 73 3d 22 74 6f 6b 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 |
| 41120 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 75 72 6e 20 48 61 73 68 4d 61 | lass="tok-str">"turn.HashMa |
| 41140 | 70 20 69 6e 74 6f 20 61 20 73 65 74 20 77 69 74 68 20 76 6f 69 64 26 71 75 6f 74 3b 3c 2f 73 70 | p.into.a.set.with.void"</sp |
| 41160 | 61 6e 3e 20 7b 0a 20 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 |
| 41180 | 61 72 3c 2f 73 70 61 6e 3e 20 6d 61 70 20 3d 20 73 74 64 2e 48 61 73 68 4d 61 70 28 3c 73 70 61 | ar</span>.map.=.std.HashMap(<spa |
| 411a0 | 6e 20 63 6c 61 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 | n.class="tok-type">i32</span>,.< |
| 411c0 | 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 |
| 411e0 | 3e 2c 20 68 61 73 68 5f 69 33 32 2c 20 65 71 6c 5f 69 33 32 29 2e 69 6e 69 74 28 73 74 64 2e 64 | >,.hash_i32,.eql_i32).init(std.d |
| 41200 | 65 62 75 67 2e 67 6c 6f 62 61 6c 5f 61 6c 6c 6f 63 61 74 6f 72 29 3b 0a 20 20 20 20 3c 73 70 61 | ebug.global_allocator);.....<spa |
| 41220 | 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 6d 61 | n.class="tok-kw">defer</span>.ma |
| 41240 | 70 2e 64 65 69 6e 69 74 28 29 3b 0a 0a 20 20 20 20 5f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | p.deinit();......_.=.<span.class |
| 41260 | 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 70 75 74 28 3c 73 70 | ="tok-kw">try</span>.map.put(<sp |
| 41280 | 61 6e 20 63 6c 61 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>,. |
| 412a0 | 7b 7d 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 | {});....._.=.<span.class="tok-kw |
| 412c0 | 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 6d 61 70 2e 70 75 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 | ">try</span>.map.put(<span.class |
| 412e0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 20 7b 7d 29 3b 0a 0a 20 20 | ="tok-number">2</span>,.{});.... |
| 41300 | 20 20 61 73 73 65 72 74 28 6d 61 70 2e 63 6f 6e 74 61 69 6e 73 28 3c 73 70 61 6e 20 63 6c 61 73 | ..assert(map.contains(<span.clas |
| 41320 | 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 20 20 20 20 61 | s="tok-number">2</span>));.....a |
| 41340 | 73 73 65 72 74 28 21 6d 61 70 2e 63 6f 6e 74 61 69 6e 73 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ssert(!map.contains(<span.class= |
| 41360 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 29 3b 0a 0a 20 20 20 20 5f 20 | "tok-number">3</span>));......_. |
| 41380 | 3d 20 6d 61 70 2e 72 65 6d 6f 76 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | =.map.remove(<span.class="tok-nu |
| 413a0 | 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 61 73 73 65 72 74 28 21 6d 61 70 | mber">2</span>);.....assert(!map |
| 413c0 | 2e 63 6f 6e 74 61 69 6e 73 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | .contains(<span.class="tok-numbe |
| 413e0 | 72 22 3e 32 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 | r">2</span>));.}..<span.class="t |
| 41400 | 6f 6b 2d 6b 77 22 3e 66 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 |
| 41420 | 6b 2d 66 6e 22 3e 68 61 73 68 5f 69 33 32 3c 2f 73 70 61 6e 3e 28 78 3a 20 3c 73 70 61 6e 20 63 | k-fn">hash_i32</span>(x:.<span.c |
| 41440 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 | lass="tok-type">i32</span>).<spa |
| 41460 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a | n.class="tok-type">u32</span>.{. |
| 41480 | 20 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< |
| 414a0 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | /span>.<span.class="tok-builtin" |
| 414c0 | 3e 40 62 69 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 | >@bitCast</span>(<span.class="to |
| 414e0 | 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 78 29 3b 0a 7d 0a 0a 3c 73 70 61 6e | k-type">u32</span>,.x);.}..<span |
| 41500 | 20 63 6c 61 73 73 3d 22 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. |
| 41520 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 65 71 6c 5f 69 33 32 3c 2f 73 70 61 6e 3e 28 61 3a | class="tok-fn">eql_i32</span>(a: |
| 41540 | 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 |
| 41560 | 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 33 | n>,.b:.<span.class="tok-type">i3 |
| 41580 | 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 22 | 2</span>).<span.class="tok-type" |
| 415a0 | 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >bool</span>.{.....<span.class=" |
| 415c0 | 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 61 20 3d 3d 20 62 3b 0a 7d 3c | tok-kw">return</span>.a.==.b;.}< |
| 415e0 | 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 |
| 41600 | 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 31 2f | ell">$.zig.test.test.zig.Test.1/ |
| 41620 | 31 20 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 | 1.turn.HashMap.into.a.set.with.v |
| 41640 | 6f 69 64 2e 2e 2e 4f 4b 0a 41 6c 6c 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 | oid...OK.All.tests.passed..</cod |
| 41660 | 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 4e 6f 74 65 20 74 68 61 74 20 74 68 69 | e></pre>........<p>Note.that.thi |
| 41680 | 73 20 69 73 20 64 69 66 66 65 72 65 6e 74 20 74 68 61 6e 20 75 73 69 6e 67 20 61 20 64 75 6d 6d | s.is.different.than.using.a.dumm |
| 416a0 | 79 20 76 61 6c 75 65 20 66 6f 72 20 74 68 65 20 68 61 73 68 20 6d 61 70 20 76 61 6c 75 65 2e 0a | y.value.for.the.hash.map.value.. |
| 416c0 | 20 20 20 20 20 20 42 79 20 75 73 69 6e 67 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ......By.using.<code.class="zig" |
| 416e0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 | ><span.class="tok-type">void</sp |
| 41700 | 61 6e 3e 3c 2f 63 6f 64 65 3e 20 61 73 20 74 68 65 20 74 79 70 65 20 6f 66 20 74 68 65 20 76 61 | an></code>.as.the.type.of.the.va |
| 41720 | 6c 75 65 2c 20 74 68 65 20 68 61 73 68 20 6d 61 70 20 65 6e 74 72 79 20 74 79 70 65 20 68 61 73 | lue,.the.hash.map.entry.type.has |
| 41740 | 20 6e 6f 20 76 61 6c 75 65 20 66 69 65 6c 64 2c 20 61 6e 64 0a 20 20 20 20 20 20 74 68 75 73 20 | .no.value.field,.and.......thus. |
| 41760 | 74 68 65 20 68 61 73 68 20 6d 61 70 20 74 61 6b 65 73 20 75 70 20 6c 65 73 73 20 73 70 61 63 65 | the.hash.map.takes.up.less.space |
| 41780 | 2e 20 46 75 72 74 68 65 72 2c 20 61 6c 6c 20 74 68 65 20 63 6f 64 65 20 74 68 61 74 20 64 65 61 | ..Further,.all.the.code.that.dea |
| 417a0 | 6c 73 20 77 69 74 68 20 73 74 6f 72 69 6e 67 20 61 6e 64 20 6c 6f 61 64 69 6e 67 20 74 68 65 0a | ls.with.storing.and.loading.the. |
| 417c0 | 20 20 20 20 20 20 76 61 6c 75 65 20 69 73 20 64 65 6c 65 74 65 64 2c 20 61 73 20 73 65 65 6e 20 | ......value.is.deleted,.as.seen. |
| 417e0 | 61 62 6f 76 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | above........</p>.......<p>..... |
| 41800 | 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= |
| 41820 | 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 69 73 | "tok-type">void</span></code>.is |
| 41840 | 20 64 69 73 74 69 6e 63 74 20 66 72 6f 6d 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | .distinct.from.<code.class="zig" |
| 41860 | 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 76 6f 69 64 3c 2f | ><span.class="tok-type">c_void</ |
| 41880 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 77 68 69 63 68 20 69 73 20 64 65 66 69 6e 65 64 20 6c | span></code>,.which.is.defined.l |
| 418a0 | 69 6b 65 20 74 68 69 73 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c | ike.this:...............<code.cl |
| 418c0 | 61 73 73 3d 22 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 | ass="zig"><span.class="tok-kw">p |
| 418e0 | 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | ub</span>.<span.class="tok-kw">c |
| 41900 | 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 |
| 41920 | 65 22 3e 63 5f 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | e">c_void</span>.=.<span.class=" |
| 41940 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 4f 70 61 71 75 65 54 79 70 65 3c 2f 73 70 61 6e 3e 28 | tok-builtin">@OpaqueType</span>( |
| 41960 | 29 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 20 20 20 3c 63 6f | );</code>....................<co |
| 41980 | 64 65 20 63 6c 61 73 73 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- |
| 419a0 | 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 61 73 20 61 20 6b | type">void</span></code>.has.a.k |
| 419c0 | 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 3c 63 6f 64 65 20 | nown.size.of.0.bytes,.and.<code. |
| 419e0 | 63 6c 61 73 73 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 |
| 41a00 | 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 73 20 61 6e 20 75 | e">c_void</span></code>.has.an.u |
| 41a20 | 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 2e 0a 20 20 20 20 | nknown,.but.non-zero,.size...... |
| 41a40 | 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 72 65 73 73 69 6f | ..</p>.......<p>.......Expressio |
| 41a60 | 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 67 22 3e 3c 73 70 | ns.of.type.<code.class="zig"><sp |
| 41a80 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 3c | an.class="tok-type">void</span>< |
| 41aa0 | 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 68 6f 73 65 20 76 | /code>.are.the.only.ones.whose.v |
| 41ac0 | 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 78 61 6d 70 6c 65 | alue.can.be.ignored..For.example |
| 41ae0 | 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 |
| 41b00 | 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= |
| 41b20 | 22 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< |
| 41b40 | 2f 73 70 61 6e 3e 20 3c 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 |
| 41b60 | 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 75 65 26 71 75 6f | ot;ignoring.expression.value&quo |
| 41b80 | 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 3c 73 70 61 6e 20 | t;</span>.{.....foo();.}..<span. |
| 41ba0 | 63 6c 61 73 73 3d 22 74 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 |
| 41bc0 | 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e | lass="tok-fn">foo</span>().<span |
| 41be0 | 20 63 6c 61 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>.{.. |
| 41c00 | 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</ |
| 41c20 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | span>.<span.class="tok-number">1 |
| 41c40 | 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c | 234</span>;.}</code></pre><pre>< |
| 41c60 | 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 |
| 41c80 | 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 2f 68 6f 6d 65 2f | st.zig.<span.class="t0_1">/home/ |
| 41ca0 | 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 | andy/dev/zig/docgen_tmp/test.zig |
| 41cc0 | 3a 32 3a 38 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 | :2:8:.</span><span.class="t31_1" |
| 41ce0 | 3e 65 72 72 6f 72 3a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 | >error:</span><span.class="t0_1" |
| 41d00 | 3e 20 65 78 70 72 65 73 73 69 6f 6e 20 76 61 6c 75 65 20 69 73 20 69 67 6e 6f 72 65 64 3c 2f 73 | >.expression.value.is.ignored</s |
| 41d20 | 70 61 6e 3e 0a 20 20 20 20 66 6f 6f 28 29 3b 0a 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | pan>.....foo();........<span.cla |
| 41d40 | 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 |
| 41d60 | 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 72 | >........<p>However,.if.the.expr |
| 41d80 | 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 67 | ession.has.type.<code.class="zig |
| 41da0 | 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 |
| 41dc0 | 70 61 6e 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 | pan></code>:</p>.......<p.class= |
| 41de0 | 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 |
| 41e00 | 61 73 73 3d 22 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 | ass="zig"><span.class="tok-kw">t |
| 41e20 | 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" |
| 41e40 | 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 75 65 | >"ignoring.expression.value |
| 41e60 | 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 3c 73 | "</span>.{.....foo();.}..<s |
| 41e80 | 70 61 6e 20 63 6c 61 73 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 |
| 41ea0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 29 20 3c | an.class="tok-fn">foo</span>().< |
| 41ec0 | 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 |
| 41ee0 | 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 63 6c 61 73 | >.{}</code></pre><pre><code.clas |
| 41f00 | 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 | s="shell">$.zig.test.test.zig.Te |
| 41f20 | 73 74 20 31 2f 31 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 | st.1/1.ignoring.expression.value |
| 41f40 | 2e 2e 2e 4f 4b 0a 41 6c 6c 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.tests.passed..</code>< |
| 41f60 | 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 63 6f 6d | /pre>................<h1.id="com |
| 41f80 | 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a | ptime">comptime</h1>........<p>. |
| 41fa0 | 20 20 20 20 20 20 5a 69 67 20 70 6c 61 63 65 73 20 69 6d 70 6f 72 74 61 6e 63 65 20 6f 6e 20 74 | ......Zig.places.importance.on.t |
| 41fc0 | 68 65 20 63 6f 6e 63 65 70 74 20 6f 66 20 77 68 65 74 68 65 72 20 61 6e 20 65 78 70 72 65 73 73 | he.concept.of.whether.an.express |
| 41fe0 | 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 2e 0a 20 20 | ion.is.known.at.compile-time.... |
| 42000 | 20 20 20 20 54 68 65 72 65 20 61 72 65 20 61 20 66 65 77 20 64 69 66 66 65 72 65 6e 74 20 70 6c | ....There.are.a.few.different.pl |
| 42020 | 61 63 65 73 20 74 68 69 73 20 63 6f 6e 63 65 70 74 20 69 73 20 75 73 65 64 2c 20 61 6e 64 20 74 | aces.this.concept.is.used,.and.t |
| 42040 | 68 65 73 65 20 62 75 69 6c 64 69 6e 67 20 62 6c 6f 63 6b 73 20 61 72 65 20 75 73 65 64 0a 20 20 | hese.building.blocks.are.used... |
| 42060 | 20 20 20 20 74 6f 20 6b 65 65 70 20 74 68 65 20 6c 61 6e 67 75 61 67 65 20 73 6d 61 6c 6c 2c 20 | ....to.keep.the.language.small,. |
| 42080 | 72 65 61 64 61 62 6c 65 2c 20 61 6e 64 20 70 6f 77 65 72 66 75 6c 2e 0a 20 20 20 20 20 20 3c 2f | readable,.and.powerful........</ |
| 420a0 | 70 3e 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 49 6e 74 72 6f 64 75 63 69 6e 67 2d 74 68 65 | p>.......<h2.id="Introducing-the |
| 420c0 | 2d 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 43 6f 6e 63 65 70 74 22 3e 49 6e 74 72 6f 64 75 63 69 | -Compile-Time-Concept">Introduci |
| 420e0 | 6e 67 20 74 68 65 20 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 20 43 6f 6e 63 65 70 74 3c 2f 68 32 3e | ng.the.Compile-Time.Concept</h2> |
| 42100 | 0a 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 50 61 72 | ........<h3.id="Compile-Time-Par |
| 42120 | 61 6d 65 74 65 72 73 22 3e 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 20 50 61 72 61 6d 65 74 65 72 73 | ameters">Compile-Time.Parameters |
| 42140 | 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 6d 70 69 6c 65 2d 74 | </h3>........<p>.......Compile-t |
| 42160 | 69 6d 65 20 70 61 72 61 6d 65 74 65 72 73 20 69 73 20 68 6f 77 20 5a 69 67 20 69 6d 70 6c 65 6d | ime.parameters.is.how.Zig.implem |
| 42180 | 65 6e 74 73 20 67 65 6e 65 72 69 63 73 2e 20 49 74 20 69 73 20 63 6f 6d 70 69 6c 65 2d 74 69 6d | ents.generics..It.is.compile-tim |
| 421a0 | 65 20 64 75 63 6b 20 74 79 70 69 6e 67 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | e.duck.typing........</p>....... |
| 421c0 | 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 |
| 421e0 | 73 73 3d 22 74 6f 6b 2d 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 |
| 42200 | 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 78 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 | s="tok-fn">max</span>(<span.clas |
| 42220 | 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 |
| 42240 | 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> |
| 42260 | 2c 20 61 3a 20 54 2c 20 62 3a 20 54 29 20 54 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ,.a:.T,.b:.T).T.{.....<span.clas |
| 42280 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 | s="tok-kw">return</span>.<span.c |
| 422a0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 20 26 67 74 3b 20 | lass="tok-kw">if</span>.(a.>. |
| 422c0 | 62 29 20 61 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f | b).a.<span.class="tok-kw">else</ |
| 422e0 | 73 70 61 6e 3e 20 62 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | span>.b;.}.<span.class="tok-kw"> |
| 42300 | 66 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 67 | fn</span>.<span.class="tok-fn">g |
| 42320 | 69 6d 6d 65 54 68 65 42 69 67 67 65 72 46 6c 6f 61 74 3c 2f 73 70 61 6e 3e 28 61 3a 20 3c 73 70 | immeTheBiggerFloat</span>(a:.<sp |
| 42340 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 20 | an.class="tok-type">f32</span>,. |
| 42360 | 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 | b:.<span.class="tok-type">f32</s |
| 42380 | 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 | pan>).<span.class="tok-type">f32 |
| 423a0 | 3c 2f 73 70 61 6e 3e 20 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 |
| 423c0 | 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 6d 61 78 28 3c 73 70 61 6e 20 63 6c 61 73 73 | w">return</span>.max(<span.class |
| 423e0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 2c 20 61 2c 20 62 29 3b 0a 7d | ="tok-type">f32</span>,.a,.b);.} |
| 42400 | 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>. |
| 42420 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 67 69 6d 6d 65 54 68 65 42 69 67 | <span.class="tok-fn">gimmeTheBig |
| 42440 | 67 65 72 49 6e 74 65 67 65 72 3c 2f 73 70 61 6e 3e 28 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | gerInteger</span>(a:.<span.class |
| 42460 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 36 34 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 3c 73 70 61 6e | ="tok-type">u64</span>,.b:.<span |
| 42480 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 36 34 3c 2f 73 70 61 6e 3e 29 20 3c 73 | .class="tok-type">u64</span>).<s |
| 424a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 36 34 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-type">u64</span>. |
| 424c0 | 7b 0a 20 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 |
| 424e0 | 6e 3c 2f 73 70 61 6e 3e 20 6d 61 78 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | n</span>.max(<span.class="tok-ty |
| 42500 | 70 65 22 3e 75 36 34 3c 2f 73 70 61 6e 3e 2c 20 61 2c 20 62 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c | pe">u64</span>,.a,.b);.}</code>< |
| 42520 | 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 5a 69 67 2c 20 74 79 | /pre>.......<p>.......In.Zig,.ty |
| 42540 | 70 65 73 20 61 72 65 20 66 69 72 73 74 2d 63 6c 61 73 73 20 63 69 74 69 7a 65 6e 73 2e 20 54 68 | pes.are.first-class.citizens..Th |
| 42560 | 65 79 20 63 61 6e 20 62 65 20 61 73 73 69 67 6e 65 64 20 74 6f 20 76 61 72 69 61 62 6c 65 73 2c | ey.can.be.assigned.to.variables, |
| 42580 | 20 70 61 73 73 65 64 20 61 73 20 70 61 72 61 6d 65 74 65 72 73 20 74 6f 20 66 75 6e 63 74 69 6f | .passed.as.parameters.to.functio |
| 425a0 | 6e 73 2c 0a 20 20 20 20 20 20 61 6e 64 20 72 65 74 75 72 6e 65 64 20 66 72 6f 6d 20 66 75 6e 63 | ns,.......and.returned.from.func |
| 425c0 | 74 69 6f 6e 73 2e 20 48 6f 77 65 76 65 72 2c 20 74 68 65 79 20 63 61 6e 20 6f 6e 6c 79 20 62 65 | tions..However,.they.can.only.be |
| 425e0 | 20 75 73 65 64 20 69 6e 20 65 78 70 72 65 73 73 69 6f 6e 73 20 77 68 69 63 68 20 61 72 65 20 6b | .used.in.expressions.which.are.k |
| 42600 | 6e 6f 77 6e 20 61 74 20 3c 65 6d 3e 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3c 2f 65 6d 3e 2c 0a 20 | nown.at.<em>compile-time</em>,.. |
| 42620 | 20 20 20 20 20 77 68 69 63 68 20 69 73 20 77 68 79 20 74 68 65 20 70 61 72 61 6d 65 74 65 72 20 | .....which.is.why.the.parameter. |
| 42640 | 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 69 6e 20 74 68 | <code.class="zig">T</code>.in.th |
| 42660 | 65 20 61 62 6f 76 65 20 73 6e 69 70 70 65 74 20 6d 75 73 74 20 62 65 20 6d 61 72 6b 65 64 20 77 | e.above.snippet.must.be.marked.w |
| 42680 | 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 |
| 426a0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | s="tok-kw">comptime</span></code |
| 426c0 | 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 20 | >........</p>.......<p>.......A. |
| 426e0 | 3c 63 6f 64 65 20 63 6c 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 |
| 42700 | 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 70 61 | ok-kw">comptime</span></code>.pa |
| 42720 | 72 61 6d 65 74 65 72 20 6d 65 61 6e 73 20 74 68 61 74 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | rameter.means.that:.......</p>.. |
| 42740 | 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 74 20 74 68 65 20 63 61 6c | .....<ul>.........<li>At.the.cal |
| 42760 | 6c 73 69 74 65 2c 20 74 68 65 20 76 61 6c 75 65 20 6d 75 73 74 20 62 65 20 6b 6e 6f 77 6e 20 61 | lsite,.the.value.must.be.known.a |
| 42780 | 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2c 20 6f 72 20 69 74 20 69 73 20 61 20 63 6f 6d 70 69 | t.compile-time,.or.it.is.a.compi |
| 427a0 | 6c 65 20 65 72 72 6f 72 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 6e 20 74 68 | le.error.</li>.........<li>In.th |
| 427c0 | 65 20 66 75 6e 63 74 69 6f 6e 20 64 65 66 69 6e 69 74 69 6f 6e 2c 20 74 68 65 20 76 61 6c 75 65 | e.function.definition,.the.value |
| 427e0 | 20 69 73 20 6b 6e 6f 77 6e 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2e 3c 2f 6c 69 3e 0a | .is.known.at.compile-time.</li>. |
| 42800 | 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 3c 2f 70 3e | ......</ul>.......<p>.......</p> |
| 42820 | 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 20 69 66 | .......<p>.......For.example,.if |
| 42840 | 20 77 65 20 77 65 72 65 20 74 6f 20 69 6e 74 72 6f 64 75 63 65 20 61 6e 6f 74 68 65 72 20 66 75 | .we.were.to.introduce.another.fu |
| 42860 | 6e 63 74 69 6f 6e 20 74 6f 20 74 68 65 20 61 62 6f 76 65 20 73 6e 69 70 70 65 74 3a 0a 20 20 20 | nction.to.the.above.snippet:.... |
| 42880 | 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 |
| 428a0 | 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" |
| 428c0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 | ><span.class="tok-kw">fn</span>. |
| 428e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 78 3c 2f 73 70 61 6e 3e 28 | <span.class="tok-fn">max</span>( |
| 42900 | 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 |
| 42920 | 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 | pan>.T:.<span.class="tok-type">t |
| 42940 | 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 61 3a 20 54 2c 20 62 3a 20 54 29 20 54 20 7b 0a 20 20 20 20 | ype</span>,.a:.T,.b:.T).T.{..... |
| 42960 | 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 |
| 42980 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e | n>.<span.class="tok-kw">if</span |
| 429a0 | 3e 20 28 61 20 26 67 74 3b 20 62 29 20 61 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | >.(a.>.b).a.<span.class="tok- |
| 429c0 | 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 62 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | kw">else</span>.b;.}.<span.class |
| 429e0 | 3d 22 74 6f 6b 2d 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 |
| 42a00 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 72 79 20 74 6f 20 70 61 73 73 20 61 20 | s="tok-str">"try.to.pass.a. |
| 42a20 | 72 75 6e 74 69 6d 65 20 74 79 70 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | runtime.type"</span>.{..... |
| 42a40 | 66 6f 6f 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 | foo(<span.class="tok-null">false |
| 42a60 | 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | </span>);.}.<span.class="tok-kw" |
| 42a80 | 3e 66 6e 3c 2f 73 70 61 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"> |
| 42aa0 | 66 6f 6f 3c 2f 73 70 61 6e 3e 28 63 6f 6e 64 69 74 69 6f 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | foo</span>(condition:.<span.clas |
| 42ac0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 | s="tok-type">bool</span>).<span. |
| 42ae0 | 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>.{.. |
| 42b00 | 20 20 20 3c 73 70 61 6e 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 |
| 42b20 | 70 61 6e 3e 20 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 | pan>.result.=.max(.........<span |
| 42b40 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 63 6f 6e 64 69 | .class="tok-kw">if</span>.(condi |
| 42b60 | 74 69 6f 6e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 | tion).<span.class="tok-type">f32 |
| 42b80 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 | </span>.<span.class="tok-kw">els |
| 42ba0 | 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | e</span>.<span.class="tok-type"> |
| 42bc0 | 75 36 34 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | u64</span>,.........<span.class= |
| 42be0 | 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 0a 20 20 20 20 20 20 | "tok-number">1234</span>,....... |
| 42c00 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 36 37 38 3c | ..<span.class="tok-number">5678< |
| 42c20 | 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 |
| 42c40 | 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. |
| 42c60 | 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 | zig.<span.class="t0_1">/home/and |
| 42c80 | 79 2f 64 65 76 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 3a | y/dev/zig/docgen_tmp/test.zig:1: |
| 42ca0 | 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 31 5f 31 22 3e 65 | 29:.</span><span.class="t31_1">e |
| 42cc0 | 72 72 6f 72 3a 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 20 | rror:</span><span.class="t0_1">. |
| 42ce0 | 75 6e 61 62 6c 65 20 74 6f 20 65 76 61 6c 75 61 74 65 20 63 6f 6e 73 74 61 6e 74 20 65 78 70 72 | unable.to.evaluate.constant.expr |
| 42d00 | 65 73 73 69 6f 6e 3c 2f 73 70 61 6e 3e 0a 66 6e 20 6d 61 78 28 63 6f 6d 70 74 69 6d 65 20 54 3a | ession</span>.fn.max(comptime.T: |
| 42d20 | 20 74 79 70 65 2c 20 61 3a 20 54 2c 20 62 3a 20 54 29 20 54 20 7b 0a 20 20 20 20 20 20 20 20 20 | .type,.a:.T,.b:.T).T.{.......... |
| 42d40 | 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=" |
| 42d60 | 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>... |
| 42d80 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 69 73 20 61 6e 20 65 72 72 6f 72 20 | .....<p>.......This.is.an.error. |
| 42da0 | 62 65 63 61 75 73 65 20 74 68 65 20 70 72 6f 67 72 61 6d 6d 65 72 20 61 74 74 65 6d 70 74 65 64 | because.the.programmer.attempted |
| 42dc0 | 20 74 6f 20 70 61 73 73 20 61 20 76 61 6c 75 65 20 6f 6e 6c 79 20 6b 6e 6f 77 6e 20 61 74 20 72 | .to.pass.a.value.only.known.at.r |
| 42de0 | 75 6e 2d 74 69 6d 65 0a 20 20 20 20 20 20 74 6f 20 61 20 66 75 6e 63 74 69 6f 6e 20 77 68 69 63 | un-time.......to.a.function.whic |
| 42e00 | 68 20 65 78 70 65 63 74 73 20 61 20 76 61 6c 75 65 20 6b 6e 6f 77 6e 20 61 74 20 63 6f 6d 70 69 | h.expects.a.value.known.at.compi |
| 42e20 | 6c 65 2d 74 69 6d 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | le-time........</p>.......<p>... |
| 42e40 | 20 20 20 20 41 6e 6f 74 68 65 72 20 77 61 79 20 74 6f 20 67 65 74 20 61 6e 20 65 72 72 6f 72 20 | ....Another.way.to.get.an.error. |
| 42e60 | 69 73 20 69 66 20 77 65 20 70 61 73 73 20 61 20 74 79 70 65 20 74 68 61 74 20 76 69 6f 6c 61 74 | is.if.we.pass.a.type.that.violat |
| 42e80 | 65 73 20 74 68 65 20 74 79 70 65 20 63 68 65 63 6b 65 72 20 77 68 65 6e 20 74 68 65 0a 20 20 20 | es.the.type.checker.when.the.... |
| 42ea0 | 20 20 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 61 6e 61 6c 79 7a 65 64 2e 20 54 68 69 73 20 69 73 | ...function.is.analyzed..This.is |
| 42ec0 | 20 77 68 61 74 20 69 74 20 6d 65 61 6e 73 20 74 6f 20 68 61 76 65 20 3c 65 6d 3e 63 6f 6d 70 69 | .what.it.means.to.have.<em>compi |
| 42ee0 | 6c 65 2d 74 69 6d 65 20 64 75 63 6b 20 74 79 70 69 6e 67 3c 2f 65 6d 3e 2e 0a 20 20 20 20 20 20 | le-time.duck.typing</em>........ |
| 42f00 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 65 78 61 6d 70 6c 65 | </p>.......<p>.......For.example |
| 42f20 | 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 |
| 42f40 | 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= |
| 42f60 | 22 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 |
| 42f80 | 70 61 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 |
| 42fa0 | 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 |
| 42fc0 | 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 |
| 42fe0 | 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.{ |
| 43000 | 0a 20 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 |
| 43020 | 3c 2f 73 70 61 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< |
| 43040 | 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 3d | /span>.(a.>.b).a.<span.class= |
| 43060 | 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 20 | "tok-kw">else</span>.b;.}.<span. |
| 43080 | 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 |
| 430a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 72 79 20 74 6f 20 63 6f | .class="tok-str">"try.to.co |
| 430c0 | 6d 70 61 72 65 20 62 6f 6f 6c 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 5f | mpare.bools"</span>.{....._ |
| 430e0 | 20 3d 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 62 6f | .=.max(<span.class="tok-type">bo |
| 43100 | 6f 6c 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c | ol</span>,.<span.class="tok-null |
| 43120 | 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ">true</span>,.<span.class="tok- |
| 43140 | 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 | null">false</span>);.}</code></p |
| 43160 | 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 |
| 43180 | 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_ |
| 431a0 | 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 | 1">/home/andy/dev/zig/docgen_tmp |
| 431c0 | 2f 74 65 73 74 2e 7a 69 67 3a 32 3a 31 38 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 | /test.zig:2:18:.</span><span.cla |
| 431e0 | 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c | ss="t31_1">error:</span><span.cl |
| 43200 | 61 73 73 3d 22 74 30 5f 31 22 3e 20 6f 70 65 72 61 74 6f 72 20 6e 6f 74 20 61 6c 6c 6f 77 65 64 | ass="t0_1">.operator.not.allowed |
| 43220 | 20 66 6f 72 20 74 79 70 65 20 27 62 6f 6f 6c 27 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 | .for.type.'bool'</span>.....retu |
| 43240 | 72 6e 20 69 66 20 28 61 20 26 67 74 3b 20 62 29 20 61 20 65 6c 73 65 20 62 3b 0a 20 20 20 20 20 | rn.if.(a.>.b).a.else.b;...... |
| 43260 | 20 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"> |
| 43280 | 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 2f 68 6f 6d | ^</span>.<span.class="t0_1">/hom |
| 432a0 | 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a | e/andy/dev/zig/docgen_tmp/test.z |
| 432c0 | 69 67 3a 35 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 36 | ig:5:12:.</span><span.class="t36 |
| 432e0 | 5f 31 22 3e 6e 6f 74 65 3a 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_ |
| 43300 | 31 22 3e 20 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 | 1">.called.from.here</span>..... |
| 43320 | 5f 20 3d 20 6d 61 78 28 62 6f 6f 6c 2c 20 74 72 75 65 2c 20 66 61 6c 73 65 29 3b 0a 20 20 20 20 | _.=.max(bool,.true,.false);..... |
| 43340 | 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 |
| 43360 | 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | an>.</code></pre>........<p>.... |
| 43380 | 20 20 20 4f 6e 20 74 68 65 20 66 6c 69 70 20 73 69 64 65 2c 20 69 6e 73 69 64 65 20 74 68 65 20 | ...On.the.flip.side,.inside.the. |
| 433a0 | 66 75 6e 63 74 69 6f 6e 20 64 65 66 69 6e 69 74 69 6f 6e 20 77 69 74 68 20 74 68 65 20 3c 63 6f | function.definition.with.the.<co |
| 433c0 | 64 65 20 63 6c 61 73 73 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- |
| 433e0 | 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 70 61 72 61 6d | kw">comptime</span></code>.param |
| 43400 | 65 74 65 72 2c 20 74 68 65 0a 20 20 20 20 20 20 76 61 6c 75 65 20 69 73 20 6b 6e 6f 77 6e 20 61 | eter,.the.......value.is.known.a |
| 43420 | 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2e 20 54 68 69 73 20 6d 65 61 6e 73 20 74 68 61 74 20 | t.compile-time..This.means.that. |
| 43440 | 77 65 20 61 63 74 75 61 6c 6c 79 20 63 6f 75 6c 64 20 6d 61 6b 65 20 74 68 69 73 20 77 6f 72 6b | we.actually.could.make.this.work |
| 43460 | 20 66 6f 72 20 74 68 65 20 62 6f 6f 6c 20 74 79 70 65 0a 20 20 20 20 20 20 69 66 20 77 65 20 77 | .for.the.bool.type.......if.we.w |
| 43480 | 61 6e 74 65 64 20 74 6f 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c | anted.to:.......</p>.......<p.cl |
| 434a0 | 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 |
| 434c0 | 65 20 63 6c 61 73 73 3d 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 |
| 434e0 | 77 22 3e 66 6e 3c 2f 73 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 |
| 43500 | 22 3e 6d 61 78 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | ">max</span>(<span.class="tok-kw |
| 43520 | 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 |
| 43540 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 61 3a 20 54 2c 20 62 | ="tok-type">type</span>,.a:.T,.b |
| 43560 | 3a 20 54 29 20 54 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | :.T).T.{.....<span.class="tok-kw |
| 43580 | 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 54 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ">if</span>.(T.==.<span.class="t |
| 435a0 | 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 | ok-type">bool</span>).{......... |
| 435c0 | 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 |
| 435e0 | 6e 3e 20 61 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 72 3c 2f 73 70 | n>.a.<span.class="tok-kw">or</sp |
| 43600 | 61 6e 3e 20 62 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | an>.b;.....}.<span.class="tok-kw |
| 43620 | 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ">else</span>.<span.class="tok-k |
| 43640 | 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 61 20 26 67 74 3b 20 62 29 20 7b 0a 20 20 20 20 20 20 | w">if</span>.(a.>.b).{....... |
| 43660 | 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 |
| 43680 | 70 61 6e 3e 20 61 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | pan>.a;.....}.<span.class="tok-k |
| 436a0 | 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | w">else</span>.{.........<span.c |
| 436c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 62 3b 0a 20 | lass="tok-kw">return</span>.b;.. |
| 436e0 | 20 20 20 7d 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 | ...}.}.<span.class="tok-kw">test |
| 43700 | 3c 2f 73 70 61 6e 3e 20 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 |
| 43720 | 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 3c 2f | uot;try.to.compare.bools"</ |
| 43740 | 73 70 61 6e 3e 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 |
| 43760 | 6c 74 69 6e 22 3e 40 69 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 |
| 43780 | 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 |
| 437a0 | 3e 29 2e 64 65 62 75 67 2e 61 73 73 65 72 74 28 6d 61 78 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | >).debug.assert(max(<span.class= |
| 437c0 | 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c | "tok-type">bool</span>,.<span.cl |
| 437e0 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 | ass="tok-null">false</span>,.<sp |
| 43800 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 29 | an.class="tok-null">true</span>) |
| 43820 | 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c | .==.<span.class="tok-null">true< |
| 43840 | 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 |
| 43860 | 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. |
| 43880 | 7a 69 67 0a 54 65 73 74 20 31 2f 31 20 74 72 79 20 74 6f 20 63 6f 6d 70 61 72 65 20 62 6f 6f 6c | zig.Test.1/1.try.to.compare.bool |
| 438a0 | 73 2e 2e 2e 4f 4b 0a 41 6c 6c 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 65 3e | s...OK.All.tests.passed..</code> |
| 438c0 | 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 77 6f 72 | </pre>........<p>.......This.wor |
| 438e0 | 6b 73 20 62 65 63 61 75 73 65 20 5a 69 67 20 69 6d 70 6c 69 63 69 74 6c 79 20 69 6e 6c 69 6e 65 | ks.because.Zig.implicitly.inline |
| 43900 | 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | s.<code.class="zig"><span.class= |
| 43920 | 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 | "tok-kw">if</span></code>.expres |
| 43940 | 73 69 6f 6e 73 20 77 68 65 6e 20 74 68 65 20 63 6f 6e 64 69 74 69 6f 6e 0a 20 20 20 20 20 20 69 | sions.when.the.condition.......i |
| 43960 | 73 20 6b 6e 6f 77 6e 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2c 20 61 6e 64 20 74 68 65 | s.known.at.compile-time,.and.the |
| 43980 | 20 63 6f 6d 70 69 6c 65 72 20 67 75 61 72 61 6e 74 65 65 73 20 74 68 61 74 20 69 74 20 77 69 6c | .compiler.guarantees.that.it.wil |
| 439a0 | 6c 20 73 6b 69 70 20 61 6e 61 6c 79 73 69 73 20 6f 66 0a 20 20 20 20 20 20 74 68 65 20 62 72 61 | l.skip.analysis.of.......the.bra |
| 439c0 | 6e 63 68 20 6e 6f 74 20 74 61 6b 65 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | nch.not.taken........</p>....... |
| 439e0 | 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 74 68 65 20 61 63 | <p>.......This.means.that.the.ac |
| 43a00 | 74 75 61 6c 20 66 75 6e 63 74 69 6f 6e 20 67 65 6e 65 72 61 74 65 64 20 66 6f 72 20 3c 63 6f 64 | tual.function.generated.for.<cod |
| 43a20 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6d 61 78 3c 2f 63 6f 64 65 3e 20 69 6e 20 74 68 69 73 | e.class="zig">max</code>.in.this |
| 43a40 | 20 73 69 74 75 61 74 69 6f 6e 20 6c 6f 6f 6b 73 20 6c 69 6b 65 0a 20 20 20 20 20 20 74 68 69 73 | .situation.looks.like.......this |
| 43a60 | 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 |
| 43a80 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 | ass="zig"><span.class="tok-kw">f |
| 43aa0 | 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 | n</span>.<span.class="tok-fn">ma |
| 43ac0 | 78 3c 2f 73 70 61 6e 3e 28 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | x</span>(a:.<span.class="tok-typ |
| 43ae0 | 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | e">bool</span>,.b:.<span.class=" |
| 43b00 | 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 |
| 43b20 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | ss="tok-type">bool</span>.{..... |
| 43b40 | 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 |
| 43b60 | 6e 3e 20 61 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 6f 72 3c 2f 73 70 | n>.a.<span.class="tok-kw">or</sp |
| 43b80 | 61 6e 3e 20 62 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 | an>.b;.}</code></pre>.......<p>. |
| 43ba0 | 20 20 20 20 20 20 41 6c 6c 20 74 68 65 20 63 6f 64 65 20 74 68 61 74 20 64 65 61 6c 74 20 77 69 | ......All.the.code.that.dealt.wi |
| 43bc0 | 74 68 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 6b 6e 6f 77 6e 20 76 61 6c 75 65 73 20 69 73 20 | th.compile-time.known.values.is. |
| 43be0 | 65 6c 69 6d 69 6e 61 74 65 64 20 61 6e 64 20 77 65 20 61 72 65 20 6c 65 66 74 20 77 69 74 68 20 | eliminated.and.we.are.left.with. |
| 43c00 | 6f 6e 6c 79 0a 20 20 20 20 20 20 74 68 65 20 6e 65 63 65 73 73 61 72 79 20 72 75 6e 2d 74 69 6d | only.......the.necessary.run-tim |
| 43c20 | 65 20 63 6f 64 65 20 74 6f 20 61 63 63 6f 6d 70 6c 69 73 68 20 74 68 65 20 74 61 73 6b 2e 0a 20 | e.code.to.accomplish.the.task... |
| 43c40 | 20 20 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 77 | .....</p>.......<p>.......This.w |
| 43c60 | 6f 72 6b 73 20 74 68 65 20 73 61 6d 65 20 77 61 79 20 66 6f 72 20 3c 63 6f 64 65 20 63 6c 61 73 | orks.the.same.way.for.<code.clas |
| 43c80 | 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 | s="zig"><span.class="tok-kw">swi |
| 43ca0 | 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 73 20 2d 20 | tch</span></code>.expressions.-. |
| 43cc0 | 74 68 65 79 20 61 72 65 20 69 6d 70 6c 69 63 69 74 6c 79 20 69 6e 6c 69 6e 65 64 0a 20 20 20 20 | they.are.implicitly.inlined..... |
| 43ce0 | 20 20 77 68 65 6e 20 74 68 65 20 74 61 72 67 65 74 20 65 78 70 72 65 73 73 69 6f 6e 20 69 73 20 | ..when.the.target.expression.is. |
| 43d00 | 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 6b 6e 6f 77 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | compile-time.known........</p>.. |
| 43d20 | 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 | ............<h3.id="Compile-Time |
| 43d40 | 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 |
| 43d60 | 65 73 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 | es</h3>........<p>.......In.Zig, |
| 43d80 | 20 74 68 65 20 70 72 6f 67 72 61 6d 6d 65 72 20 63 61 6e 20 6c 61 62 65 6c 20 76 61 72 69 61 62 | .the.programmer.can.label.variab |
| 43da0 | 6c 65 73 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 | les.as.<code.class="zig"><span.c |
| 43dc0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 | lass="tok-kw">comptime</span></c |
| 43de0 | 6f 64 65 3e 2e 20 54 68 69 73 20 67 75 61 72 61 6e 74 65 65 73 20 74 6f 20 74 68 65 20 63 6f 6d | ode>..This.guarantees.to.the.com |
| 43e00 | 70 69 6c 65 72 0a 20 20 20 20 20 20 74 68 61 74 20 65 76 65 72 79 20 6c 6f 61 64 20 61 6e 64 20 | piler.......that.every.load.and. |
| 43e20 | 73 74 6f 72 65 20 6f 66 20 74 68 65 20 76 61 72 69 61 62 6c 65 20 69 73 20 70 65 72 66 6f 72 6d | store.of.the.variable.is.perform |
| 43e40 | 65 64 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2e 20 41 6e 79 20 76 69 6f 6c 61 74 69 6f | ed.at.compile-time..Any.violatio |
| 43e60 | 6e 20 6f 66 20 74 68 69 73 20 72 65 73 75 6c 74 73 20 69 6e 20 61 0a 20 20 20 20 20 20 63 6f 6d | n.of.this.results.in.a.......com |
| 43e80 | 70 69 6c 65 20 65 72 72 6f 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e | pile.error........</p>.......<p> |
| 43ea0 | 0a 20 20 20 20 20 20 54 68 69 73 20 63 6f 6d 62 69 6e 65 64 20 77 69 74 68 20 74 68 65 20 66 61 | .......This.combined.with.the.fa |
| 43ec0 | 63 74 20 74 68 61 74 20 77 65 20 63 61 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ct.that.we.can.<code.class="zig" |
| 43ee0 | 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 |
| 43f00 | 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6c 6f 6f 70 73 20 61 6c 6c 6f 77 73 20 75 73 20 74 6f 20 77 72 | an></code>.loops.allows.us.to.wr |
| 43f20 | 69 74 65 0a 20 20 20 20 20 20 61 20 66 75 6e 63 74 69 6f 6e 20 77 68 69 63 68 20 69 73 20 70 61 | ite.......a.function.which.is.pa |
| 43f40 | 72 74 69 61 6c 6c 79 20 65 76 61 6c 75 61 74 65 64 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d | rtially.evaluated.at.compile-tim |
| 43f60 | 65 20 61 6e 64 20 70 61 72 74 69 61 6c 6c 79 20 61 74 20 72 75 6e 2d 74 69 6d 65 2e 0a 20 20 20 | e.and.partially.at.run-time..... |
| 43f80 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 65 78 61 6d | ...</p>.......<p>.......For.exam |
| 43fa0 | 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 73 3d 22 | ple:.......</p>.......<p.class=" |
| 43fc0 | 66 69 6c 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 76 61 72 73 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e | file">comptime_vars.zig</p><pre> |
| 43fe0 | 3c 63 6f 64 65 20 63 6c 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 |
| 44000 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 3c 73 70 | ok-kw">const</span>.assert.=.<sp |
| 44020 | 61 6e 20 63 6c 61 73 73 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</ |
| 44040 | 73 70 61 6e 3e 28 3c 73 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 |
| 44060 | 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 61 73 73 65 72 74 | t;std"</span>).debug.assert |
| 44080 | 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 |
| 440a0 | 70 61 6e 3e 20 43 6d 64 46 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | pan>.CmdFn.=.<span.class="tok-kw |
| 440c0 | 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 6e 61 6d 65 3a 20 5b 5d 3c 73 | ">struct</span>.{.....name:.[]<s |
| 440e0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-kw">const</span>. |
| 44100 | 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> |
| 44120 | 2c 0a 20 20 20 20 66 75 6e 63 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ,.....func:.<span.class="tok-kw" |
| 44140 | 3e 66 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 74 79 70 65 | >fn</span>(<span.class="tok-type |
| 44160 | 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 |
| 44180 | 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | ype">i32</span>,.};..<span.class |
| 441a0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 6d 64 5f 66 6e 73 20 3d | ="tok-kw">const</span>.cmd_fns.= |
| 441c0 | 20 5b 5d 43 6d 64 46 6e 7b 0a 20 20 20 20 43 6d 64 46 6e 20 7b 2e 6e 61 6d 65 20 3d 20 3c 73 70 | .[]CmdFn{.....CmdFn.{.name.=.<sp |
| 441e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6f 6e 65 26 71 75 6f | an.class="tok-str">"one&quo |
| 44200 | 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 66 75 6e 63 20 3d 20 6f 6e 65 7d 2c 0a 20 20 20 20 43 6d 64 | t;</span>,..func.=.one},.....Cmd |
| 44220 | 46 6e 20 7b 2e 6e 61 6d 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | Fn.{.name.=.<span.class="tok-str |
| 44240 | 22 3e 26 71 75 6f 74 3b 74 77 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 66 75 6e 63 20 | ">"two"</span>,..func. |
| 44260 | 3d 20 74 77 6f 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 | =.two},.....CmdFn.{.name.=.<span |
| 44280 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 68 72 65 65 26 71 75 6f | .class="tok-str">"three&quo |
| 442a0 | 74 3b 3c 2f 73 70 61 6e 3e 2c 20 2e 66 75 6e 63 20 3d 20 74 68 72 65 65 7d 2c 0a 7d 3b 0a 3c 73 | t;</span>,..func.=.three},.};.<s |
| 442c0 | 70 61 6e 20 63 6c 61 73 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 |
| 442e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6f 6e 65 3c 2f 73 70 61 6e 3e 28 76 61 6c | an.class="tok-fn">one</span>(val |
| 44300 | 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f | ue:.<span.class="tok-type">i32</ |
| 44320 | 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 | span>).<span.class="tok-type">i3 |
| 44340 | 32 3c 2f 73 70 61 6e 3e 20 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | 2</span>.{.<span.class="tok-kw"> |
| 44360 | 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 76 61 6c 75 65 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 | return</span>.value.+.<span.clas |
| 44380 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 20 7d 0a 3c 73 70 61 6e | s="tok-number">1</span>;.}.<span |
| 443a0 | 20 63 6c 61 73 73 3d 22 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. |
| 443c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 74 77 6f 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a | class="tok-fn">two</span>(value: |
| 443e0 | 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 |
| 44400 | 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f | n>).<span.class="tok-type">i32</ |
| 44420 | 73 70 61 6e 3e 20 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 | span>.{.<span.class="tok-kw">ret |
| 44440 | 75 72 6e 3c 2f 73 70 61 6e 3e 20 76 61 6c 75 65 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | urn</span>.value.+.<span.class=" |
| 44460 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 3b 20 7d 0a 3c 73 70 61 6e 20 63 6c | tok-number">2</span>;.}.<span.cl |
| 44480 | 61 73 73 3d 22 74 6f 6b 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 |
| 444a0 | 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 74 68 72 65 65 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 | ss="tok-fn">three</span>(value:. |
| 444c0 | 3c 73 70 61 6e 20 63 6c 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 |
| 444e0 | 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 | >).<span.class="tok-type">i32</s |
| 44500 | 70 61 6e 3e 20 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 | pan>.{.<span.class="tok-kw">retu |
| 44520 | 72 6e 3c 2f 73 70 61 6e 3e 20 76 61 6c 75 65 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | rn</span>.value.+.<span.class="t |
| 44540 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 3b 20 7d 0a 0a 3c 73 70 61 6e 20 63 6c | ok-number">3</span>;.}..<span.cl |
| 44560 | 61 73 73 3d 22 74 6f 6b 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 |
| 44580 | 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 70 65 72 66 6f 72 6d 46 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 | ss="tok-fn">performFn</span>(<sp |
| 445a0 | 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 |
| 445c0 | 3e 20 70 72 65 66 69 78 5f 63 68 61 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | >.prefix_char:.<span.class="tok- |
| 445e0 | 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 73 74 61 72 74 5f 76 61 6c 75 65 3a 20 3c 73 | type">u8</span>,.start_value:.<s |
| 44600 | 70 61 6e 20 63 6c 61 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>) |
| 44620 | 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 |
| 44640 | 6e 3e 20 7b 0a 20 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 |
| 44660 | 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 |
| 44680 | 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 |
| 446a0 | 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 | ;.....<span.class="tok-kw">compt |
| 446c0 | 69 6d 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | ime</span>.<span.class="tok-kw"> |
| 446e0 | 76 61 72 3c 2f 73 70 61 6e 3e 20 69 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | var</span>.i.=.<span.class="tok- |
| 44700 | 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | number">0</span>;.....<span.clas |
| 44720 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 6e 6c 69 6e 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 | s="tok-kw">inline</span>.<span.c |
| 44740 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c 2f 73 70 61 6e 3e 20 28 69 20 26 6c | lass="tok-kw">while</span>.(i.&l |
| 44760 | 74 3b 20 63 6d 64 5f 66 6e 73 2e 6c 65 6e 29 20 3a 20 28 69 20 2b 3d 20 3c 73 70 61 6e 20 63 6c | t;.cmd_fns.len).:.(i.+=.<span.cl |
| 44780 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 | ass="tok-number">1</span>).{.... |
| 447a0 | 20 20 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 |
| 447c0 | 61 6e 3e 20 28 63 6d 64 5f 66 6e 73 5b 69 5d 2e 6e 61 6d 65 5b 3c 73 70 61 6e 20 63 6c 61 73 73 | an>.(cmd_fns[i].name[<span.class |
| 447e0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 20 3d 3d 20 70 72 65 66 69 | ="tok-number">0</span>].==.prefi |
| 44800 | 78 5f 63 68 61 72 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 73 75 6c 74 20 3d 20 63 | x_char).{.............result.=.c |
| 44820 | 6d 64 5f 66 6e 73 5b 69 5d 2e 66 75 6e 63 28 72 65 73 75 6c 74 29 3b 0a 20 20 20 20 20 20 20 20 | md_fns[i].func(result);......... |
| 44840 | 7d 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | }.....}.....<span.class="tok-kw" |
| 44860 | 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 | >return</span>.result;.}..<span. |
| 44880 | 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 |
| 448a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 70 65 72 66 6f 72 6d 20 66 | .class="tok-str">"perform.f |
| 448c0 | 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 72 74 28 70 65 72 66 | n"</span>.{.....assert(perf |
| 448e0 | 6f 72 6d 46 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 74 27 3c | ormFn(<span.class="tok-str">'t'< |
| 44900 | 2f 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" |
| 44920 | 3e 31 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | >1</span>).==.<span.class="tok-n |
| 44940 | 75 6d 62 65 72 22 3e 36 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 61 73 73 65 72 74 28 70 65 72 | umber">6</span>);.....assert(per |
| 44960 | 66 6f 72 6d 46 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 6f 27 | formFn(<span.class="tok-str">'o' |
| 44980 | 3c 2f 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 |
| 449a0 | 22 3e 30 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ">0</span>).==.<span.class="tok- |
| 449c0 | 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 61 73 73 65 72 74 28 70 65 | number">1</span>);.....assert(pe |
| 449e0 | 72 66 6f 72 6d 46 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 77 | rformFn(<span.class="tok-str">'w |
| 44a00 | 27 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | '</span>,.<span.class="tok-numbe |
| 44a20 | 72 22 3e 39 39 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | r">99</span>).==.<span.class="to |
| 44a40 | 6b 2d 6e 75 6d 62 65 72 22 3e 39 39 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f | k-number">99</span>);.}</code></ |
| 44a60 | 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 |
| 44a80 | 69 67 20 74 65 73 74 20 63 6f 6d 70 74 69 6d 65 5f 76 61 72 73 2e 7a 69 67 0a 54 65 73 74 20 31 | ig.test.comptime_vars.zig.Test.1 |
| 44aa0 | 2f 31 20 70 65 72 66 6f 72 6d 20 66 6e 2e 2e 2e 4f 4b 0a 41 6c 6c 20 74 65 73 74 73 20 70 61 73 | /1.perform.fn...OK.All.tests.pas |
| 44ac0 | 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>... |
| 44ae0 | 20 20 20 20 54 68 69 73 20 65 78 61 6d 70 6c 65 20 69 73 20 61 20 62 69 74 20 63 6f 6e 74 72 69 | ....This.example.is.a.bit.contri |
| 44b00 | 76 65 64 2c 20 62 65 63 61 75 73 65 20 74 68 65 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 65 76 | ved,.because.the.compile-time.ev |
| 44b20 | 61 6c 75 61 74 69 6f 6e 20 63 6f 6d 70 6f 6e 65 6e 74 20 69 73 20 75 6e 6e 65 63 65 73 73 61 72 | aluation.component.is.unnecessar |
| 44b40 | 79 3b 0a 20 20 20 20 20 20 74 68 69 73 20 63 6f 64 65 20 77 6f 75 6c 64 20 77 6f 72 6b 20 66 69 | y;.......this.code.would.work.fi |
| 44b60 | 6e 65 20 69 66 20 69 74 20 77 61 73 20 61 6c 6c 20 64 6f 6e 65 20 61 74 20 72 75 6e 2d 74 69 6d | ne.if.it.was.all.done.at.run-tim |
| 44b80 | 65 2e 20 42 75 74 20 69 74 20 64 6f 65 73 20 65 6e 64 20 75 70 20 67 65 6e 65 72 61 74 69 6e 67 | e..But.it.does.end.up.generating |
| 44ba0 | 0a 20 20 20 20 20 20 64 69 66 66 65 72 65 6e 74 20 63 6f 64 65 2e 20 49 6e 20 74 68 69 73 20 65 | .......different.code..In.this.e |
| 44bc0 | 78 61 6d 70 6c 65 2c 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 | xample,.the.function.<code.class |
| 44be0 | 3d 22 7a 69 67 22 3e 70 65 72 66 6f 72 6d 46 6e 3c 2f 63 6f 64 65 3e 20 69 73 20 67 65 6e 65 72 | ="zig">performFn</code>.is.gener |
| 44c00 | 61 74 65 64 20 74 68 72 65 65 20 64 69 66 66 65 72 65 6e 74 20 74 69 6d 65 73 2c 0a 20 20 20 20 | ated.three.different.times,..... |
| 44c20 | 20 20 20 20 20 20 66 6f 72 20 74 68 65 20 64 69 66 66 65 72 65 6e 74 20 76 61 6c 75 65 73 20 6f | ......for.the.different.values.o |
| 44c40 | 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 70 72 65 66 69 78 5f 63 68 61 72 3c | f.<code.class="zig">prefix_char< |
| 44c60 | 2f 63 6f 64 65 3e 20 70 72 6f 76 69 64 65 64 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | /code>.provided:.......</p>..... |
| 44c80 | 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 |
| 44ca0 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 46 72 6f 6d 20 74 68 65 20 6c | lass="tok-comment">//.From.the.l |
| 44cc0 | 69 6e 65 3a 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d | ine:</span>.<span.class="tok-com |
| 44ce0 | 6d 65 6e 74 22 3e 2f 2f 20 61 73 73 65 72 74 28 70 65 72 66 6f 72 6d 46 6e 28 27 74 27 2c 20 31 | ment">//.assert(performFn('t',.1 |
| 44d00 | 29 20 3d 3d 20 36 29 3b 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ).==.6);</span>.<span.class="tok |
| 44d20 | 2d 6b 77 22 3e 66 6e 3c 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- |
| 44d40 | 66 6e 22 3e 70 65 72 66 6f 72 6d 46 6e 3c 2f 73 70 61 6e 3e 28 73 74 61 72 74 5f 76 61 6c 75 65 | fn">performFn</span>(start_value |
| 44d60 | 3a 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 |
| 44d80 | 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c | an>).<span.class="tok-type">i32< |
| 44da0 | 2f 73 70 61 6e 3e 20 7b 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 |
| 44dc0 | 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ">var</span>.result:.<span.class |
| 44de0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 73 74 61 72 74 5f 76 | ="tok-type">i32</span>.=.start_v |
| 44e00 | 61 6c 75 65 3b 0a 20 20 20 20 72 65 73 75 6c 74 20 3d 20 74 77 6f 28 72 65 73 75 6c 74 29 3b 0a | alue;.....result.=.two(result);. |
| 44e20 | 20 20 20 20 72 65 73 75 6c 74 20 3d 20 74 68 72 65 65 28 72 65 73 75 6c 74 29 3b 0a 20 20 20 20 | ....result.=.three(result);..... |
| 44e40 | 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 |
| 44e60 | 6e 3e 20 72 65 73 75 6c 74 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 | n>.result;.}</code></pre>....... |
| 44e80 | 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 |
| 44ea0 | 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 46 72 6f 6d 20 74 68 65 20 6c 69 6e | ss="tok-comment">//.From.the.lin |
| 44ec0 | 65 3a 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 | e:</span>.<span.class="tok-comme |
| 44ee0 | 6e 74 22 3e 2f 2f 20 61 73 73 65 72 74 28 70 65 72 66 6f 72 6d 46 6e 28 27 6f 27 2c 20 30 29 20 | nt">//.assert(performFn('o',.0). |
| 44f00 | 3d 3d 20 31 29 3b 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ==.1);</span>.<span.class="tok-k |
| 44f20 | 77 22 3e 66 6e 3c 2f 73 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 |
| 44f40 | 22 3e 70 65 72 66 6f 72 6d 46 6e 3c 2f 73 70 61 6e 3e 28 73 74 61 72 74 5f 76 61 6c 75 65 3a 20 | ">performFn</span>(start_value:. |
| 44f60 | 3c 73 70 61 6e 20 63 6c 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 |
| 44f80 | 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 | >).<span.class="tok-type">i32</s |
| 44fa0 | 70 61 6e 3e 20 7b 0a 20 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"> |
| 44fc0 | 76 61 72 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | var</span>.result:.<span.class=" |
| 44fe0 | 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 73 74 61 72 74 5f 76 61 6c | tok-type">i32</span>.=.start_val |
| 45000 | 75 65 3b 0a 20 20 20 20 72 65 73 75 6c 74 20 3d 20 6f 6e 65 28 72 65 73 75 6c 74 29 3b 0a 20 20 | ue;.....result.=.one(result);... |
| 45020 | 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 |
| 45040 | 70 61 6e 3e 20 72 65 73 75 6c 74 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 | pan>.result;.}</code></pre>..... |
| 45060 | 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 |
| 45080 | 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 46 72 6f 6d 20 74 68 65 20 6c | lass="tok-comment">//.From.the.l |
| 450a0 | 69 6e 65 3a 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d | ine:</span>.<span.class="tok-com |
| 450c0 | 6d 65 6e 74 22 3e 2f 2f 20 61 73 73 65 72 74 28 70 65 72 66 6f 72 6d 46 6e 28 27 77 27 2c 20 39 | ment">//.assert(performFn('w',.9 |
| 450e0 | 39 29 20 3d 3d 20 39 39 29 3b 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | 9).==.99);</span>.<span.class="t |
| 45100 | 6f 6b 2d 6b 77 22 3e 66 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 |
| 45120 | 6b 2d 66 6e 22 3e 70 65 72 66 6f 72 6d 46 6e 3c 2f 73 70 61 6e 3e 28 73 74 61 72 74 5f 76 61 6c | k-fn">performFn</span>(start_val |
| 45140 | 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f | ue:.<span.class="tok-type">i32</ |
| 45160 | 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 | span>).<span.class="tok-type">i3 |
| 45180 | 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | 2</span>.{.....<span.class="tok- |
| 451a0 | 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 3a 20 3c 73 70 61 6e 20 63 6c 61 | kw">var</span>.result:.<span.cla |
| 451c0 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 73 74 61 72 74 | ss="tok-type">i32</span>.=.start |
| 451e0 | 5f 76 61 6c 75 65 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | _value;.....<span.class="tok-kw" |
| 45200 | 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 72 65 73 75 6c 74 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c | >return</span>.result;.}</code>< |
| 45220 | 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4e 6f 74 65 20 74 68 61 74 20 | /pre>.......<p>.......Note.that. |
| 45240 | 74 68 69 73 20 68 61 70 70 65 6e 73 20 65 76 65 6e 20 69 6e 20 61 20 64 65 62 75 67 20 62 75 69 | this.happens.even.in.a.debug.bui |
| 45260 | 6c 64 3b 20 69 6e 20 61 20 72 65 6c 65 61 73 65 20 62 75 69 6c 64 20 74 68 65 73 65 20 67 65 6e | ld;.in.a.release.build.these.gen |
| 45280 | 65 72 61 74 65 64 20 66 75 6e 63 74 69 6f 6e 73 20 73 74 69 6c 6c 0a 20 20 20 20 20 20 70 61 73 | erated.functions.still.......pas |
| 452a0 | 73 20 74 68 72 6f 75 67 68 20 72 69 67 6f 72 6f 75 73 20 4c 4c 56 4d 20 6f 70 74 69 6d 69 7a 61 | s.through.rigorous.LLVM.optimiza |
| 452c0 | 74 69 6f 6e 73 2e 20 54 68 65 20 69 6d 70 6f 72 74 61 6e 74 20 74 68 69 6e 67 20 74 6f 20 6e 6f | tions..The.important.thing.to.no |
| 452e0 | 74 65 2c 20 68 6f 77 65 76 65 72 2c 20 69 73 20 6e 6f 74 20 74 68 61 74 20 74 68 69 73 0a 20 20 | te,.however,.is.not.that.this... |
| 45300 | 20 20 20 20 69 73 20 61 20 77 61 79 20 74 6f 20 77 72 69 74 65 20 6d 6f 72 65 20 6f 70 74 69 6d | ....is.a.way.to.write.more.optim |
| 45320 | 69 7a 65 64 20 63 6f 64 65 2c 20 62 75 74 20 74 68 61 74 20 69 74 20 69 73 20 61 20 77 61 79 20 | ized.code,.but.that.it.is.a.way. |
| 45340 | 74 6f 20 6d 61 6b 65 20 73 75 72 65 20 74 68 61 74 20 77 68 61 74 20 3c 65 6d 3e 73 68 6f 75 6c | to.make.sure.that.what.<em>shoul |
| 45360 | 64 3c 2f 65 6d 3e 20 68 61 70 70 65 6e 0a 20 20 20 20 20 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 | d</em>.happen.......at.compile-t |
| 45380 | 69 6d 65 2c 20 3c 65 6d 3e 64 6f 65 73 3c 2f 65 6d 3e 20 68 61 70 70 65 6e 20 61 74 20 63 6f 6d | ime,.<em>does</em>.happen.at.com |
| 453a0 | 70 69 6c 65 2d 74 69 6d 65 2e 20 54 68 69 73 20 63 61 74 63 68 65 73 20 6d 6f 72 65 20 65 72 72 | pile-time..This.catches.more.err |
| 453c0 | 6f 72 73 20 61 6e 64 20 61 73 20 64 65 6d 6f 6e 73 74 72 61 74 65 64 0a 20 20 20 20 20 20 6c 61 | ors.and.as.demonstrated.......la |
| 453e0 | 74 65 72 20 69 6e 20 74 68 69 73 20 61 72 74 69 63 6c 65 2c 20 61 6c 6c 6f 77 73 20 65 78 70 72 | ter.in.this.article,.allows.expr |
| 45400 | 65 73 73 69 76 65 6e 65 73 73 20 74 68 61 74 20 69 6e 20 6f 74 68 65 72 20 6c 61 6e 67 75 61 67 | essiveness.that.in.other.languag |
| 45420 | 65 73 20 72 65 71 75 69 72 65 73 20 75 73 69 6e 67 20 6d 61 63 72 6f 73 2c 0a 20 20 20 20 20 20 | es.requires.using.macros,....... |
| 45440 | 67 65 6e 65 72 61 74 65 64 20 63 6f 64 65 2c 20 6f 72 20 61 20 70 72 65 70 72 6f 63 65 73 73 6f | generated.code,.or.a.preprocesso |
| 45460 | 72 20 74 6f 20 61 63 63 6f 6d 70 6c 69 73 68 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | r.to.accomplish........</p>..... |
| 45480 | 20 20 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 43 6f 6d 70 69 6c 65 2d 54 69 6d 65 2d 45 78 | .........<h3.id="Compile-Time-Ex |
| 454a0 | 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 73 69 | pressions">Compile-Time.Expressi |
| 454c0 | 6f 6e 73 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 | ons</h3>........<p>.......In.Zig |
| 454e0 | 2c 20 69 74 20 6d 61 74 74 65 72 73 20 77 68 65 74 68 65 72 20 61 20 67 69 76 65 6e 20 65 78 70 | ,.it.matters.whether.a.given.exp |
| 45500 | 72 65 73 73 69 6f 6e 20 69 73 20 6b 6e 6f 77 6e 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 | ression.is.known.at.compile-time |
| 45520 | 20 6f 72 20 72 75 6e 2d 74 69 6d 65 2e 20 41 20 70 72 6f 67 72 61 6d 6d 65 72 20 63 61 6e 0a 20 | .or.run-time..A.programmer.can.. |
| 45540 | 20 20 20 20 20 75 73 65 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | .....use.a.<code.class="zig"><sp |
| 45560 | 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 |
| 45580 | 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 20 74 6f 20 67 75 61 72 61 6e 74 65 65 | ></code>.expression.to.guarantee |
| 455a0 | 20 74 68 61 74 20 74 68 65 20 65 78 70 72 65 73 73 69 6f 6e 20 77 69 6c 6c 20 62 65 20 65 76 61 | .that.the.expression.will.be.eva |
| 455c0 | 6c 75 61 74 65 64 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2e 0a 20 20 20 20 20 20 49 66 | luated.at.compile-time........If |
| 455e0 | 20 74 68 69 73 20 63 61 6e 6e 6f 74 20 62 65 20 61 63 63 6f 6d 70 6c 69 73 68 65 64 2c 20 74 68 | .this.cannot.be.accomplished,.th |
| 45600 | 65 20 63 6f 6d 70 69 6c 65 72 20 77 69 6c 6c 20 65 6d 69 74 20 61 6e 20 65 72 72 6f 72 2e 20 46 | e.compiler.will.emit.an.error..F |
| 45620 | 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 20 | or.example:.......</p>.......<p. |
| 45640 | 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 |
| 45660 | 6f 64 65 20 63 6c 61 73 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 |
| 45680 | 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 22 | -kw">extern</span>.<span.class=" |
| 456a0 | 74 6f 6b 2d 6b 77 22 3e 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 |
| 456c0 | 6f 6b 2d 66 6e 22 3e 65 78 69 74 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ok-fn">exit</span>().<span.class |
| 456e0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 6e 6f 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 | ="tok-type">noreturn</span>;..<s |
| 45700 | 70 61 6e 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>.< |
| 45720 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 6f 6f 26 71 | span.class="tok-str">"foo&q |
| 45740 | 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 |
| 45760 | 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 | ok-kw">comptime</span>.{........ |
| 45780 | 20 65 78 69 74 28 29 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 | .exit();.....}.}</code></pre><pr |
| 457a0 | 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 |
| 457c0 | 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 2f 68 6f | .test.zig.<span.class="t0_1">/ho |
| 457e0 | 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e | me/andy/dev/zig/docgen_tmp/test. |
| 45800 | 7a 69 67 3a 35 3a 39 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 | zig:5:9:.</span><span.class="t31 |
| 45820 | 5f 31 22 3e 65 72 72 6f 72 3a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 | _1">error:</span><span.class="t0 |
| 45840 | 5f 31 22 3e 20 75 6e 61 62 6c 65 20 74 6f 20 65 76 61 6c 75 61 74 65 20 63 6f 6e 73 74 61 6e 74 | _1">.unable.to.evaluate.constant |
| 45860 | 20 65 78 70 72 65 73 73 69 6f 6e 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 65 78 69 74 28 | .expression</span>.........exit( |
| 45880 | 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 5e | );.........<span.class="t32_1">^ |
| 458a0 | 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 3e | </span>.</code></pre>........<p> |
| 458c0 | 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 73 65 20 74 68 61 | .......It.doesn't.make.sense.tha |
| 458e0 | 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 64 65 20 63 6c 61 | t.a.program.could.call.<code.cla |
| 45900 | 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 20 61 6e 79 20 6f | ss="zig">exit()</code>.(or.any.o |
| 45920 | 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 20 20 20 20 20 20 | ther.external.function)......... |
| 45940 | 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 20 69 73 20 61 20 | ..at.compile-time,.so.this.is.a. |
| 45960 | 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 3c 63 6f 64 65 20 | compile.error..However,.a.<code. |
| 45980 | 63 6c 61 73 73 3d 22 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" |
| 459a0 | 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 | >comptime</span></code>.expressi |
| 459c0 | 6f 6e 20 64 6f 65 73 20 6d 75 63 68 0a 20 20 20 20 20 20 6d 6f 72 65 20 74 68 61 6e 20 73 6f 6d | on.does.much.......more.than.som |
| 459e0 | 65 74 69 6d 65 73 20 63 61 75 73 65 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 2e 0a 20 20 | etimes.cause.a.compile.error.... |
| 45a00 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 69 74 68 69 6e 20 | ....</p>.......<p>.......Within. |
| 45a20 | 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= |
| 45a40 | 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 20 | "tok-kw">comptime</span></code>. |
| 45a60 | 65 78 70 72 65 73 73 69 6f 6e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c | expression:.......</p>.......<ul |
| 45a80 | 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 6c 6c 20 76 61 72 69 61 62 6c 65 73 20 61 72 | >...........<li>All.variables.ar |
| 45aa0 | 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= |
| 45ac0 | 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 20 | "tok-kw">comptime</span></code>. |
| 45ae0 | 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 3c 6c 69 3e 41 6c | variables.</li>...........<li>Al |
| 45b00 | 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 61 73 73 3d | l.<code.class="zig"><span.class= |
| 45b20 | 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 | "tok-kw">if</span></code>,.<code |
| 45b40 | 20 63 6c 61 73 73 3d 22 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 |
| 45b60 | 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 64 65 20 63 6c 61 | ">while</span></code>,.<code.cla |
| 45b80 | 73 73 3d 22 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 | ss="zig"><span.class="tok-kw">fo |
| 45ba0 | 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 20 63 6c 61 73 73 | r</span></code>,.and.<code.class |
| 45bc0 | 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 | ="zig"><span.class="tok-kw">swit |
| 45be0 | 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 20 65 78 70 72 65 | ch</span></code>...........expre |
| 45c00 | 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 6d 70 69 6c 65 2d | ssions.are.evaluated.at.compile- |
| 45c20 | 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 72 6f 72 20 69 66 | time,.or.emit.a.compile.error.if |
| 45c40 | 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 3e 0a 20 20 20 20 | .this.is.not.possible.</li>..... |
| 45c60 | 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 20 63 61 75 73 65 | ....<li>All.function.calls.cause |
| 45c80 | 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 20 74 68 65 20 66 | .the.compiler.to.interpret.the.f |
| 45ca0 | 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 6d 69 74 74 69 6e | unction.at.compile-time,.emittin |
| 45cc0 | 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 72 20 69 66 20 74 | g.a...........compile.error.if.t |
| 45ce0 | 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 6d 65 74 68 69 6e | he.function.tries.to.do.somethin |
| 45d00 | 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 20 73 69 64 65 20 | g.that.has.global.run-time.side. |
| 45d20 | 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 20 20 20 20 20 20 | effects.</li>.......</ul>....... |
| 45d40 | 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 6d 65 61 6e 73 20 74 68 61 74 20 61 20 70 72 6f 67 | <p>.......This.means.that.a.prog |
| 45d60 | 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 6f 6e 20 77 68 69 | rammer.can.create.a.function.whi |
| 45d80 | 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 6c 65 2d 74 69 6d | ch.is.called.both.at.compile-tim |
| 45da0 | 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 20 6e 6f 20 6d 6f | e.and.run-time,.with.......no.mo |
| 45dc0 | 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 20 72 65 71 75 69 | dification.to.the.function.requi |
| 45de0 | 72 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | red........</p>.......<p>....... |
| 45e00 | 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 20 20 20 20 20 20 | Let's.look.at.an.example:....... |
| 45e20 | 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. |
| 45e40 | 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 |
| 45e60 | 70 61 6e 20 63 6c 61 73 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>. |
| 45e80 | 61 73 73 65 72 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | assert.=.<span.class="tok-builti |
| 45ea0 | 6e 22 3e 40 69 6d 70 6f 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 |
| 45ec0 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e | ok-str">"std"</span>). |
| 45ee0 | 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 2d | debug.assert;..<span.class="tok- |
| 45f00 | 6b 77 22 3e 66 6e 3c 2f 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 |
| 45f20 | 6e 22 3e 66 69 62 6f 6e 61 63 63 69 3c 2f 73 70 61 6e 3e 28 69 6e 64 65 78 3a 20 3c 73 70 61 6e | n">fibonacci</span>(index:.<span |
| 45f40 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 | .class="tok-type">u32</span>).<s |
| 45f60 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 | pan.class="tok-type">u32</span>. |
| 45f80 | 7b 0a 20 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 |
| 45fa0 | 70 61 6e 3e 20 28 69 6e 64 65 78 20 26 6c 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | pan>.(index.<.<span.class="to |
| 45fc0 | 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | k-number">2</span>).<span.class= |
| 45fe0 | 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 69 6e 64 65 78 3b 0a 20 20 | "tok-kw">return</span>.index;... |
| 46000 | 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 |
| 46020 | 70 61 6e 3e 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 3c 73 70 61 6e 20 63 6c 61 | pan>.fibonacci(index.-.<span.cla |
| 46040 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 2b 20 66 69 62 6f | ss="tok-number">1</span>).+.fibo |
| 46060 | 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | nacci(index.-.<span.class="tok-n |
| 46080 | 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | umber">2</span>);.}..<span.class |
| 460a0 | 3d 22 74 6f 6b 2d 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 |
| 460c0 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 69 62 6f 6e 61 63 63 69 26 71 75 6f 74 | s="tok-str">"fibonacci" |
| 460e0 | 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- |
| 46100 | 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 74 65 73 74 20 66 69 62 6f 6e 61 63 63 69 20 61 74 20 72 75 | comment">//.test.fibonacci.at.ru |
| 46120 | 6e 2d 74 69 6d 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 73 65 72 74 28 66 69 62 6f 6e 61 63 | n-time</span>.....assert(fibonac |
| 46140 | 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 73 | ci(<span.class="tok-number">7</s |
| 46160 | 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 |
| 46180 | 22 3e 31 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 | ">13</span>);......<span.class=" |
| 461a0 | 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 63 69 20 61 | tok-comment">//.test.fibonacci.a |
| 461c0 | 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 | t.compile-time</span>.....<span. |
| 461e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b | class="tok-kw">comptime</span>.{ |
| 46200 | 0a 20 20 20 20 20 20 20 20 61 73 73 65 72 74 28 66 69 62 6f 6e 61 63 63 69 28 3c 73 70 61 6e 20 | .........assert(fibonacci(<span. |
| 46220 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 37 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 | class="tok-number">7</span>).==. |
| 46240 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 33 3c 2f 73 70 61 | <span.class="tok-number">13</spa |
| 46260 | 6e 3e 29 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 | n>);.....}.}</code></pre><pre><c |
| 46280 | 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 |
| 462a0 | 74 2e 7a 69 67 0a 54 65 73 74 20 31 2f 31 20 66 69 62 6f 6e 61 63 63 69 2e 2e 2e 4f 4b 0a 41 6c | t.zig.Test.1/1.fibonacci...OK.Al |
| 462c0 | 6c 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 | l.tests.passed..</code></pre>... |
| 462e0 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6d 61 67 69 6e 65 20 69 66 20 77 65 20 68 61 64 | .....<p>.......Imagine.if.we.had |
| 46300 | 20 66 6f 72 67 6f 74 74 65 6e 20 74 68 65 20 62 61 73 65 20 63 61 73 65 20 6f 66 20 74 68 65 20 | .forgotten.the.base.case.of.the. |
| 46320 | 72 65 63 75 72 73 69 76 65 20 66 75 6e 63 74 69 6f 6e 20 61 6e 64 20 74 72 69 65 64 20 74 6f 20 | recursive.function.and.tried.to. |
| 46340 | 72 75 6e 20 74 68 65 20 74 65 73 74 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | run.the.tests:.......</p>....... |
| 46360 | 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 |
| 46380 | 3e 3c 63 6f 64 65 20 63 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=" |
| 463a0 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 3c 73 | tok-kw">const</span>.assert.=.<s |
| 463c0 | 70 61 6e 20 63 6c 61 73 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< |
| 463e0 | 2f 73 70 61 6e 3e 28 3c 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 |
| 46400 | 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 61 73 73 65 72 | ot;std"</span>).debug.asser |
| 46420 | 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 |
| 46440 | 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 |
| 46460 | 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 |
| 46480 | 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=" |
| 464a0 | 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e | tok-type">u32</span>.{.....<span |
| 464c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 69 66 20 28 69 6e 64 65 78 | .class="tok-comment">//if.(index |
| 464e0 | 20 26 6c 74 3b 20 32 29 20 72 65 74 75 72 6e 20 69 6e 64 65 78 3b 3c 2f 73 70 61 6e 3e 0a 20 20 | .<.2).return.index;</span>... |
| 46500 | 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 |
| 46520 | 70 61 6e 3e 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 3c 73 70 61 6e 20 63 6c 61 | pan>.fibonacci(index.-.<span.cla |
| 46540 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 2b 20 66 69 62 6f | ss="tok-number">1</span>).+.fibo |
| 46560 | 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | nacci(index.-.<span.class="tok-n |
| 46580 | 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | umber">2</span>);.}..<span.class |
| 465a0 | 3d 22 74 6f 6b 2d 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 |
| 465c0 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 69 62 6f 6e 61 63 63 69 26 71 75 6f 74 | s="tok-str">"fibonacci" |
| 465e0 | 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- |
| 46600 | 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 61 73 | kw">comptime</span>.{.........as |
| 46620 | 73 65 72 74 28 66 69 62 6f 6e 61 63 63 69 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | sert(fibonacci(<span.class="tok- |
| 46640 | 6e 75 6d 62 65 72 22 3e 37 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | number">7</span>).==.<span.class |
| 46660 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 33 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a | ="tok-number">13</span>);.....}. |
| 46680 | 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=" |
| 466a0 | 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 |
| 466c0 | 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 | .class="t0_1">/home/andy/dev/zig |
| 466e0 | 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 32 38 3a 20 3c 2f 73 70 61 | /docgen_tmp/test.zig:5:28:.</spa |
| 46700 | 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 3c 2f 73 70 | n><span.class="t31_1">error:</sp |
| 46720 | 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 20 6f 70 65 72 61 74 69 6f 6e | an><span.class="t0_1">.operation |
| 46740 | 20 63 61 75 73 65 64 20 6f 76 65 72 66 6c 6f 77 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 | .caused.overflow</span>.....retu |
| 46760 | 72 6e 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 31 29 20 2b 20 66 69 62 6f 6e 61 | rn.fibonacci(index.-.1).+.fibona |
| 46780 | 63 63 69 28 69 6e 64 65 78 20 2d 20 32 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | cci(index.-.2);................. |
| 467a0 | 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">^ |
| 467c0 | 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 2f 68 6f 6d 65 | </span>.<span.class="t0_1">/home |
| 467e0 | 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 | /andy/dev/zig/docgen_tmp/test.zi |
| 46800 | 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 36 5f | g:5:21:.</span><span.class="t36_ |
| 46820 | 31 22 3e 6e 6f 74 65 3a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 | 1">note:</span><span.class="t0_1 |
| 46840 | 22 3e 20 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 72 | ">.called.from.here</span>.....r |
| 46860 | 65 74 75 72 6e 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 31 29 20 2b 20 66 69 62 | eturn.fibonacci(index.-.1).+.fib |
| 46880 | 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 32 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | onacci(index.-.2);.............. |
| 468a0 | 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 |
| 468c0 | 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 | an>.<span.class="t0_1">/home/and |
| 468e0 | 79 2f 64 65 76 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 | y/dev/zig/docgen_tmp/test.zig:5: |
| 46900 | 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 |
| 46920 | 6f 74 65 3a 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 20 63 | ote:</span><span.class="t0_1">.c |
| 46940 | 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 |
| 46960 | 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 |
| 46980 | 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);.................. |
| 469a0 | 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>. |
| 469c0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 | <span.class="t0_1">/home/andy/de |
| 469e0 | 76 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 32 31 3a 20 | v/zig/docgen_tmp/test.zig:5:21:. |
| 46a00 | 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: |
| 46a20 | 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 20 63 61 6c 6c 65 | </span><span.class="t0_1">.calle |
| 46a40 | 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 |
| 46a60 | 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 |
| 46a80 | 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);.....................< |
| 46aa0 | 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 |
| 46ac0 | 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 | n.class="t0_1">/home/andy/dev/zi |
| 46ae0 | 67 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 2f 73 70 | g/docgen_tmp/test.zig:5:21:.</sp |
| 46b00 | 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 3c 2f 73 70 | an><span.class="t36_1">note:</sp |
| 46b20 | 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 20 63 61 6c 6c 65 64 20 66 72 | an><span.class="t0_1">.called.fr |
| 46b40 | 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 6f 6e 61 | om.here</span>.....return.fibona |
| 46b60 | 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 64 65 78 | cci(index.-.1).+.fibonacci(index |
| 46b80 | 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 70 61 6e | .-.2);.....................<span |
| 46ba0 | 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 |
| 46bc0 | 61 73 73 3d 22 74 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f | ass="t0_1">/home/andy/dev/zig/do |
| 46be0 | 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>< |
| 46c00 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 3c 2f 73 70 61 6e 3e 3c | span.class="t36_1">note:</span>< |
| 46c20 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 20 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 | span.class="t0_1">.called.from.h |
| 46c40 | 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( |
| 46c60 | 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 |
| 46c80 | 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 |
| 46ca0 | 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= |
| 46cc0 | 22 74 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e | "t0_1">/home/andy/dev/zig/docgen |
| 46ce0 | 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 32 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e | _tmp/test.zig:5:21:.</span><span |
| 46d00 | 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e | .class="t36_1">note:</span><span |
| 46d20 | 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 20 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c | .class="t0_1">.called.from.here< |
| 46d40 | 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 |
| 46d60 | 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);.. |
| 46d80 | 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=" |
| 46da0 | 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_ |
| 46dc0 | 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 | 1">/home/andy/dev/zig/docgen_tmp |
| 46de0 | 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 32 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 | /test.zig:5:21:.</span><span.cla |
| 46e00 | 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 | ss="t36_1">note:</span><span.cla |
| 46e20 | 73 73 3d 22 74 30 5f 31 22 3e 20 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 | ss="t0_1">.called.from.here</spa |
| 46e40 | 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 78 20 2d 20 | n>.....return.fibonacci(index.-. |
| 46e60 | 31 29 20 2b 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 32 29 3b 0a 20 20 20 20 20 | 1).+.fibonacci(index.-.2);...... |
| 46e80 | 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_ |
| 46ea0 | 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 3e 2f | 1">^</span>.<span.class="t0_1">/ |
| 46ec0 | 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 | home/andy/dev/zig/docgen_tmp/tes |
| 46ee0 | 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= |
| 46f00 | 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 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= |
| 46f20 | 22 74 30 5f 31 22 3e 20 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>. |
| 46f40 | 20 20 20 20 20 20 20 20 61 73 73 65 72 74 28 66 69 62 6f 6e 61 63 63 69 28 37 29 20 3d 3d 20 31 | ........assert(fibonacci(7).==.1 |
| 46f60 | 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 |
| 46f80 | 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> |
| 46fa0 | 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 6d 70 | </pre>........<p>.......The.comp |
| 46fc0 | 69 6c 65 72 20 70 72 6f 64 75 63 65 73 20 61 6e 20 65 72 72 6f 72 20 77 68 69 63 68 20 69 73 20 | iler.produces.an.error.which.is. |
| 46fe0 | 61 20 73 74 61 63 6b 20 74 72 61 63 65 20 66 72 6f 6d 20 74 72 79 69 6e 67 20 74 6f 20 65 76 61 | a.stack.trace.from.trying.to.eva |
| 47000 | 6c 75 61 74 65 20 74 68 65 0a 20 20 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 61 74 20 63 6f 6d 70 | luate.the.......function.at.comp |
| 47020 | 69 6c 65 2d 74 69 6d 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | ile-time........</p>.......<p>.. |
| 47040 | 20 20 20 20 20 4c 75 63 6b 69 6c 79 2c 20 77 65 20 75 73 65 64 20 61 6e 20 75 6e 73 69 67 6e 65 | .....Luckily,.we.used.an.unsigne |
| 47060 | 64 20 69 6e 74 65 67 65 72 2c 20 61 6e 64 20 73 6f 20 77 68 65 6e 20 77 65 20 74 72 69 65 64 20 | d.integer,.and.so.when.we.tried. |
| 47080 | 74 6f 20 73 75 62 74 72 61 63 74 20 31 20 66 72 6f 6d 20 30 2c 20 69 74 20 74 72 69 67 67 65 72 | to.subtract.1.from.0,.it.trigger |
| 470a0 | 65 64 0a 20 20 20 20 20 20 75 6e 64 65 66 69 6e 65 64 20 62 65 68 61 76 69 6f 72 2c 20 77 68 69 | ed.......undefined.behavior,.whi |
| 470c0 | 63 68 20 69 73 20 61 6c 77 61 79 73 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 69 66 20 | ch.is.always.a.compile.error.if. |
| 470e0 | 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 6b 6e 6f 77 73 20 69 74 20 68 61 70 70 65 6e 65 64 2e 0a | the.compiler.knows.it.happened.. |
| 47100 | 20 20 20 20 20 20 42 75 74 20 77 68 61 74 20 77 6f 75 6c 64 20 68 61 76 65 20 68 61 70 70 65 6e | ......But.what.would.have.happen |
| 47120 | 65 64 20 69 66 20 77 65 20 75 73 65 64 20 61 20 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 3f 0a | ed.if.we.used.a.signed.integer?. |
| 47140 | 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" |
| 47160 | 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 |
| 47180 | 69 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</ |
| 471a0 | 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | span>.assert.=.<span.class="tok- |
| 471c0 | 62 75 69 6c 74 69 6e 22 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 |
| 471e0 | 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 |
| 47200 | 70 61 6e 3e 29 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | pan>).debug.assert;..<span.class |
| 47220 | 3d 22 74 6f 6b 2d 6b 77 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= |
| 47240 | 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 78 3a | "tok-fn">fibonacci</span>(index: |
| 47260 | 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 |
| 47280 | 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f | n>).<span.class="tok-type">i32</ |
| 472a0 | 73 70 61 6e 3e 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 |
| 472c0 | 6d 65 6e 74 22 3e 2f 2f 69 66 20 28 69 6e 64 65 78 20 26 6c 74 3b 20 32 29 20 72 65 74 75 72 6e | ment">//if.(index.<.2).return |
| 472e0 | 20 69 6e 64 65 78 3b 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .index;</span>.....<span.class=" |
| 47300 | 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 66 69 62 6f 6e 61 63 63 69 28 | tok-kw">return</span>.fibonacci( |
| 47320 | 69 6e 64 65 78 20 2d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | index.-.<span.class="tok-number" |
| 47340 | 3e 31 3c 2f 73 70 61 6e 3e 29 20 2b 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 3c | >1</span>).+.fibonacci(index.-.< |
| 47360 | 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> |
| 47380 | 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< |
| 473a0 | 2f 73 70 61 6e 3e 20 3c 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 |
| 473c0 | 6f 74 3b 66 69 62 6f 6e 61 63 63 69 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | ot;fibonacci"</span>.{..... |
| 473e0 | 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 |
| 47400 | 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 61 73 73 65 72 74 28 66 69 62 6f 6e 61 63 63 69 28 | pan>.{.........assert(fibonacci( |
| 47420 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 37 3c 2f 73 70 61 6e | <span.class="tok-number">7</span |
| 47440 | 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 | >).==.<span.class="tok-number">1 |
| 47460 | 33 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c | 3</span>);.....}.}</code></pre>< |
| 47480 | 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 |
| 474a0 | 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 2f | st.test.zig.<span.class="t0_1">/ |
| 474c0 | 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 | home/andy/dev/zig/docgen_tmp/tes |
| 474e0 | 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=" |
| 47500 | 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | t31_1">error:</span><span.class= |
| 47520 | 22 74 30 5f 31 22 3e 20 65 76 61 6c 75 61 74 69 6f 6e 20 65 78 63 65 65 64 65 64 20 31 30 30 30 | "t0_1">.evaluation.exceeded.1000 |
| 47540 | 20 62 61 63 6b 77 61 72 64 73 20 62 72 61 6e 63 68 65 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 | .backwards.branches</span>.....r |
| 47560 | 65 74 75 72 6e 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 31 29 20 2b 20 66 69 62 | eturn.fibonacci(index.-.1).+.fib |
| 47580 | 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 32 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | onacci(index.-.2);.............. |
| 475a0 | 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 |
| 475c0 | 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 | an>.<span.class="t0_1">/home/and |
| 475e0 | 79 2f 64 65 76 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 | y/dev/zig/docgen_tmp/test.zig:5: |
| 47600 | 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 |
| 47620 | 6f 74 65 3a 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 20 63 | ote:</span><span.class="t0_1">.c |
| 47640 | 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 |
| 47660 | 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 |
| 47680 | 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);.................. |
| 476a0 | 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>. |
| 476c0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 | <span.class="t0_1">/home/andy/de |
| 476e0 | 76 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 32 31 3a 20 | v/zig/docgen_tmp/test.zig:5:21:. |
| 47700 | 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: |
| 47720 | 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 20 63 61 6c 6c 65 | </span><span.class="t0_1">.calle |
| 47740 | 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 |
| 47760 | 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 |
| 47780 | 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);.....................< |
| 477a0 | 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 |
| 477c0 | 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 | n.class="t0_1">/home/andy/dev/zi |
| 477e0 | 67 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 2f 73 70 | g/docgen_tmp/test.zig:5:21:.</sp |
| 47800 | 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 3c 2f 73 70 | an><span.class="t36_1">note:</sp |
| 47820 | 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 20 63 61 6c 6c 65 64 20 66 72 | an><span.class="t0_1">.called.fr |
| 47840 | 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 6f 6e 61 | om.here</span>.....return.fibona |
| 47860 | 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 64 65 78 | cci(index.-.1).+.fibonacci(index |
| 47880 | 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 70 61 6e | .-.2);.....................<span |
| 478a0 | 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 |
| 478c0 | 61 73 73 3d 22 74 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f | ass="t0_1">/home/andy/dev/zig/do |
| 478e0 | 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>< |
| 47900 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 3c 2f 73 70 61 6e 3e 3c | span.class="t36_1">note:</span>< |
| 47920 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 20 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 | span.class="t0_1">.called.from.h |
| 47940 | 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( |
| 47960 | 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 |
| 47980 | 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 |
| 479a0 | 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= |
| 479c0 | 22 74 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e | "t0_1">/home/andy/dev/zig/docgen |
| 479e0 | 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 32 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e | _tmp/test.zig:5:21:.</span><span |
| 47a00 | 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e | .class="t36_1">note:</span><span |
| 47a20 | 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 20 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c | .class="t0_1">.called.from.here< |
| 47a40 | 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 |
| 47a60 | 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);.. |
| 47a80 | 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=" |
| 47aa0 | 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_ |
| 47ac0 | 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 | 1">/home/andy/dev/zig/docgen_tmp |
| 47ae0 | 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 32 31 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 | /test.zig:5:21:.</span><span.cla |
| 47b00 | 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 | ss="t36_1">note:</span><span.cla |
| 47b20 | 73 73 3d 22 74 30 5f 31 22 3e 20 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 | ss="t0_1">.called.from.here</spa |
| 47b40 | 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 78 20 2d 20 | n>.....return.fibonacci(index.-. |
| 47b60 | 31 29 20 2b 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 32 29 3b 0a 20 20 20 20 20 | 1).+.fibonacci(index.-.2);...... |
| 47b80 | 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_ |
| 47ba0 | 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 3e 2f | 1">^</span>.<span.class="t0_1">/ |
| 47bc0 | 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 | home/andy/dev/zig/docgen_tmp/tes |
| 47be0 | 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=" |
| 47c00 | 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | t36_1">note:</span><span.class=" |
| 47c20 | 74 30 5f 31 22 3e 20 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>.. |
| 47c40 | 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).+ |
| 47c60 | 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);.......... |
| 47c80 | 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">^ |
| 47ca0 | 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 2f 68 6f 6d 65 | </span>.<span.class="t0_1">/home |
| 47cc0 | 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 | /andy/dev/zig/docgen_tmp/test.zi |
| 47ce0 | 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 36 5f | g:5:21:.</span><span.class="t36_ |
| 47d00 | 31 22 3e 6e 6f 74 65 3a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 | 1">note:</span><span.class="t0_1 |
| 47d20 | 22 3e 20 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 72 | ">.called.from.here</span>.....r |
| 47d40 | 65 74 75 72 6e 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 31 29 20 2b 20 66 69 62 | eturn.fibonacci(index.-.1).+.fib |
| 47d60 | 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 32 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | onacci(index.-.2);.............. |
| 47d80 | 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 |
| 47da0 | 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 | an>.<span.class="t0_1">/home/and |
| 47dc0 | 79 2f 64 65 76 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 | y/dev/zig/docgen_tmp/test.zig:5: |
| 47de0 | 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 |
| 47e00 | 6f 74 65 3a 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 20 63 | ote:</span><span.class="t0_1">.c |
| 47e20 | 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 |
| 47e40 | 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 |
| 47e60 | 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);.................. |
| 47e80 | 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>. |
| 47ea0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 | <span.class="t0_1">/home/andy/de |
| 47ec0 | 76 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 32 31 3a 20 | v/zig/docgen_tmp/test.zig:5:21:. |
| 47ee0 | 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: |
| 47f00 | 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 20 63 61 6c 6c 65 | </span><span.class="t0_1">.calle |
| 47f20 | 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 |
| 47f40 | 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 |
| 47f60 | 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);.....................< |
| 47f80 | 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 |
| 47fa0 | 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 | n.class="t0_1">/home/andy/dev/zi |
| 47fc0 | 67 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 2f 73 70 | g/docgen_tmp/test.zig:5:21:.</sp |
| 47fe0 | 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 3c 2f 73 70 | an><span.class="t36_1">note:</sp |
| 48000 | 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 20 63 61 6c 6c 65 64 20 66 72 | an><span.class="t0_1">.called.fr |
| 48020 | 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 6f 6e 61 | om.here</span>.....return.fibona |
| 48040 | 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 64 65 78 | cci(index.-.1).+.fibonacci(index |
| 48060 | 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 70 61 6e | .-.2);.....................<span |
| 48080 | 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c | .class="t32_1">^</span>.</code>< |
| 480a0 | 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 6d 70 69 | /pre>........<p>.......The.compi |
| 480c0 | 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 68 69 73 | ler.noticed.that.evaluating.this |
| 480e0 | 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 6b 20 61 | .function.at.compile-time.took.a |
| 48100 | 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 69 74 74 | .long.time,.......and.thus.emitt |
| 48120 | 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 70 2e 20 | ed.a.compile.error.and.gave.up.. |
| 48140 | 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 63 72 65 | If.the.programmer.wants.to.incre |
| 48160 | 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 69 6c 65 | ase.......the.budget.for.compile |
| 48180 | 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 73 65 20 | -time.computation,.they.can.use. |
| 481a0 | 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 20 20 20 | a.built-in.function.called...... |
| 481c0 | 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 22 3e 40 | .<a.href="#setEvalBranchQuota">@ |
| 481e0 | 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 6e 67 65 | setEvalBranchQuota</a>.to.change |
| 48200 | 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 6f 6d 65 | .the.default.number.1000.to.some |
| 48220 | 74 68 69 6e 67 20 65 6c 73 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e | thing.else........</p>.......<p> |
| 48240 | 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 65 20 63 | .......What.if.we.fix.the.base.c |
| 48260 | 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 69 6e 20 | ase,.but.put.the.wrong.value.in. |
| 48280 | 74 68 65 20 3c 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 | the.<code.class="zig">assert</co |
| 482a0 | 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 20 63 6c | de>.line?.......</p>.......<p.cl |
| 482c0 | 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 |
| 482e0 | 65 20 63 6c 61 73 73 3d 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 |
| 48300 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 3c 73 70 61 6e 20 63 | w">const</span>.assert.=.<span.c |
| 48320 | 6c 61 73 73 3d 22 74 6f 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 |
| 48340 | 3e 28 3c 73 70 61 6e 20 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 |
| 48360 | 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 0a 3c | d"</span>).debug.assert;..< |
| 48380 | 73 70 61 6e 20 63 6c 61 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 |
| 483a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 69 62 6f 6e 61 63 63 69 3c 2f 73 70 | pan.class="tok-fn">fibonacci</sp |
| 483c0 | 61 6e 3e 28 69 6e 64 65 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | an>(index:.<span.class="tok-type |
| 483e0 | 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 |
| 48400 | 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 |
| 48420 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 69 6e 64 65 78 20 26 6c 74 3b | s="tok-kw">if</span>.(index.< |
| 48440 | 20 3c 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 |
| 48460 | 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< |
| 48480 | 2f 73 70 61 6e 3e 20 69 6e 64 65 78 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | /span>.index;.....<span.class="t |
| 484a0 | 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 66 69 62 6f 6e 61 63 63 69 28 69 | ok-kw">return</span>.fibonacci(i |
| 484c0 | 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"> |
| 484e0 | 31 3c 2f 73 70 61 6e 3e 29 20 2b 20 66 69 62 6f 6e 61 63 63 69 28 69 6e 64 65 78 20 2d 20 3c 73 | 1</span>).+.fibonacci(index.-.<s |
| 48500 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 | pan.class="tok-number">2</span>) |
| 48520 | 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</ |
| 48540 | 73 70 61 6e 3e 20 3c 73 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 |
| 48560 | 74 3b 66 69 62 6f 6e 61 63 63 69 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c | t;fibonacci"</span>.{.....< |
| 48580 | 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 |
| 485a0 | 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 61 73 73 65 72 74 28 66 69 62 6f 6e 61 63 63 69 28 3c | an>.{.........assert(fibonacci(< |
| 485c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 37 3c 2f 73 70 61 6e 3e | span.class="tok-number">7</span> |
| 485e0 | 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 39 39 | ).==.<span.class="tok-number">99 |
| 48600 | 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 3c 2f 70 72 65 | 999</span>);.....}.}</code></pre |
| 48620 | 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. |
| 48640 | 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 | test.test.zig.<span.class="t0_1" |
| 48660 | 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 | >/home/andy/dev/zig/build/lib/zi |
| 48680 | 67 2f 73 74 64 2f 64 65 62 75 67 2f 69 6e 64 65 78 2e 7a 69 67 3a 31 31 38 3a 31 33 3a 20 3c 2f | g/std/debug/index.zig:118:13:.</ |
| 486a0 | 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 3c | span><span.class="t31_1">error:< |
| 486c0 | 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 20 65 6e 63 6f 75 6e | /span><span.class="t0_1">.encoun |
| 486e0 | 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 6d 65 3c 2f 73 70 | tered.@panic.at.compile-time</sp |
| 48700 | 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 40 70 61 6e 69 63 28 26 71 75 6f 74 3b 61 73 73 | an>.............@panic("ass |
| 48720 | 65 72 74 69 6f 6e 20 66 61 69 6c 75 72 65 26 71 75 6f 74 3b 29 3b 0a 20 20 20 20 20 20 20 20 20 | ertion.failure");.......... |
| 48740 | 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>. |
| 48760 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 | <span.class="t0_1">/home/andy/de |
| 48780 | 76 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 30 3a 31 35 3a | v/zig/docgen_tmp/test.zig:10:15: |
| 487a0 | 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 |
| 487c0 | 3a 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 20 63 61 6c 6c | :</span><span.class="t0_1">.call |
| 487e0 | 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 61 73 73 65 | ed.from.here</span>.........asse |
| 48800 | 72 74 28 66 69 62 6f 6e 61 63 63 69 28 37 29 20 3d 3d 20 39 39 39 39 39 29 3b 0a 20 20 20 20 20 | rt(fibonacci(7).==.99999);...... |
| 48820 | 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">^</ |
| 48840 | 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | span>.</code></pre>........<p>.. |
| 48860 | 20 20 20 20 20 57 68 61 74 20 68 61 70 70 65 6e 65 64 20 69 73 20 5a 69 67 20 73 74 61 72 74 65 | .....What.happened.is.Zig.starte |
| 48880 | 64 20 69 6e 74 65 72 70 72 65 74 69 6e 67 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | d.interpreting.the.<code.class=" |
| 488a0 | 7a 69 67 22 3e 61 73 73 65 72 74 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 20 77 69 74 68 | zig">assert</code>.function.with |
| 488c0 | 20 74 68 65 0a 20 20 20 20 20 20 20 20 20 20 70 61 72 61 6d 65 74 65 72 20 3c 63 6f 64 65 20 63 | .the...........parameter.<code.c |
| 488e0 | 6c 61 73 73 3d 22 7a 69 67 22 3e 6f 6b 3c 2f 63 6f 64 65 3e 20 73 65 74 20 74 6f 20 3c 63 6f 64 | lass="zig">ok</code>.set.to.<cod |
| 48900 | 65 20 63 6c 61 73 73 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 |
| 48920 | 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 20 57 68 65 6e 20 74 | ull">false</span></code>..When.t |
| 48940 | 68 65 20 69 6e 74 65 72 70 72 65 74 65 72 20 68 69 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | he.interpreter.hit.............. |
| 48960 | 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 |
| 48980 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3c 2f | ss="tok-kw">unreachable</span></ |
| 489a0 | 63 6f 64 65 3e 20 69 74 20 65 6d 69 74 74 65 64 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 | code>.it.emitted.a.compile.error |
| 489c0 | 2c 20 62 65 63 61 75 73 65 20 72 65 61 63 68 69 6e 67 20 75 6e 72 65 61 63 68 61 62 6c 65 0a 20 | ,.because.reaching.unreachable.. |
| 489e0 | 20 20 20 20 20 63 6f 64 65 20 69 73 20 75 6e 64 65 66 69 6e 65 64 20 62 65 68 61 76 69 6f 72 2c | .....code.is.undefined.behavior, |
| 48a00 | 20 61 6e 64 20 75 6e 64 65 66 69 6e 65 64 20 62 65 68 61 76 69 6f 72 20 63 61 75 73 65 73 20 61 | .and.undefined.behavior.causes.a |
| 48a20 | 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 64 | .compile.error.if.it.is.detected |
| 48a40 | 0a 20 20 20 20 20 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 | .......at.compile-time........</ |
| 48a60 | 70 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 20 74 68 65 20 67 6c 6f 62 61 | p>........<p>.......In.the.globa |
| 48a80 | 6c 20 73 63 6f 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 | l.scope.(outside.of.any.function |
| 48aa0 | 29 2c 20 61 6c 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 | ),.all.expressions.are.implicitl |
| 48ac0 | 79 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 | y.......<code.class="zig"><span. |
| 48ae0 | 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></ |
| 48b00 | 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 73 2e 20 54 68 69 73 20 6d 65 61 6e 73 20 74 68 | code>.expressions..This.means.th |
| 48b20 | 61 74 20 77 65 20 63 61 6e 20 75 73 65 20 66 75 6e 63 74 69 6f 6e 73 20 74 6f 0a 20 20 20 20 20 | at.we.can.use.functions.to...... |
| 48b40 | 20 69 6e 69 74 69 61 6c 69 7a 65 20 63 6f 6d 70 6c 65 78 20 73 74 61 74 69 63 20 64 61 74 61 2e | .initialize.complex.static.data. |
| 48b60 | 20 46 6f 72 20 65 78 61 6d 70 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | .For.example:.......</p>.......< |
| 48b80 | 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> |
| 48ba0 | 3c 63 6f 64 65 20 63 6c 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 |
| 48bc0 | 6f 6b 2d 6b 77 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 | ok-kw">const</span>.first_25_pri |
| 48be0 | 6d 65 73 20 3d 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 | mes.=.firstNPrimes(<span.class=" |
| 48c00 | 74 6f 6b 2d 6e 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 | tok-number">25</span>);.<span.cl |
| 48c20 | 61 73 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 75 6d 5f 6f 66 | ass="tok-kw">const</span>.sum_of |
| 48c40 | 5f 66 69 72 73 74 5f 32 35 5f 70 72 69 6d 65 73 20 3d 20 73 75 6d 28 66 69 72 73 74 5f 32 35 5f | _first_25_primes.=.sum(first_25_ |
| 48c60 | 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 |
| 48c80 | 6e 3c 2f 73 70 61 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 |
| 48ca0 | 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 |
| 48cc0 | 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. |
| 48ce0 | 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>).[ |
| 48d00 | 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 |
| 48d20 | 61 6e 3e 20 7b 0a 20 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 |
| 48d40 | 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 |
| 48d60 | 6c 61 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 |
| 48d80 | 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 |
| 48da0 | 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 |
| 48dc0 | 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 |
| 48de0 | 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 |
| 48e00 | 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>;.. |
| 48e20 | 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 |
| 48e40 | 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 |
| 48e60 | 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= |
| 48e80 | 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 |
| 48ea0 | 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 |
| 48ec0 | 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).:. |
| 48ee0 | 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 |
| 48f00 | 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 |
| 48f20 | 61 6e 20 63 6c 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 |
| 48f40 | 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- |
| 48f60 | 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 |
| 48f80 | 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>;......... |
| 48fa0 | 3c 73 70 61 6e 20 63 6c 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>. |
| 48fc0 | 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 |
| 48fe0 | 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 |
| 49000 | 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 |
| 49020 | 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 |
| 49040 | 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=" |
| 49060 | 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>).{......... |
| 49080 | 20 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 |
| 490a0 | 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 |
| 490c0 | 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 |
| 490e0 | 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>).{.......... |
| 49100 | 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 |
| 49120 | 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>;.......... |
| 49140 | 20 20 20 20 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 |
| 49160 | 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>;.............}......... |
| 49180 | 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 |
| 491a0 | 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).{........... |
| 491c0 | 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_ |
| 491e0 | 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.+ |
| 49200 | 3d 20 3c 73 70 61 6e 20 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 |
| 49220 | 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 |
| 49240 | 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 |
| 49260 | 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"> |
| 49280 | 66 6e 3c 2f 73 70 61 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 |
| 492a0 | 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 |
| 492c0 | 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 |
| 492e0 | 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. |
| 49300 | 63 6c 61 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>.{... |
| 49320 | 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 |
| 49340 | 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" |
| 49360 | 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 |
| 49380 | 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 |
| 493a0 | 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).| |
| 493c0 | 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;.....}. |
| 493e0 | 20 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< |
| 49400 | 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 |
| 49420 | 6f 6b 2d 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=" |
| 49440 | 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 |
| 49460 | 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 |
| 49480 | 6f 6b 2d 62 75 69 6c 74 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 |
| 494a0 | 20 63 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" |
| 494c0 | 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 61 73 73 65 72 74 28 73 75 6d 5f 6f 66 5f 66 69 72 | </span>).debug.assert(sum_of_fir |
| 494e0 | 73 74 5f 32 35 5f 70 72 69 6d 65 73 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | st_25_primes.==.<span.class="tok |
| 49500 | 2d 6e 75 6d 62 65 72 22 3e 31 30 36 30 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c | -number">1060</span>);.}</code>< |
| 49520 | 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">$. |
| 49540 | 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 31 2f 31 20 76 61 72 69 61 | zig.test.test.zig.Test.1/1.varia |
| 49560 | 62 6c 65 20 76 61 6c 75 65 73 2e 2e 2e 4f 4b 0a 41 6c 6c 20 74 65 73 74 73 20 70 61 73 73 65 64 | ble.values...OK.All.tests.passed |
| 49580 | 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>...... |
| 495a0 | 20 57 68 65 6e 20 77 65 20 63 6f 6d 70 69 6c 65 20 74 68 69 73 20 70 72 6f 67 72 61 6d 2c 20 5a | .When.we.compile.this.program,.Z |
| 495c0 | 69 67 20 67 65 6e 65 72 61 74 65 73 20 74 68 65 20 63 6f 6e 73 74 61 6e 74 73 0a 20 20 20 20 20 | ig.generates.the.constants...... |
| 495e0 | 20 77 69 74 68 20 74 68 65 20 61 6e 73 77 65 72 20 70 72 65 2d 63 6f 6d 70 75 74 65 64 2e 20 48 | .with.the.answer.pre-computed..H |
| 49600 | 65 72 65 20 61 72 65 20 74 68 65 20 6c 69 6e 65 73 20 66 72 6f 6d 20 74 68 65 20 67 65 6e 65 72 | ere.are.the.lines.from.the.gener |
| 49620 | 61 74 65 64 20 4c 4c 56 4d 20 49 52 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | ated.LLVM.IR:.......</p>.......< |
| 49640 | 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 6c 6c 76 6d 22 3e 40 30 20 3d 20 69 6e 74 65 | pre><code.class="llvm">@0.=.inte |
| 49660 | 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 5b 32 35 20 78 | rnal.unnamed_addr.constant.[25.x |
| 49680 | 20 69 33 32 5d 20 5b 69 33 32 20 32 2c 20 69 33 32 20 33 2c 20 69 33 32 20 35 2c 20 69 33 32 20 | .i32].[i32.2,.i32.3,.i32.5,.i32. |
| 496a0 | 37 2c 20 69 33 32 20 31 31 2c 20 69 33 32 20 31 33 2c 20 69 33 32 20 31 37 2c 20 69 33 32 20 31 | 7,.i32.11,.i32.13,.i32.17,.i32.1 |
| 496c0 | 39 2c 20 69 33 32 20 32 33 2c 20 69 33 32 20 32 39 2c 20 69 33 32 20 33 31 2c 20 69 33 32 20 33 | 9,.i32.23,.i32.29,.i32.31,.i32.3 |
| 496e0 | 37 2c 20 69 33 32 20 34 31 2c 20 69 33 32 20 34 33 2c 20 69 33 32 20 34 37 2c 20 69 33 32 20 35 | 7,.i32.41,.i32.43,.i32.47,.i32.5 |
| 49700 | 33 2c 20 69 33 32 20 35 39 2c 20 69 33 32 20 36 31 2c 20 69 33 32 20 36 37 2c 20 69 33 32 20 37 | 3,.i32.59,.i32.61,.i32.67,.i32.7 |
| 49720 | 31 2c 20 69 33 32 20 37 33 2c 20 69 33 32 20 37 39 2c 20 69 33 32 20 38 33 2c 20 69 33 32 20 38 | 1,.i32.73,.i32.79,.i32.83,.i32.8 |
| 49740 | 39 2c 20 69 33 32 20 39 37 5d 0a 40 31 20 3d 20 69 6e 74 65 72 6e 61 6c 20 75 6e 6e 61 6d 65 64 | 9,.i32.97].@1.=.internal.unnamed |
| 49760 | 5f 61 64 64 72 20 63 6f 6e 73 74 61 6e 74 20 69 33 32 20 31 30 36 30 3c 2f 63 6f 64 65 3e 3c 2f | _addr.constant.i32.1060</code></ |
| 49780 | 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4e 6f 74 65 20 74 68 61 74 20 77 | pre>.......<p>.......Note.that.w |
| 497a0 | 65 20 64 69 64 20 6e 6f 74 20 68 61 76 65 20 74 6f 20 64 6f 20 61 6e 79 74 68 69 6e 67 20 73 70 | e.did.not.have.to.do.anything.sp |
| 497c0 | 65 63 69 61 6c 20 77 69 74 68 20 74 68 65 20 73 79 6e 74 61 78 20 6f 66 20 74 68 65 73 65 20 66 | ecial.with.the.syntax.of.these.f |
| 497e0 | 75 6e 63 74 69 6f 6e 73 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 0a 20 20 20 20 20 20 77 65 20 | unctions..For.example,.......we. |
| 49800 | 63 6f 75 6c 64 20 63 61 6c 6c 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | could.call.the.<code.class="zig" |
| 49820 | 3e 73 75 6d 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 20 61 73 20 69 73 20 77 69 74 68 20 | >sum</code>.function.as.is.with. |
| 49840 | 61 20 73 6c 69 63 65 20 6f 66 20 6e 75 6d 62 65 72 73 20 77 68 6f 73 65 20 6c 65 6e 67 74 68 20 | a.slice.of.numbers.whose.length. |
| 49860 | 61 6e 64 20 76 61 6c 75 65 73 20 77 65 72 65 0a 20 20 20 20 20 20 6f 6e 6c 79 20 6b 6e 6f 77 6e | and.values.were.......only.known |
| 49880 | 20 61 74 20 72 75 6e 2d 74 69 6d 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a | .at.run-time........</p>........ |
| 498a0 | 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 47 65 6e 65 72 69 63 2d 44 61 74 | .............<h2.id="Generic-Dat |
| 498c0 | 61 2d 53 74 72 75 63 74 75 72 65 73 22 3e 47 65 6e 65 72 69 63 20 44 61 74 61 20 53 74 72 75 63 | a-Structures">Generic.Data.Struc |
| 498e0 | 74 75 72 65 73 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 5a 69 67 20 | tures</h2>........<p>.......Zig. |
| 49900 | 75 73 65 73 20 74 68 65 73 65 20 63 61 70 61 62 69 6c 69 74 69 65 73 20 74 6f 20 69 6d 70 6c 65 | uses.these.capabilities.to.imple |
| 49920 | 6d 65 6e 74 20 67 65 6e 65 72 69 63 20 64 61 74 61 20 73 74 72 75 63 74 75 72 65 73 20 77 69 74 | ment.generic.data.structures.wit |
| 49940 | 68 6f 75 74 20 69 6e 74 72 6f 64 75 63 69 6e 67 20 61 6e 79 0a 20 20 20 20 20 20 73 70 65 63 69 | hout.introducing.any.......speci |
| 49960 | 61 6c 2d 63 61 73 65 20 73 79 6e 74 61 78 2e 20 49 66 20 79 6f 75 20 66 6f 6c 6c 6f 77 65 64 20 | al-case.syntax..If.you.followed. |
| 49980 | 61 6c 6f 6e 67 20 73 6f 20 66 61 72 2c 20 79 6f 75 20 6d 61 79 20 61 6c 72 65 61 64 79 20 6b 6e | along.so.far,.you.may.already.kn |
| 499a0 | 6f 77 20 68 6f 77 20 74 6f 20 63 72 65 61 74 65 20 61 0a 20 20 20 20 20 20 67 65 6e 65 72 69 63 | ow.how.to.create.a.......generic |
| 499c0 | 20 64 61 74 61 20 73 74 72 75 63 74 75 72 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | .data.structure........</p>..... |
| 499e0 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 48 65 72 65 20 69 73 20 61 6e 20 65 78 61 6d 70 6c 65 20 6f | ..<p>.......Here.is.an.example.o |
| 49a00 | 66 20 61 20 67 65 6e 65 72 69 63 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 4c 69 | f.a.generic.<code.class="zig">Li |
| 49a20 | 73 74 3c 2f 63 6f 64 65 3e 20 64 61 74 61 20 73 74 72 75 63 74 75 72 65 2c 20 74 68 61 74 20 77 | st</code>.data.structure,.that.w |
| 49a40 | 65 20 77 69 6c 6c 20 69 6e 73 74 61 6e 74 69 61 74 65 20 77 69 74 68 0a 20 20 20 20 20 20 20 20 | e.will.instantiate.with......... |
| 49a60 | 20 20 74 68 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 3c 73 70 | ..the.type.<code.class="zig"><sp |
| 49a80 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 3c 2f | an.class="tok-type">i32</span></ |
| 49aa0 | 63 6f 64 65 3e 2e 20 49 6e 20 5a 69 67 20 77 65 20 72 65 66 65 72 20 74 6f 20 74 68 65 20 74 79 | code>..In.Zig.we.refer.to.the.ty |
| 49ac0 | 70 65 20 61 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 4c 69 73 74 28 3c 73 70 | pe.as.<code.class="zig">List(<sp |
| 49ae0 | 61 6e 20 63 6c 61 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 | an.class="tok-type">i32</span>)< |
| 49b00 | 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 72 65 3e 3c 63 | /code>........</p>.......<pre><c |
| 49b20 | 6f 64 65 20 63 6c 61 73 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 |
| 49b40 | 2d 6b 77 22 3e 66 6e 3c 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- |
| 49b60 | 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 6f 6b | fn">List</span>(<span.class="tok |
| 49b80 | 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c | -kw">comptime</span>.T:.<span.cl |
| 49ba0 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 | ass="tok-type">type</span>).<spa |
| 49bc0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 20 7b | n.class="tok-type">type</span>.{ |
| 49be0 | 0a 20 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 |
| 49c00 | 3c 2f 73 70 61 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 |
| 49c20 | 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 69 74 65 6d 73 3a 20 5b 5d 54 2c | uct</span>.{.........items:.[]T, |
| 49c40 | 0a 20 20 20 20 20 20 20 20 6c 65 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | .........len:.<span.class="tok-t |
| 49c60 | 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 7d 3c 2f 63 6f 64 | ype">usize</span>,.....};.}</cod |
| 49c80 | 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 61 74 27 73 20 | e></pre>.......<p>.......That's. |
| 49ca0 | 69 74 2e 20 49 74 27 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 68 61 74 20 72 65 74 75 72 6e 73 | it..It's.a.function.that.returns |
| 49cc0 | 20 61 6e 20 61 6e 6f 6e 79 6d 6f 75 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | .an.anonymous.<code.class="zig"> |
| 49ce0 | 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 |
| 49d00 | 6e 3e 3c 2f 63 6f 64 65 3e 2e 20 46 6f 72 20 74 68 65 20 70 75 72 70 6f 73 65 73 20 6f 66 20 65 | n></code>..For.the.purposes.of.e |
| 49d20 | 72 72 6f 72 20 6d 65 73 73 61 67 65 73 0a 20 20 20 20 20 20 20 20 20 20 61 6e 64 20 64 65 62 75 | rror.messages...........and.debu |
| 49d40 | 67 67 69 6e 67 2c 20 5a 69 67 20 69 6e 66 65 72 73 20 74 68 65 20 6e 61 6d 65 20 3c 63 6f 64 65 | gging,.Zig.infers.the.name.<code |
| 49d60 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | .class="zig"><span.class="tok-st |
| 49d80 | 72 22 3e 26 71 75 6f 74 3b 4c 69 73 74 28 69 33 32 29 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3c | r">"List(i32)"</span>< |
| 49da0 | 2f 63 6f 64 65 3e 20 66 72 6f 6d 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 6e 61 6d 65 20 61 6e | /code>.from.the.function.name.an |
| 49dc0 | 64 20 70 61 72 61 6d 65 74 65 72 73 20 69 6e 76 6f 6b 65 64 20 77 68 65 6e 20 63 72 65 61 74 69 | d.parameters.invoked.when.creati |
| 49de0 | 6e 67 0a 20 20 20 20 20 20 74 68 65 20 61 6e 6f 6e 79 6d 6f 75 73 20 73 74 72 75 63 74 2e 0a 20 | ng.......the.anonymous.struct... |
| 49e00 | 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 6f 20 6b 65 65 | .....</p>.......<p>.......To.kee |
| 49e20 | 70 20 74 68 65 20 6c 61 6e 67 75 61 67 65 20 73 6d 61 6c 6c 20 61 6e 64 20 75 6e 69 66 6f 72 6d | p.the.language.small.and.uniform |
| 49e40 | 2c 20 61 6c 6c 20 61 67 67 72 65 67 61 74 65 20 74 79 70 65 73 20 69 6e 20 5a 69 67 20 61 72 65 | ,.all.aggregate.types.in.Zig.are |
| 49e60 | 20 61 6e 6f 6e 79 6d 6f 75 73 2e 20 54 6f 20 67 69 76 65 20 61 20 74 79 70 65 0a 20 20 20 20 20 | .anonymous..To.give.a.type...... |
| 49e80 | 20 61 20 6e 61 6d 65 2c 20 77 65 20 61 73 73 69 67 6e 20 69 74 20 74 6f 20 61 20 63 6f 6e 73 74 | .a.name,.we.assign.it.to.a.const |
| 49ea0 | 61 6e 74 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 | ant:.......</p>.......<pre><code |
| 49ec0 | 20 63 6c 61 73 73 3d 22 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 |
| 49ee0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 4e 6f 64 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | ">const</span>.Node.=.<span.clas |
| 49f00 | 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 6e | s="tok-kw">struct</span>.{.....n |
| 49f20 | 65 78 74 3a 20 2a 4e 6f 64 65 2c 0a 20 20 20 20 6e 61 6d 65 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c | ext:.*Node,.....name:.[]<span.cl |
| 49f40 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 3c 2f 63 6f | ass="tok-type">u8</span>,.};</co |
| 49f60 | 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 77 | de></pre>.......<p>.......This.w |
| 49f80 | 6f 72 6b 73 20 62 65 63 61 75 73 65 20 61 6c 6c 20 74 6f 70 20 6c 65 76 65 6c 20 64 65 63 6c 61 | orks.because.all.top.level.decla |
| 49fa0 | 72 61 74 69 6f 6e 73 20 61 72 65 20 6f 72 64 65 72 2d 69 6e 64 65 70 65 6e 64 65 6e 74 2c 20 61 | rations.are.order-independent,.a |
| 49fc0 | 6e 64 20 61 73 20 6c 6f 6e 67 20 61 73 20 74 68 65 72 65 20 69 73 6e 27 74 0a 20 20 20 20 20 20 | nd.as.long.as.there.isn't....... |
| 49fe0 | 61 6e 20 61 63 74 75 61 6c 20 69 6e 66 69 6e 69 74 65 20 72 65 67 72 65 73 73 69 6f 6e 2c 20 76 | an.actual.infinite.regression,.v |
| 4a000 | 61 6c 75 65 73 20 63 61 6e 20 72 65 66 65 72 20 74 6f 20 74 68 65 6d 73 65 6c 76 65 73 2c 20 64 | alues.can.refer.to.themselves,.d |
| 4a020 | 69 72 65 63 74 6c 79 20 6f 72 20 69 6e 64 69 72 65 63 74 6c 79 2e 20 49 6e 20 74 68 69 73 20 63 | irectly.or.indirectly..In.this.c |
| 4a040 | 61 73 65 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 4e 6f 64 | ase,.......<code.class="zig">Nod |
| 4a060 | 65 3c 2f 63 6f 64 65 3e 20 72 65 66 65 72 73 20 74 6f 20 69 74 73 65 6c 66 20 61 73 20 61 20 70 | e</code>.refers.to.itself.as.a.p |
| 4a080 | 6f 69 6e 74 65 72 2c 20 77 68 69 63 68 20 69 73 20 6e 6f 74 20 61 63 74 75 61 6c 6c 79 20 61 6e | ointer,.which.is.not.actually.an |
| 4a0a0 | 20 69 6e 66 69 6e 69 74 65 20 72 65 67 72 65 73 73 69 6f 6e 2c 20 73 6f 0a 20 20 20 20 20 20 69 | .infinite.regression,.so.......i |
| 4a0c0 | 74 20 77 6f 72 6b 73 20 66 69 6e 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a | t.works.fine........</p>........ |
| 4a0e0 | 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 43 61 73 65 2d 53 74 75 64 79 2d 70 72 69 6e 74 66 2d | ......<h2.id="Case-Study-printf- |
| 4a100 | 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 5a 69 | in-Zig">Case.Study:.printf.in.Zi |
| 4a120 | 67 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 50 75 74 74 69 6e 67 20 | g</h2>........<p>.......Putting. |
| 4a140 | 61 6c 6c 20 6f 66 20 74 68 69 73 20 74 6f 67 65 74 68 65 72 2c 20 6c 65 74 27 73 20 73 65 65 20 | all.of.this.together,.let's.see. |
| 4a160 | 68 6f 77 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 70 72 69 6e 74 66 3c 2f 63 6f | how.<code.class="zig">printf</co |
| 4a180 | 64 65 3e 20 77 6f 72 6b 73 20 69 6e 20 5a 69 67 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | de>.works.in.Zig........</p>.... |
| 4a1a0 | 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 |
| 4a1c0 | 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 |
| 4a1e0 | 61 73 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 61 72 6e 20 3d | ass="tok-kw">const</span>.warn.= |
| 4a200 | 20 3c 73 70 61 6e 20 63 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 |
| 4a220 | 72 74 3c 2f 73 70 61 6e 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"> |
| 4a240 | 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 77 61 | "std"</span>).debug.wa |
| 4a260 | 72 6e 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 | rn;..<span.class="tok-kw">const< |
| 4a280 | 2f 73 70 61 6e 3e 20 61 5f 6e 75 6d 62 65 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | /span>.a_number:.<span.class="to |
| 4a2a0 | 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 |
| 4a2c0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e | ="tok-number">1234</span>;.<span |
| 4a2e0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 5f 73 | .class="tok-kw">const</span>.a_s |
| 4a300 | 74 72 69 6e 67 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 | tring.=.<span.class="tok-str">&q |
| 4a320 | 75 6f 74 3b 66 6f 6f 62 61 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 | uot;foobar"</span>;..<span. |
| 4a340 | 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. |
| 4a360 | 63 6c 61 73 73 3d 22 74 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 |
| 4a380 | 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 | lass="tok-fn">main</span>().<spa |
| 4a3a0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b | n.class="tok-type">void</span>.{ |
| 4a3c0 | 0a 20 20 20 20 77 61 72 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e | .....warn(<span.class="tok-str"> |
| 4a3e0 | 26 71 75 6f 74 3b 68 65 72 65 20 69 73 20 61 20 73 74 72 69 6e 67 3a 20 27 7b 7d 27 20 68 65 72 | "here.is.a.string:.'{}'.her |
| 4a400 | 65 20 69 73 20 61 20 6e 75 6d 62 65 72 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | e.is.a.number:.{}\n"</span> |
| 4a420 | 2c 20 61 5f 73 74 72 69 6e 67 2c 20 61 5f 6e 75 6d 62 65 72 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c | ,.a_string,.a_number);.}</code>< |
| 4a440 | 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">$. |
| 4a460 | 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 70 72 69 6e 74 66 2e 7a 69 67 0a 24 20 2e 2f 70 72 69 | zig.build-exe.printf.zig.$../pri |
| 4a480 | 6e 74 66 0a 68 65 72 65 20 69 73 20 61 20 73 74 72 69 6e 67 3a 20 27 66 6f 6f 62 61 72 27 20 68 | ntf.here.is.a.string:.'foobar'.h |
| 4a4a0 | 65 72 65 20 69 73 20 61 20 6e 75 6d 62 65 72 3a 20 31 32 33 34 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 | ere.is.a.number:.1234.</code></p |
| 4a4c0 | 72 65 3e 0a 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4c 65 74 27 73 20 63 72 61 63 | re>.........<p>.......Let's.crac |
| 4a4e0 | 6b 20 6f 70 65 6e 20 74 68 65 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 6f 66 20 74 68 69 | k.open.the.implementation.of.thi |
| 4a500 | 73 20 61 6e 64 20 73 65 65 20 68 6f 77 20 69 74 20 77 6f 72 6b 73 3a 0a 20 20 20 20 20 20 3c 2f | s.and.see.how.it.works:.......</ |
| 4a520 | 70 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 | p>........<pre><code.class="zig" |
| 4a540 | 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 2f 20 43 | ><span.class="tok-comment">///.C |
| 4a560 | 61 6c 6c 73 20 70 72 69 6e 74 20 61 6e 64 20 74 68 65 6e 20 66 6c 75 73 68 65 73 20 74 68 65 20 | alls.print.and.then.flushes.the. |
| 4a580 | 62 75 66 66 65 72 2e 3c 2f 73 70 61 6e 3e 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | buffer.</span>.<span.class="tok- |
| 4a5a0 | 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- |
| 4a5c0 | 6b 77 22 3e 66 6e 3c 2f 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 |
| 4a5e0 | 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 |
| 4a600 | 6d 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 | m,.<span.class="tok-kw">comptime |
| 4a620 | 3c 2f 73 70 61 6e 3e 20 66 6f 72 6d 61 74 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | </span>.format:.[]<span.class="t |
| 4a640 | 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= |
| 4a660 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 61 72 67 73 3a 20 2e 2e 2e 29 | "tok-type">u8</span>,.args:....) |
| 4a680 | 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 |
| 4a6a0 | 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</ |
| 4a6c0 | 73 70 61 6e 3e 20 7b 0a 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" |
| 4a6e0 | 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 |
| 4a700 | 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>.{........ |
| 4a720 | 20 53 74 61 72 74 2c 0a 20 20 20 20 20 20 20 20 4f 70 65 6e 42 72 61 63 65 2c 0a 20 20 20 20 20 | .Start,.........OpenBrace,...... |
| 4a740 | 20 20 20 43 6c 6f 73 65 42 72 61 63 65 2c 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e | ...CloseBrace,.....};......<span |
| 4a760 | 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>. |
| 4a780 | 3c 73 70 61 6e 20 63 6c 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>. |
| 4a7a0 | 73 74 61 72 74 5f 69 6e 64 65 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | start_index:.<span.class="tok-ty |
| 4a7c0 | 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | pe">usize</span>.=.<span.class=" |
| 4a7e0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | tok-number">0</span>;.....<span. |
| 4a800 | 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>.< |
| 4a820 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 73 | span.class="tok-kw">var</span>.s |
| 4a840 | 74 61 74 65 20 3d 20 53 74 61 74 65 2e 53 74 61 72 74 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | tate.=.State.Start;.....<span.cl |
| 4a860 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 | ass="tok-kw">comptime</span>.<sp |
| 4a880 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6e 65 78 | an.class="tok-kw">var</span>.nex |
| 4a8a0 | 74 5f 61 72 67 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 | t_arg:.<span.class="tok-type">us |
| 4a8c0 | 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 |
| 4a8e0 | 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | mber">0</span>;......<span.class |
| 4a900 | 3d 22 74 6f 6b 2d 6b 77 22 3e 69 6e 6c 69 6e 65 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c | ="tok-kw">inline</span>.<span.cl |
| 4a920 | 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 74 29 | ass="tok-kw">for</span>.(format) |
| 4a940 | 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 22 74 | .|c,.i|.{.........<span.class="t |
| 4a960 | 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 0a 20 | ok-kw">switch</span>.(state).{.. |
| 4a980 | 20 20 20 20 20 20 20 20 20 20 20 53 74 61 74 65 2e 53 74 61 72 74 20 3d 26 67 74 3b 20 3c 73 70 | ...........State.Start.=>.<sp |
| 4a9a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 | an.class="tok-kw">switch</span>. |
| 4a9c0 | 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 61 73 | (c).{.................<span.clas |
| 4a9e0 | 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 0a 20 | s="tok-str">'{'</span>.=>.{.. |
| 4aa00 | 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=" |
| 4aa20 | 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 73 74 61 72 74 5f 69 6e 64 65 78 20 26 | tok-kw">if</span>.(start_index.& |
| 4aa40 | 6c 74 3b 20 69 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c | lt;.i).<span.class="tok-kw">try< |
| 4aa60 | 2f 73 70 61 6e 3e 20 73 65 6c 66 2e 77 72 69 74 65 28 66 6f 72 6d 61 74 5b 73 74 61 72 74 5f 69 | /span>.self.write(format[start_i |
| 4aa80 | 6e 64 65 78 2e 2e 69 5d 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 | ndex..i]);.....................s |
| 4aaa0 | 74 61 74 65 20 3d 20 53 74 61 74 65 2e 4f 70 65 6e 42 72 61 63 65 3b 0a 20 20 20 20 20 20 20 20 | tate.=.State.OpenBrace;......... |
| 4aac0 | 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e | ........},.................<span |
| 4aae0 | 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 26 67 74 | .class="tok-str">'}'</span>.=> |
| 4ab00 | 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 20 63 6c | ;.{.....................<span.cl |
| 4ab20 | 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 5f 69 6e | ass="tok-kw">if</span>.(start_in |
| 4ab40 | 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 6b 77 22 | dex.<.i).<span.class="tok-kw" |
| 4ab60 | 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 |
| 4ab80 | 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 20 20 20 | art_index..i]);................. |
| 4aba0 | 20 20 20 20 73 74 61 74 65 20 3d 20 53 74 61 74 65 2e 43 6c 6f 73 65 42 72 61 63 65 3b 0a 20 20 | ....state.=.State.CloseBrace;... |
| 4abc0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ..............},................ |
| 4abe0 | 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 |
| 4ac00 | 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 20 20 20 20 | >.=>.{},.............},...... |
| 4ac20 | 20 20 20 20 20 20 20 53 74 61 74 65 2e 4f 70 65 6e 42 72 61 63 65 20 3d 26 67 74 3b 20 3c 73 70 | .......State.OpenBrace.=>.<sp |
| 4ac40 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 | an.class="tok-kw">switch</span>. |
| 4ac60 | 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 61 73 | (c).{.................<span.clas |
| 4ac80 | 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 0a 20 | s="tok-str">'{'</span>.=>.{.. |
| 4aca0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61 74 65 20 3d 20 53 74 61 74 65 | ...................state.=.State |
| 4acc0 | 2e 53 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 61 72 | .Start;.....................star |
| 4ace0 | 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 2c 0a | t_index.=.i;.................},. |
| 4ad00 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ................<span.class="tok |
| 4ad20 | 2d 73 74 72 22 3e 27 7d 27 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 7b 0a 20 20 20 20 20 20 20 | -str">'}'</span>.=>.{........ |
| 4ad40 | 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .............<span.class="tok-kw |
| 4ad60 | 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 65 6c 66 2e 70 72 69 6e 74 56 61 6c 75 65 28 61 72 67 | ">try</span>.self.printValue(arg |
| 4ad80 | 73 5b 6e 65 78 74 5f 61 72 67 5d 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | s[next_arg]);................... |
| 4ada0 | 20 20 6e 65 78 74 5f 61 72 67 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | ..next_arg.+=.<span.class="tok-n |
| 4adc0 | 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | umber">1</span>;................ |
| 4ade0 | 20 20 20 20 20 73 74 61 74 65 20 3d 20 53 74 61 74 65 2e 53 74 61 72 74 3b 0a 20 20 20 20 20 20 | .....state.=.State.Start;....... |
| 4ae00 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61 72 74 5f 69 6e 64 65 78 20 3d 20 69 20 2b 20 | ..............start_index.=.i.+. |
| 4ae20 | 3c 73 70 61 6e 20 63 6c 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 |
| 4ae40 | 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 20 20 20 20 20 | >;.................},........... |
| 4ae60 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c | ......<span.class="tok-kw">else< |
| 4ae80 | 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | /span>.=>.<span.class="tok-bu |
| 4aea0 | 69 6c 74 69 6e 22 3e 40 63 6f 6d 70 69 6c 65 45 72 72 6f 72 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 | iltin">@compileError</span>(<spa |
| 4aec0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 55 6e 6b 6e 6f 77 6e 20 | n.class="tok-str">"Unknown. |
| 4aee0 | 66 6f 72 6d 61 74 20 63 68 61 72 61 63 74 65 72 3a 20 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 | format.character:."</span>. |
| 4af00 | 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 20 20 20 20 20 | ++.c),.............},........... |
| 4af20 | 20 20 53 74 61 74 65 2e 43 6c 6f 73 65 42 72 61 63 65 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 | ..State.CloseBrace.=>.<span.c |
| 4af40 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 20 28 63 29 20 | lass="tok-kw">switch</span>.(c). |
| 4af60 | 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | {.................<span.class="t |
| 4af80 | 6f 6b 2d 73 74 72 22 3e 27 7d 27 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 7b 0a 20 20 20 20 20 | ok-str">'}'</span>.=>.{...... |
| 4afa0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61 74 65 20 3d 20 53 74 61 74 65 2e 53 74 61 | ...............state.=.State.Sta |
| 4afc0 | 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 61 72 74 5f 69 6e | rt;.....................start_in |
| 4afe0 | 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 2c 0a 20 20 20 20 | dex.=.i;.................},..... |
| 4b000 | 20 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" |
| 4b020 | 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 3d 26 67 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | >else</span>.=>.<span.class=" |
| 4b040 | 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 |
| 4b060 | 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 53 69 | >(<span.class="tok-str">"Si |
| 4b080 | 6e 67 6c 65 20 27 7d 27 20 65 6e 63 6f 75 6e 74 65 72 65 64 20 69 6e 20 66 6f 72 6d 61 74 20 73 | ngle.'}'.encountered.in.format.s |
| 4b0a0 | 74 72 69 6e 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2c 0a 20 20 20 20 20 20 20 20 20 20 20 | tring"</span>),............ |
| 4b0c0 | 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 70 61 6e 20 63 6c | .},.........}.....}.....<span.cl |
| 4b0e0 | 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>.{.. |
| 4b100 | 20 20 20 20 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</ |
| 4b120 | 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 67 29 20 7b 0a 20 | span>.(args.len.!=.next_arg).{.. |
| 4b140 | 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | ...........<span.class="tok-buil |
| 4b160 | 74 69 6e 22 3e 40 63 6f 6d 70 69 6c 65 45 72 72 6f 72 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 | tin">@compileError</span>(<span. |
| 4b180 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 55 6e 75 73 65 64 20 61 72 67 | class="tok-str">"Unused.arg |
| 4b1a0 | 75 6d 65 6e 74 73 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a | uments"</span>);.........}. |
| 4b1c0 | 20 20 20 20 20 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< |
| 4b1e0 | 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 72 74 29 20 7b 0a | /span>.(state.!=.State.Start).{. |
| 4b200 | 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | ............<span.class="tok-bui |
| 4b220 | 6c 74 69 6e 22 3e 40 63 6f 6d 70 69 6c 65 45 72 72 6f 72 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e | ltin">@compileError</span>(<span |
| 4b240 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 49 6e 63 6f 6d 70 6c 65 74 | .class="tok-str">"Incomplet |
| 4b260 | 65 20 66 6f 72 6d 61 74 20 73 74 72 69 6e 67 3a 20 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 2b | e.format.string:."</span>.+ |
| 4b280 | 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 0a 20 20 20 20 3c | +.format);.........}.....}.....< |
| 4b2a0 | 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 73 | span.class="tok-kw">if</span>.(s |
| 4b2c0 | 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 29 20 7b 0a 20 20 | tart_index.<.format.len).{... |
| 4b2e0 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f | ......<span.class="tok-kw">try</ |
| 4b300 | 73 70 61 6e 3e 20 73 65 6c 66 2e 77 72 69 74 65 28 66 6f 72 6d 61 74 5b 73 74 61 72 74 5f 69 6e | span>.self.write(format[start_in |
| 4b320 | 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 20 20 20 3c 73 70 | dex..format.len]);.....}.....<sp |
| 4b340 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 65 6c | an.class="tok-kw">try</span>.sel |
| 4b360 | 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 20 20 20 20 20 20 | f.flush();.}</code></pre>....... |
| 4b380 | 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 6f 66 20 63 6f 6e | <p>.......This.is.a.proof.of.con |
| 4b3a0 | 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 63 74 75 61 6c 20 | cept.implementation;.the.actual. |
| 4b3c0 | 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 69 62 72 61 72 79 | function.in.the.standard.library |
| 4b3e0 | 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 20 63 61 70 61 62 | .has.more.......formatting.capab |
| 4b400 | 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 3c 70 3e 0a 20 20 | ilities........</p>.......<p>... |
| 4b420 | 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 68 61 72 64 2d 63 | ....Note.that.this.is.not.hard-c |
| 4b440 | 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 3b 20 74 68 69 73 | oded.into.the.Zig.compiler;.this |
| 4b460 | 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 74 61 6e 64 61 72 | .is.userland.code.in.the.standar |
| 4b480 | 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 20 20 3c 70 3e 0a | d.library........</p>.......<p>. |
| 4b4a0 | 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 73 20 61 6e 61 6c | ......When.this.function.is.anal |
| 4b4c0 | 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 20 61 62 6f 76 65 | yzed.from.our.example.code.above |
| 4b4e0 | 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 74 68 65 20 66 75 | ,.Zig.partially.evaluates.the.fu |
| 4b500 | 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 75 6e 63 74 69 6f | nction.......and.emits.a.functio |
| 4b520 | 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 20 74 68 69 73 3a | n.that.actually.looks.like.this: |
| 4b540 | 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 |
| 4b560 | 73 73 3d 22 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 | ss="zig"><span.class="tok-kw">pu |
| 4b580 | 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 |
| 4b5a0 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 70 72 69 | </span>.<span.class="tok-fn">pri |
| 4b5c0 | 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 61 72 67 | ntf</span>(self:.*OutStream,.arg |
| 4b5e0 | 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 69 33 32 3c 2f 73 | 0:.<span.class="tok-type">i32</s |
| 4b600 | 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 22 74 6f 6b 2d 6b | pan>,.arg1:.[]<span.class="tok-k |
| 4b620 | 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 |
| 4b640 | 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | -type">u8</span>).!<span.class=" |
| 4b660 | 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 |
| 4b680 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 65 6c 66 | n.class="tok-kw">try</span>.self |
| 4b6a0 | 2e 77 72 69 74 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 | .write(<span.class="tok-str">&qu |
| 4b6c0 | 6f 74 3b 68 65 72 65 20 69 73 20 61 20 73 74 72 69 6e 67 3a 20 27 26 71 75 6f 74 3b 3c 2f 73 70 | ot;here.is.a.string:.'"</sp |
| 4b6e0 | 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 | an>);.....<span.class="tok-kw">t |
| 4b700 | 72 79 3c 2f 73 70 61 6e 3e 20 73 65 6c 66 2e 70 72 69 6e 74 56 61 6c 75 65 28 61 72 67 30 29 3b | ry</span>.self.printValue(arg0); |
| 4b720 | 0a 20 20 20 20 3c 73 70 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 |
| 4b740 | 70 61 6e 3e 20 73 65 6c 66 2e 77 72 69 74 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | pan>.self.write(<span.class="tok |
| 4b760 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 27 20 68 65 72 65 20 69 73 20 61 20 6e 75 6d 62 65 72 3a 20 | -str">"'.here.is.a.number:. |
| 4b780 | 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= |
| 4b7a0 | 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 65 6c 66 2e 70 72 69 6e 74 56 61 | "tok-kw">try</span>.self.printVa |
| 4b7c0 | 6c 75 65 28 61 72 67 31 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | lue(arg1);.....<span.class="tok- |
| 4b7e0 | 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 65 6c 66 2e 77 72 69 74 65 28 3c 73 70 61 6e 20 | kw">try</span>.self.write(<span. |
| 4b800 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 5c 6e 26 71 75 6f 74 3b 3c 2f | class="tok-str">"\n"</ |
| 4b820 | 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | span>);.....<span.class="tok-kw" |
| 4b840 | 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 73 65 6c 66 2e 66 6c 75 73 68 28 29 3b 0a 7d 3c 2f 63 6f 64 | >try</span>.self.flush();.}</cod |
| 4b860 | 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 | e></pre>.......<p>.......<code.c |
| 4b880 | 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 65 3e 20 69 73 20 | lass="zig">printValue</code>.is. |
| 4b8a0 | 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 72 61 6d 65 74 65 | a.function.that.takes.a.paramete |
| 4b8c0 | 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 66 66 65 72 65 6e | r.of.any.type,.and.does.differen |
| 4b8e0 | 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 6e 20 74 68 65 20 | t.things.depending.......on.the. |
| 4b900 | 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 65 3e 3c 63 6f 64 | type:.......</p>.......<pre><cod |
| 4b920 | 65 20 63 6c 61 73 73 3d 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 |
| 4b940 | 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 |
| 4b960 | 77 22 3e 66 6e 3c 2f 73 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 |
| 4b980 | 22 3e 70 72 69 6e 74 56 61 6c 75 65 3c 2f 73 70 61 6e 3e 28 73 65 6c 66 3a 20 2a 4f 75 74 53 74 | ">printValue</span>(self:.*OutSt |
| 4b9a0 | 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 74 6f 6b 2d 6b 77 | ream,.value:.<span.class="tok-kw |
| 4b9c0 | 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 29 20 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ">var</span>).!<span.class="tok- |
| 4b9e0 | 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 |
| 4ba00 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 54 20 3d 20 3c 73 | ass="tok-kw">const</span>.T.=.<s |
| 4ba20 | 70 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 4f 66 3c | pan.class="tok-builtin">@typeOf< |
| 4ba40 | 2f 73 70 61 6e 3e 28 76 61 6c 75 65 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | /span>(value);.....<span.class=" |
| 4ba60 | 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | tok-kw">if</span>.(<span.class=" |
| 4ba80 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 73 49 6e 74 65 67 65 72 3c 2f 73 70 61 6e 3e 28 54 | tok-builtin">@isInteger</span>(T |
| 4baa0 | 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 6b 77 | )).{.........<span.class="tok-kw |
| 4bac0 | 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 49 6e 74 28 54 2c | ">return</span>.self.printInt(T, |
| 4bae0 | 20 76 61 6c 75 65 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 | .value);.....}.<span.class="tok- |
| 4bb00 | 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 |
| 4bb20 | 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | -kw">if</span>.(<span.class="tok |
| 4bb40 | 2d 62 75 69 6c 74 69 6e 22 3e 40 69 73 46 6c 6f 61 74 3c 2f 73 70 61 6e 3e 28 54 29 29 20 7b 0a | -builtin">@isFloat</span>(T)).{. |
| 4bb60 | 20 20 20 20 20 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 |
| 4bb80 | 75 72 6e 3c 2f 73 70 61 6e 3e 20 73 65 6c 66 2e 70 72 69 6e 74 46 6c 6f 61 74 28 54 2c 20 76 61 | urn</span>.self.printFloat(T,.va |
| 4bba0 | 6c 75 65 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 | lue);.....}.<span.class="tok-kw" |
| 4bbc0 | 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | >else</span>.{.........<span.cla |
| 4bbe0 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 6f 6d 70 69 6c 65 45 72 72 6f 72 3c 2f | ss="tok-builtin">@compileError</ |
| 4bc00 | 73 70 61 6e 3e 28 3c 73 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 |
| 4bc20 | 74 3b 55 6e 61 62 6c 65 20 74 6f 20 70 72 69 6e 74 20 74 79 70 65 20 27 26 71 75 6f 74 3b 3c 2f | t;Unable.to.print.type.'"</ |
| 4bc40 | 73 70 61 6e 3e 20 2b 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | span>.++.<span.class="tok-builti |
| 4bc60 | 6e 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 | n">@typeName</span>(T).++.<span. |
| 4bc80 | 63 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 | class="tok-str">"'"</s |
| 4bca0 | 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 0a 20 20 20 20 | pan>);.....}.}</code></pre>..... |
| 4bcc0 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 6e 64 20 6e 6f 77 2c 20 77 68 61 74 20 68 61 70 70 65 6e | ..<p>.......And.now,.what.happen |
| 4bce0 | 73 20 69 66 20 77 65 20 67 69 76 65 20 74 6f 6f 20 6d 61 6e 79 20 61 72 67 75 6d 65 6e 74 73 20 | s.if.we.give.too.many.arguments. |
| 4bd00 | 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 70 72 69 6e 74 66 3c 2f 63 6f 64 | to.<code.class="zig">printf</cod |
| 4bd20 | 65 3e 3f 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 | e>?.......</p>.......<p.class="f |
| 4bd40 | 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 |
| 4bd60 | 73 3d 22 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 |
| 4bd80 | 73 74 3c 2f 73 70 61 6e 3e 20 77 61 72 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | st</span>.warn.=.<span.class="to |
| 4bda0 | 6b 2d 62 75 69 6c 74 69 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. |
| 4bdc0 | 63 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"< |
| 4bde0 | 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 77 61 72 6e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | /span>).debug.warn;..<span.class |
| 4be00 | 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 6e 75 6d 62 65 72 3a | ="tok-kw">const</span>.a_number: |
| 4be20 | 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 |
| 4be40 | 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 | n>.=.<span.class="tok-number">12 |
| 4be60 | 33 34 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | 34</span>;.<span.class="tok-kw"> |
| 4be80 | 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 73 70 61 6e 20 63 6c | const</span>.a_string.=.<span.cl |
| 4bea0 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 6f 6f 62 61 72 26 71 75 6f 74 3b | ass="tok-str">"foobar" |
| 4bec0 | 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 74 | </span>;..<span.class="tok-kw">t |
| 4bee0 | 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" |
| 4bf00 | 3e 26 71 75 6f 74 3b 70 72 69 6e 74 66 20 74 6f 6f 20 6d 61 6e 79 20 61 72 67 75 6d 65 6e 74 73 | >"printf.too.many.arguments |
| 4bf20 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 77 61 72 6e 28 3c 73 70 61 6e 20 63 | "</span>.{.....warn(<span.c |
| 4bf40 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 72 65 20 69 73 20 61 20 73 | lass="tok-str">"here.is.a.s |
| 4bf60 | 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:.{} |
| 4bf80 | 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 61 5f 73 74 72 69 6e | \n"</span>,.........a_strin |
| 4bfa0 | 67 2c 20 61 5f 6e 75 6d 62 65 72 2c 20 61 5f 6e 75 6d 62 65 72 29 3b 0a 7d 3c 2f 63 6f 64 65 3e | g,.a_number,.a_number);.}</code> |
| 4bfc0 | 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">$ |
| 4bfe0 | 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=" |
| 4c000 | 74 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c | t0_1">/home/andy/dev/zig/build/l |
| 4c020 | 69 62 2f 7a 69 67 2f 73 74 64 2f 66 6d 74 2f 69 6e 64 65 78 2e 7a 69 67 3a 39 35 3a 31 33 3a 20 | ib/zig/std/fmt/index.zig:95:13:. |
| 4c040 | 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 |
| 4c060 | 3a 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 20 55 6e 75 73 | :</span><span.class="t0_1">.Unus |
| 4c080 | 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 20 20 20 20 20 20 20 | ed.arguments</span>............. |
| 4c0a0 | 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 64 20 61 72 67 75 6d | @compileError("Unused.argum |
| 4c0c0 | 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 3c 73 70 61 6e 20 63 | ents");.............<span.c |
| 4c0e0 | 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 |
| 4c100 | 73 3d 22 74 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c | s="t0_1">/home/andy/dev/zig/buil |
| 4c120 | 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 69 6f 2e 7a 69 67 3a 32 32 37 3a 33 34 3a 20 3c 2f 73 | d/lib/zig/std/io.zig:227:34:.</s |
| 4c140 | 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 3c 2f 73 | pan><span.class="t36_1">note:</s |
| 4c160 | 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 20 63 61 6c 6c 65 64 20 66 | pan><span.class="t0_1">.called.f |
| 4c180 | 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 | rom.here</span>.............retu |
| 4c1a0 | 72 6e 20 73 74 64 2e 66 6d 74 2e 66 6f 72 6d 61 74 28 73 65 6c 66 2c 20 45 72 72 6f 72 2c 20 73 | rn.std.fmt.format(self,.Error,.s |
| 4c1c0 | 65 6c 66 2e 77 72 69 74 65 46 6e 2c 20 66 6f 72 6d 61 74 2c 20 61 72 67 73 29 3b 0a 20 20 20 20 | elf.writeFn,.format,.args);..... |
| 4c1e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 | .............................<sp |
| 4c200 | 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. |
| 4c220 | 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f | class="t0_1">/home/andy/dev/zig/ |
| 4c240 | 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 64 65 62 75 67 2f 69 6e 64 65 78 2e 7a 69 | build/lib/zig/std/debug/index.zi |
| 4c260 | 67 3a 34 36 3a 31 37 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 | g:46:17:.</span><span.class="t36 |
| 4c280 | 5f 31 22 3e 6e 6f 74 65 3a 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_ |
| 4c2a0 | 31 22 3e 20 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 | 1">.called.from.here</span>..... |
| 4c2c0 | 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 72 65 | stderr.print(fmt,.args).catch.re |
| 4c2e0 | 74 75 72 6e 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 | turn;.................<span.clas |
| 4c300 | 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=" |
| 4c320 | 74 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f | t0_1">/home/andy/dev/zig/docgen_ |
| 4c340 | 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 37 3a 39 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 | tmp/test.zig:7:9:.</span><span.c |
| 4c360 | 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 | lass="t36_1">note:</span><span.c |
| 4c380 | 6c 61 73 73 3d 22 74 30 5f 31 22 3e 20 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 | lass="t0_1">.called.from.here</s |
| 4c3a0 | 70 61 6e 3e 0a 20 20 20 20 77 61 72 6e 28 26 71 75 6f 74 3b 68 65 72 65 20 69 73 20 61 20 73 74 | pan>.....warn("here.is.a.st |
| 4c3c0 | 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 5c | ring:.'{}'.here.is.a.number:.{}\ |
| 4c3e0 | 6e 26 71 75 6f 74 3b 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 | n",.........<span.class="t3 |
| 4c400 | 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>..... |
| 4c420 | 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 67 72 61 6d 6d 65 | ...<p>.......Zig.gives.programme |
| 4c440 | 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 74 65 63 74 20 74 | rs.the.tools.needed.to.protect.t |
| 4c460 | 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 6e 20 6d 69 73 74 | hemselves.against.their.own.mist |
| 4c480 | 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 0a 20 20 20 20 20 | akes........</p>.......<p>...... |
| 4c4a0 | 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 74 68 65 20 66 6f | .Zig.doesn't.care.whether.the.fo |
| 4c4c0 | 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 6c 69 74 65 72 61 | rmat.argument.is.a.string.litera |
| 4c4e0 | 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 20 63 6f 6d 70 69 | l,.......only.that.it.is.a.compi |
| 4c500 | 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 69 73 20 69 6d 70 6c | le-time.known.value.that.is.impl |
| 4c520 | 69 63 69 74 6c 79 20 63 61 73 74 61 62 6c 65 20 74 6f 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 | icitly.castable.to.a.<code.class |
| 4c540 | 3d 22 7a 69 67 22 3e 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | ="zig">[]<span.class="tok-kw">co |
| 4c560 | 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 |
| 4c580 | 22 3e 75 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | ">u8</span></code>:.......</p>.. |
| 4c5a0 | 20 20 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 | .....<p.class="file">printf.zig< |
| 4c5c0 | 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. |
| 4c5e0 | 63 6c 61 73 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 61 72 6e | class="tok-kw">const</span>.warn |
| 4c600 | 20 3d 20 3c 73 70 61 6e 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 |
| 4c620 | 70 6f 72 74 3c 2f 73 70 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 |
| 4c640 | 22 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. |
| 4c660 | 77 61 72 6e 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 | warn;..<span.class="tok-kw">cons |
| 4c680 | 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=" |
| 4c6a0 | 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 |
| 4c6c0 | 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 |
| 4c6e0 | 61 6e 20 63 6c 61 73 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 |
| 4c700 | 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"> |
| 4c720 | 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 |
| 4c740 | 20 63 6c 61 73 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 |
| 4c760 | 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 |
| 4c780 | 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. |
| 4c7a0 | 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 |
| 4c7c0 | 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 |
| 4c7e0 | 6e 20 63 6c 61 73 73 3d 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 |
| 4c800 | 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 |
| 4c820 | 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> |
| 4c840 | 20 7b 0a 20 20 20 20 77 61 72 6e 28 66 6d 74 2c 20 61 5f 73 74 72 69 6e 67 2c 20 61 5f 6e 75 6d | .{.....warn(fmt,.a_string,.a_num |
| 4c860 | 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 20 63 | ber);.}</code></pre><pre><code.c |
| 4c880 | 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 70 72 69 | lass="shell">$.zig.build-exe.pri |
| 4c8a0 | 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 20 73 74 72 | ntf.zig.$../printf.here.is.a.str |
| 4c8c0 | 69 6e 67 3a 20 27 66 6f 6f 62 61 72 27 20 68 65 72 65 20 69 73 20 61 20 6e 75 6d 62 65 72 3a 20 | ing:.'foobar'.here.is.a.number:. |
| 4c8e0 | 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 3e 0a 20 20 | 1234.</code></pre>........<p>... |
| 4c900 | 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 2f 70 3e 0a | ....This.works.fine........</p>. |
| 4c920 | 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 20 73 70 65 | ......<p>.......Zig.does.not.spe |
| 4c940 | 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 69 6e 20 74 | cial.case.string.formatting.in.t |
| 4c960 | 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 73 65 73 20 | he.compiler.and.instead.exposes. |
| 4c980 | 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 68 69 73 0a | enough.power.to.accomplish.this. |
| 4c9a0 | 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 6f 65 73 20 | ......task.in.userland..It.does. |
| 4c9c0 | 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 65 72 20 6c | so.without.introducing.another.l |
| 4c9e0 | 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 61 73 0a 20 | anguage.on.top.of.Zig,.such.as.. |
| 4ca00 | 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 72 65 70 72 | .....a.macro.language.or.a.prepr |
| 4ca20 | 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 6c 6c 20 74 | ocessor.language..It's.Zig.all.t |
| 4ca40 | 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 20 20 0a 20 | he.way.down........</p>......... |
| 4ca60 | 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 |
| 4ca80 | 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 20 77 68 69 | .href="#inline-while">inline.whi |
| 4caa0 | 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 6c 69 6e 65 | le</a></li>.<li><a.href="#inline |
| 4cac0 | 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 75 6c 3e 0a | -for">inline.for</a></li>.</ul>. |
| 4cae0 | 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 6c 79 22 3e | ..............<h1.id="Assembly"> |
| 4cb00 | 41 73 73 65 6d 62 6c 79 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 65 78 | Assembly</h1>........<p>TODO:.ex |
| 4cb20 | 61 6d 70 6c 65 20 6f 66 20 69 6e 6c 69 6e 65 20 61 73 73 65 6d 62 6c 79 3c 2f 70 3e 0a 20 20 20 | ample.of.inline.assembly</p>.... |
| 4cb40 | 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 65 78 61 6d 70 6c 65 20 6f 66 20 6d 6f 64 75 6c 65 20 6c 65 | ...<p>TODO:.example.of.module.le |
| 4cb60 | 76 65 6c 20 61 73 73 65 6d 62 6c 79 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 | vel.assembly</p>.......<p>TODO:. |
| 4cb80 | 65 78 61 6d 70 6c 65 20 6f 66 20 75 73 69 6e 67 20 69 6e 6c 69 6e 65 20 61 73 73 65 6d 62 6c 79 | example.of.using.inline.assembly |
| 4cba0 | 20 72 65 74 75 72 6e 20 76 61 6c 75 65 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3a | .return.value</p>.......<p>TODO: |
| 4cbc0 | 20 65 78 61 6d 70 6c 65 20 6f 66 20 75 73 69 6e 67 20 69 6e 6c 69 6e 65 20 61 73 73 65 6d 62 6c | .example.of.using.inline.assembl |
| 4cbe0 | 79 20 61 73 73 69 67 6e 69 6e 67 20 76 61 6c 75 65 73 20 74 6f 20 76 61 72 69 61 62 6c 65 73 3c | y.assigning.values.to.variables< |
| 4cc00 | 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 41 74 6f 6d 69 63 73 | /p>..............<h1.id="Atomics |
| 4cc20 | 22 3e 41 74 6f 6d 69 63 73 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 40 | ">Atomics</h1>........<p>TODO:.@ |
| 4cc40 | 66 65 6e 63 65 28 29 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 40 61 74 6f 6d | fence()</p>.......<p>TODO:.@atom |
| 4cc60 | 69 63 20 72 6d 77 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 62 75 69 6c 74 69 | ic.rmw</p>.......<p>TODO:.builti |
| 4cc80 | 6e 20 61 74 6f 6d 69 63 20 6d 65 6d 6f 72 79 20 6f 72 64 65 72 69 6e 67 20 65 6e 75 6d 3c 2f 70 | n.atomic.memory.ordering.enum</p |
| 4cca0 | 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 43 6f 72 6f 75 74 69 6e 65 | >..............<h1.id="Coroutine |
| 4ccc0 | 73 22 3e 43 6f 72 6f 75 74 69 6e 65 73 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | s">Coroutines</h1>........<p>... |
| 4cce0 | 20 20 20 20 41 20 63 6f 72 6f 75 74 69 6e 65 20 69 73 20 61 20 67 65 6e 65 72 61 6c 69 7a 61 74 | ....A.coroutine.is.a.generalizat |
| 4cd00 | 69 6f 6e 20 6f 66 20 61 20 66 75 6e 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | ion.of.a.function........</p>... |
| 4cd20 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 68 65 6e 20 79 6f 75 20 63 61 6c 6c 20 61 20 66 75 | ....<p>.......When.you.call.a.fu |
| 4cd40 | 6e 63 74 69 6f 6e 2c 20 69 74 20 63 72 65 61 74 65 73 20 61 20 73 74 61 63 6b 20 66 72 61 6d 65 | nction,.it.creates.a.stack.frame |
| 4cd60 | 2c 0a 20 20 20 20 20 20 61 6e 64 20 74 68 65 6e 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 72 75 | ,.......and.then.the.function.ru |
| 4cd80 | 6e 73 20 75 6e 74 69 6c 20 69 74 20 72 65 61 63 68 65 73 20 61 20 72 65 74 75 72 6e 0a 20 20 20 | ns.until.it.reaches.a.return.... |
| 4cda0 | 20 20 20 73 74 61 74 65 6d 65 6e 74 2c 20 61 6e 64 20 74 68 65 6e 20 74 68 65 20 73 74 61 63 6b | ...statement,.and.then.the.stack |
| 4cdc0 | 20 66 72 61 6d 65 20 69 73 20 64 65 73 74 72 6f 79 65 64 2e 0a 20 20 20 20 20 20 41 74 20 74 68 | .frame.is.destroyed........At.th |
| 4cde0 | 65 20 63 61 6c 6c 73 69 74 65 2c 20 74 68 65 20 6e 65 78 74 20 6c 69 6e 65 20 6f 66 20 63 6f 64 | e.callsite,.the.next.line.of.cod |
| 4ce00 | 65 20 64 6f 65 73 20 6e 6f 74 20 72 75 6e 0a 20 20 20 20 20 20 75 6e 74 69 6c 20 74 68 65 20 66 | e.does.not.run.......until.the.f |
| 4ce20 | 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | unction.returns........</p>..... |
| 4ce40 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 20 63 6f 72 6f 75 74 69 6e 65 20 69 73 20 6c 69 6b 65 20 | ..<p>.......A.coroutine.is.like. |
| 4ce60 | 61 20 66 75 6e 63 74 69 6f 6e 2c 20 62 75 74 20 69 74 20 63 61 6e 20 62 65 20 73 75 73 70 65 6e | a.function,.but.it.can.be.suspen |
| 4ce80 | 64 65 64 0a 20 20 20 20 20 20 61 6e 64 20 72 65 73 75 6d 65 64 20 61 6e 79 20 6e 75 6d 62 65 72 | ded.......and.resumed.any.number |
| 4cea0 | 20 6f 66 20 74 69 6d 65 73 2c 20 61 6e 64 20 74 68 65 6e 20 69 74 20 6d 75 73 74 20 62 65 0a 20 | .of.times,.and.then.it.must.be.. |
| 4cec0 | 20 20 20 20 20 65 78 70 6c 69 63 69 74 6c 79 20 64 65 73 74 72 6f 79 65 64 2e 20 57 68 65 6e 20 | .....explicitly.destroyed..When. |
| 4cee0 | 61 20 63 6f 72 6f 75 74 69 6e 65 20 73 75 73 70 65 6e 64 73 2c 20 69 74 0a 20 20 20 20 20 20 72 | a.coroutine.suspends,.it.......r |
| 4cf00 | 65 74 75 72 6e 73 20 74 6f 20 74 68 65 20 72 65 73 75 6d 65 72 2e 0a 20 20 20 20 20 20 3c 2f 70 | eturns.to.the.resumer........</p |
| 4cf20 | 3e 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 4d 69 6e 69 6d 61 6c 2d 43 6f 72 6f 75 74 69 6e | >.......<h2.id="Minimal-Coroutin |
| 4cf40 | 65 2d 45 78 61 6d 70 6c 65 22 3e 4d 69 6e 69 6d 61 6c 20 43 6f 72 6f 75 74 69 6e 65 20 45 78 61 | e-Example">Minimal.Coroutine.Exa |
| 4cf60 | 6d 70 6c 65 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 44 65 63 6c 61 | mple</h2>........<p>.......Decla |
| 4cf80 | 72 65 20 61 20 63 6f 72 6f 75 74 69 6e 65 20 77 69 74 68 20 74 68 65 20 3c 63 6f 64 65 20 63 6c | re.a.coroutine.with.the.<code.cl |
| 4cfa0 | 61 73 73 3d 22 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 | ass="zig"><span.class="tok-kw">a |
| 4cfc0 | 73 79 6e 63 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 | sync</span></code>.keyword...... |
| 4cfe0 | 20 20 54 68 65 20 65 78 70 72 65 73 73 69 6f 6e 20 69 6e 20 61 6e 67 6c 65 20 62 72 61 63 6b 65 | ..The.expression.in.angle.bracke |
| 4d000 | 74 73 20 6d 75 73 74 20 65 76 61 6c 75 61 74 65 20 74 6f 20 61 20 73 74 72 75 63 74 0a 20 20 20 | ts.must.evaluate.to.a.struct.... |
| 4d020 | 20 20 20 77 68 69 63 68 20 68 61 73 20 74 68 65 73 65 20 66 69 65 6c 64 73 3a 0a 20 20 20 20 20 | ...which.has.these.fields:...... |
| 4d040 | 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>< |
| 4d060 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 6c 6c 6f 63 46 6e 3a 20 3c 73 70 61 6e 20 | code.class="zig">allocFn:.<span. |
| 4d080 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 20 28 73 65 6c 66 3a 20 | class="tok-kw">fn</span>.(self:. |
| 4d0a0 | 2a 41 6c 6c 6f 63 61 74 6f 72 2c 20 62 79 74 65 5f 63 6f 75 6e 74 3a 20 3c 73 70 61 6e 20 63 6c | *Allocator,.byte_count:.<span.cl |
| 4d0c0 | 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 6c 69 | ass="tok-type">usize</span>,.ali |
| 4d0e0 | 67 6e 6d 65 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 | gnment:.<span.class="tok-type">u |
| 4d100 | 32 39 3c 2f 73 70 61 6e 3e 29 20 45 72 72 6f 72 21 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | 29</span>).Error![]<span.class=" |
| 4d120 | 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 2d 20 77 68 65 | tok-type">u8</span></code>.-.whe |
| 4d140 | 72 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 45 72 72 6f 72 3c 2f 63 6f 64 65 | re.<code.class="zig">Error</code |
| 4d160 | 3e 20 63 61 6e 20 62 65 20 61 6e 79 20 65 72 72 6f 72 20 73 65 74 2e 3c 2f 6c 69 3e 0a 20 20 20 | >.can.be.any.error.set.</li>.... |
| 4d180 | 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 66 72 65 | .......<li><code.class="zig">fre |
| 4d1a0 | 65 46 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 | eFn:.<span.class="tok-kw">fn</sp |
| 4d1c0 | 61 6e 3e 20 28 73 65 6c 66 3a 20 2a 41 6c 6c 6f 63 61 74 6f 72 2c 20 6f 6c 64 5f 6d 65 6d 3a 20 | an>.(self:.*Allocator,.old_mem:. |
| 4d1e0 | 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 |
| 4d200 | 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c | n>).<span.class="tok-type">void< |
| 4d220 | 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 3c 2f 75 6c 3e 0a 20 | /span></code></li>.......</ul>.. |
| 4d240 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 59 6f 75 20 6d 61 79 20 6e 6f 74 69 63 65 20 74 68 | .....<p>.......You.may.notice.th |
| 4d260 | 61 74 20 74 68 69 73 20 63 6f 72 72 65 73 70 6f 6e 64 73 20 74 6f 20 74 68 65 20 3c 63 6f 64 65 | at.this.corresponds.to.the.<code |
| 4d280 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 74 64 2e 6d 65 6d 2e 41 6c 6c 6f 63 61 74 6f 72 3c 2f | .class="zig">std.mem.Allocator</ |
| 4d2a0 | 63 6f 64 65 3e 20 69 6e 74 65 72 66 61 63 65 2e 0a 20 20 20 20 20 20 54 68 69 73 20 6d 61 6b 65 | code>.interface........This.make |
| 4d2c0 | 73 20 69 74 20 63 6f 6e 76 65 6e 69 65 6e 74 20 74 6f 20 69 6e 74 65 67 72 61 74 65 20 77 69 74 | s.it.convenient.to.integrate.wit |
| 4d2e0 | 68 20 65 78 69 73 74 69 6e 67 20 61 6c 6c 6f 63 61 74 6f 72 73 2e 20 4e 6f 74 65 2c 20 68 6f 77 | h.existing.allocators..Note,.how |
| 4d300 | 65 76 65 72 2c 0a 20 20 20 20 20 20 74 68 61 74 20 74 68 65 20 6c 61 6e 67 75 61 67 65 20 66 65 | ever,.......that.the.language.fe |
| 4d320 | 61 74 75 72 65 20 64 6f 65 73 20 6e 6f 74 20 64 65 70 65 6e 64 20 6f 6e 20 74 68 65 20 73 74 61 | ature.does.not.depend.on.the.sta |
| 4d340 | 6e 64 61 72 64 20 6c 69 62 72 61 72 79 2c 20 61 6e 64 20 61 6e 79 20 73 74 72 75 63 74 20 77 68 | ndard.library,.and.any.struct.wh |
| 4d360 | 69 63 68 0a 20 20 20 20 20 20 68 61 73 20 74 68 65 73 65 20 66 69 65 6c 64 73 20 69 73 20 61 6c | ich.......has.these.fields.is.al |
| 4d380 | 6c 6f 77 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 | lowed........</p>.......<p>..... |
| 4d3a0 | 20 20 4f 6d 69 74 74 69 6e 67 20 74 68 65 20 61 6e 67 6c 65 20 62 72 61 63 6b 65 74 20 65 78 70 | ..Omitting.the.angle.bracket.exp |
| 4d3c0 | 72 65 73 73 69 6f 6e 20 77 68 65 6e 20 64 65 66 69 6e 69 6e 67 20 61 6e 20 61 73 79 6e 63 20 66 | ression.when.defining.an.async.f |
| 4d3e0 | 75 6e 63 74 69 6f 6e 20 6d 61 6b 65 73 0a 20 20 20 20 20 20 74 68 65 20 66 75 6e 63 74 69 6f 6e | unction.makes.......the.function |
| 4d400 | 20 67 65 6e 65 72 69 63 2e 20 5a 69 67 20 77 69 6c 6c 20 69 6e 66 65 72 20 74 68 65 20 61 6c 6c | .generic..Zig.will.infer.the.all |
| 4d420 | 6f 63 61 74 6f 72 20 74 79 70 65 20 77 68 65 6e 20 74 68 65 20 61 73 79 6e 63 20 66 75 6e 63 74 | ocator.type.when.the.async.funct |
| 4d440 | 69 6f 6e 20 69 73 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 | ion.is.called........</p>....... |
| 4d460 | 3c 70 3e 0a 20 20 20 20 20 20 43 61 6c 6c 20 61 20 63 6f 72 6f 75 74 69 6e 65 20 77 69 74 68 20 | <p>.......Call.a.coroutine.with. |
| 4d480 | 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 | the.<code.class="zig"><span.clas |
| 4d4a0 | 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 6b | s="tok-kw">async</span></code>.k |
| 4d4c0 | 65 79 77 6f 72 64 2e 20 48 65 72 65 2c 20 74 68 65 20 65 78 70 72 65 73 73 69 6f 6e 20 69 6e 20 | eyword..Here,.the.expression.in. |
| 4d4e0 | 61 6e 67 6c 65 20 62 72 61 63 6b 65 74 73 0a 20 20 20 20 20 20 69 73 20 61 20 70 6f 69 6e 74 65 | angle.brackets.......is.a.pointe |
| 4d500 | 72 20 74 6f 20 74 68 65 20 61 6c 6c 6f 63 61 74 6f 72 20 73 74 72 75 63 74 20 74 68 61 74 20 74 | r.to.the.allocator.struct.that.t |
| 4d520 | 68 65 20 63 6f 72 6f 75 74 69 6e 65 20 65 78 70 65 63 74 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | he.coroutine.expects........</p> |
| 4d540 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 72 65 73 75 6c 74 20 6f 66 20 61 | .......<p>.......The.result.of.a |
| 4d560 | 6e 20 61 73 79 6e 63 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 20 69 73 20 61 20 3c 63 6f 64 65 | n.async.function.call.is.a.<code |
| 4d580 | 20 63 6c 61 73 73 3d 22 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 |
| 4d5a0 | 22 3e 70 72 6f 6d 69 73 65 3c 2f 73 70 61 6e 3e 2d 26 67 74 3b 54 3c 2f 63 6f 64 65 3e 20 74 79 | ">promise</span>->T</code>.ty |
| 4d5c0 | 70 65 2c 20 77 68 65 72 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 54 3c 2f 63 | pe,.where.<code.class="zig">T</c |
| 4d5e0 | 6f 64 65 3e 0a 20 20 20 20 20 20 69 73 20 74 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 20 6f 66 | ode>.......is.the.return.type.of |
| 4d600 | 20 74 68 65 20 61 73 79 6e 63 20 66 75 6e 63 74 69 6f 6e 2e 20 4f 6e 63 65 20 61 20 70 72 6f 6d | .the.async.function..Once.a.prom |
| 4d620 | 69 73 65 20 68 61 73 20 62 65 65 6e 20 63 72 65 61 74 65 64 2c 20 69 74 20 6d 75 73 74 20 62 65 | ise.has.been.created,.it.must.be |
| 4d640 | 0a 20 20 20 20 20 20 63 6f 6e 73 75 6d 65 64 2c 20 65 69 74 68 65 72 20 77 69 74 68 20 3c 63 6f | .......consumed,.either.with.<co |
| 4d660 | 64 65 20 63 6c 61 73 73 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- |
| 4d680 | 6b 77 22 3e 63 61 6e 63 65 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6f 72 20 3c 63 6f 64 | kw">cancel</span></code>.or.<cod |
| 4d6a0 | 65 20 63 6c 61 73 73 3d 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 |
| 4d6c0 | 77 22 3e 61 77 61 69 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3a 0a 20 20 20 20 20 20 3c 2f | w">await</span></code>:.......</ |
| 4d6e0 | 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 73 79 6e 63 20 66 75 6e 63 74 69 6f | p>.......<p>.......Async.functio |
| 4d700 | 6e 73 20 73 74 61 72 74 20 65 78 65 63 75 74 69 6e 67 20 77 68 65 6e 20 63 72 65 61 74 65 64 2c | ns.start.executing.when.created, |
| 4d720 | 20 73 6f 20 69 6e 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 65 78 61 6d 70 6c 65 2c 20 74 68 | .so.in.the.following.example,.th |
| 4d740 | 65 20 65 6e 74 69 72 65 0a 20 20 20 20 20 20 61 73 79 6e 63 20 66 75 6e 63 74 69 6f 6e 20 63 6f | e.entire.......async.function.co |
| 4d760 | 6d 70 6c 65 74 65 73 20 62 65 66 6f 72 65 20 69 74 20 69 73 20 63 61 6e 63 65 6c 65 64 3a 0a 20 | mpletes.before.it.is.canceled:.. |
| 4d780 | 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"> |
| 4d7a0 | 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 |
| 4d7c0 | 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 |
| 4d7e0 | 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 |
| 4d800 | 74 69 6e 22 3e 40 69 6d 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= |
| 4d820 | 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> |
| 4d840 | 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 |
| 4d860 | 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 73 74 64 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 0a | pan>.assert.=.std.debug.assert;. |
| 4d880 | 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> |
| 4d8a0 | 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f | .x:.<span.class="tok-type">i32</ |
| 4d8c0 | 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" |
| 4d8e0 | 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | >1</span>;..<span.class="tok-kw" |
| 4d900 | 3e 74 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 |
| 4d920 | 72 22 3e 26 71 75 6f 74 3b 63 72 65 61 74 65 20 61 20 63 6f 72 6f 75 74 69 6e 65 20 61 6e 64 20 | r">"create.a.coroutine.and. |
| 4d940 | 63 61 6e 63 65 6c 20 69 74 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 | cancel.it"</span>.{.....<sp |
| 4d960 | 61 6e 20 63 6c 61 73 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 |
| 4d980 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 | .=.<span.class="tok-kw">try</spa |
| 4d9a0 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 79 6e 63 3c 2f 73 | n>.<span.class="tok-kw">async</s |
| 4d9c0 | 70 61 6e 3e 26 6c 74 3b 73 74 64 2e 64 65 62 75 67 2e 67 6c 6f 62 61 6c 5f 61 6c 6c 6f 63 61 74 | pan><std.debug.global_allocat |
| 4d9e0 | 6f 72 26 67 74 3b 20 73 69 6d 70 6c 65 41 73 79 6e 63 46 6e 28 29 3b 0a 20 20 20 20 3c 73 70 61 | or>.simpleAsyncFn();.....<spa |
| 4da00 | 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> |
| 4da20 | 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e | .assert(<span.class="tok-builtin |
| 4da40 | 22 3e 40 74 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 70 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 | ">@typeOf</span>(p).==.<span.cla |
| 4da60 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 72 6f 6d 69 73 65 3c 2f 73 70 61 6e 3e 2d 26 67 74 3b 3c | ss="tok-kw">promise</span>->< |
| 4da80 | 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 |
| 4daa0 | 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 61 6e | >);.....<span.class="tok-kw">can |
| 4dac0 | 63 65 6c 3c 2f 73 70 61 6e 3e 20 70 3b 0a 20 20 20 20 61 73 73 65 72 74 28 78 20 3d 3d 20 3c 73 | cel</span>.p;.....assert(x.==.<s |
| 4dae0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 | pan.class="tok-number">2</span>) |
| 4db00 | 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 61 73 79 6e 63 3c 2f | ;.}.<span.class="tok-kw">async</ |
| 4db20 | 73 70 61 6e 3e 26 6c 74 3b 2a 73 74 64 2e 6d 65 6d 2e 41 6c 6c 6f 63 61 74 6f 72 26 67 74 3b 20 | span><*std.mem.Allocator>. |
| 4db40 | 3c 73 70 61 6e 20 63 6c 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>.< |
| 4db60 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 73 69 6d 70 6c 65 41 73 79 6e 63 46 | span.class="tok-fn">simpleAsyncF |
| 4db80 | 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | n</span>().<span.class="tok-type |
| 4dba0 | 22 3e 76 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 | ">void</span>.{.....x.+=.<span.c |
| 4dbc0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 7d 3c 2f 63 | lass="tok-number">1</span>;.}</c |
| 4dbe0 | 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 |
| 4dc00 | 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 31 2f 31 20 | l">$.zig.test.test.zig.Test.1/1. |
| 4dc20 | 63 72 65 61 74 65 20 61 20 63 6f 72 6f 75 74 69 6e 65 20 61 6e 64 20 63 61 6e 63 65 6c 20 69 74 | create.a.coroutine.and.cancel.it |
| 4dc40 | 2e 2e 2e 4f 4b 0a 41 6c 6c 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.tests.passed..</code>< |
| 4dc60 | 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 53 75 73 70 | /pre>...............<h2.id="Susp |
| 4dc80 | 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 73 75 | end-and-Resume">Suspend.and.Resu |
| 4dca0 | 6d 65 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 74 20 61 6e 79 20 | me</h2>........<p>.......At.any. |
| 4dcc0 | 70 6f 69 6e 74 2c 20 61 6e 20 61 73 79 6e 63 20 66 75 6e 63 74 69 6f 6e 20 6d 61 79 20 73 75 73 | point,.an.async.function.may.sus |
| 4dce0 | 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 |
| 4dd00 | 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 |
| 4dd20 | 6c 65 72 20 6f 72 20 72 65 73 75 6d 65 72 2e 20 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f | ler.or.resumer..The.following.co |
| 4dd40 | 64 65 20 64 65 6d 6f 6e 73 74 72 61 74 65 73 20 77 68 65 72 65 20 63 6f 6e 74 72 6f 6c 20 66 6c | de.demonstrates.where.control.fl |
| 4dd60 | 6f 77 0a 20 20 20 20 20 20 67 6f 65 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | ow.......goes:.......</p>....... |
| 4dd80 | 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 |
| 4dda0 | 3e 3c 63 6f 64 65 20 63 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=" |
| 4ddc0 | 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 |
| 4dde0 | 20 63 6c 61 73 73 3d 22 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 |
| 4de00 | 61 6e 3e 28 3c 73 70 61 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">" |
| 4de20 | 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=" |
| 4de40 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 73 74 | tok-kw">const</span>.assert.=.st |
| 4de60 | 64 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | d.debug.assert;..<span.class="to |
| 4de80 | 6b 2d 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 |
| 4dea0 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 6f 72 6f 75 74 69 6e 65 20 73 75 73 70 65 6e 64 2c | ok-str">"coroutine.suspend, |
| 4dec0 | 20 72 65 73 75 6d 65 2c 20 63 61 6e 63 65 6c 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | .resume,.cancel"</span>.{.. |
| 4dee0 | 20 20 20 73 65 71 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 61 27 | ...seq(<span.class="tok-str">'a' |
| 4df00 | 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | </span>);.....<span.class="tok-k |
| 4df20 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | w">const</span>.p.=.<span.class= |
| 4df40 | 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | "tok-kw">try</span>.<span.class= |
| 4df60 | 22 74 6f 6b 2d 6b 77 22 3e 61 73 79 6e 63 3c 2f 73 70 61 6e 3e 26 6c 74 3b 73 74 64 2e 64 65 62 | "tok-kw">async</span><std.deb |
| 4df80 | 75 67 2e 67 6c 6f 62 61 6c 5f 61 6c 6c 6f 63 61 74 6f 72 26 67 74 3b 20 74 65 73 74 41 73 79 6e | ug.global_allocator>.testAsyn |
| 4dfa0 | 63 53 65 71 28 29 3b 0a 20 20 20 20 73 65 71 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | cSeq();.....seq(<span.class="tok |
| 4dfc0 | 2d 73 74 72 22 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 | -str">'c'</span>);.....<span.cla |
| 4dfe0 | 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 70 3b 0a 20 20 20 | ss="tok-kw">resume</span>.p;.... |
| 4e000 | 20 73 65 71 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 66 27 3c 2f | .seq(<span.class="tok-str">'f'</ |
| 4e020 | 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | span>);.....<span.class="tok-kw" |
| 4e040 | 3e 63 61 6e 63 65 6c 3c 2f 73 70 61 6e 3e 20 70 3b 0a 20 20 20 20 73 65 71 28 3c 73 70 61 6e 20 | >cancel</span>.p;.....seq(<span. |
| 4e060 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 67 27 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 | class="tok-str">'g'</span>);.... |
| 4e080 | 20 20 61 73 73 65 72 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 | ..assert(std.mem.eql(<span.class |
| 4e0a0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 70 6f 69 6e 74 73 2c 20 3c | ="tok-type">u8</span>,.points,.< |
| 4e0c0 | 73 70 61 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 | span.class="tok-str">"abcde |
| 4e0e0 | 66 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 29 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | fg"</span>));.}.<span.class |
| 4e100 | 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 79 6e 63 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 | ="tok-kw">async</span>.<span.cla |
| 4e120 | 73 73 3d 22 74 6f 6b 2d 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 |
| 4e140 | 73 3d 22 74 6f 6b 2d 66 6e 22 3e 74 65 73 74 41 73 79 6e 63 53 65 71 3c 2f 73 70 61 6e 3e 28 29 | s="tok-fn">testAsyncSeq</span>() |
| 4e160 | 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 |
| 4e180 | 61 6e 3e 20 7b 0a 20 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 | an>.{.....<span.class="tok-kw">d |
| 4e1a0 | 65 66 65 72 3c 2f 73 70 61 6e 3e 20 73 65 71 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | efer</span>.seq(<span.class="tok |
| 4e1c0 | 2d 73 74 72 22 3e 27 65 27 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 73 65 71 28 3c 73 70 61 | -str">'e'</span>);......seq(<spa |
| 4e1e0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 62 27 3c 2f 73 70 61 6e 3e 29 3b 0a 20 | n.class="tok-str">'b'</span>);.. |
| 4e200 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 75 73 70 65 6e 64 3c | ...<span.class="tok-kw">suspend< |
| 4e220 | 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 73 65 71 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | /span>;.....seq(<span.class="tok |
| 4e240 | 2d 73 74 72 22 3e 27 64 27 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | -str">'d'</span>);.}.<span.class |
| 4e260 | 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 70 6f 69 6e 74 73 20 3d 20 5b 5d | ="tok-kw">var</span>.points.=.[] |
| 4e280 | 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> |
| 4e2a0 | 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 30 3c 2f 73 70 61 | {<span.class="tok-number">0</spa |
| 4e2c0 | 6e 3e 7d 20 2a 2a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 | n>}.**.<span.class="tok-str">&qu |
| 4e2e0 | 6f 74 3b 61 62 63 64 65 66 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2e 6c 65 6e 3b 0a 3c 73 70 | ot;abcdefg"</span>.len;.<sp |
| 4e300 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 69 6e 64 | an.class="tok-kw">var</span>.ind |
| 4e320 | 65 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 | ex:.<span.class="tok-type">usize |
| 4e340 | 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 |
| 4e360 | 72 22 3e 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 | r">0</span>;..<span.class="tok-k |
| 4e380 | 77 22 3e 66 6e 3c 2f 73 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 |
| 4e3a0 | 22 3e 73 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 | ">seq</span>(c:.<span.class="tok |
| 4e3c0 | 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | -type">u8</span>).<span.class="t |
| 4e3e0 | 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 6f 69 6e 74 | ok-type">void</span>.{.....point |
| 4e400 | 73 5b 69 6e 64 65 78 5d 20 3d 20 63 3b 0a 20 20 20 20 69 6e 64 65 78 20 2b 3d 20 3c 73 70 61 6e | s[index].=.c;.....index.+=.<span |
| 4e420 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 7d 3c | .class="tok-number">1</span>;.}< |
| 4e440 | 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 |
| 4e460 | 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 31 2f | ell">$.zig.test.test.zig.Test.1/ |
| 4e480 | 31 20 63 6f 72 6f 75 74 69 6e 65 20 73 75 73 70 65 6e 64 2c 20 72 65 73 75 6d 65 2c 20 63 61 6e | 1.coroutine.suspend,.resume,.can |
| 4e4a0 | 63 65 6c 2e 2e 2e 4f 4b 0a 41 6c 6c 20 74 65 73 74 73 20 70 61 73 73 65 64 2e 0a 3c 2f 63 6f 64 | cel...OK.All.tests.passed..</cod |
| 4e4c0 | 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 61 | e></pre>........<p>.......When.a |
| 4e4e0 | 6e 20 61 73 79 6e 63 20 66 75 6e 63 74 69 6f 6e 20 73 75 73 70 65 6e 64 73 20 69 74 73 65 6c 66 | n.async.function.suspends.itself |
| 4e500 | 2c 20 69 74 20 6d 75 73 74 20 62 65 20 73 75 72 65 20 74 68 61 74 20 69 74 20 77 69 6c 6c 20 62 | ,.it.must.be.sure.that.it.will.b |
| 4e520 | 65 0a 20 20 20 20 20 20 72 65 73 75 6d 65 64 20 6f 72 20 63 61 6e 63 65 6c 65 64 20 73 6f 6d 65 | e.......resumed.or.canceled.some |
| 4e540 | 68 6f 77 2c 20 66 6f 72 20 65 78 61 6d 70 6c 65 20 62 79 20 72 65 67 69 73 74 65 72 69 6e 67 20 | how,.for.example.by.registering. |
| 4e560 | 69 74 73 20 70 72 6f 6d 69 73 65 20 68 61 6e 64 6c 65 0a 20 20 20 20 20 20 69 6e 20 61 6e 20 65 | its.promise.handle.......in.an.e |
| 4e580 | 76 65 6e 74 20 6c 6f 6f 70 2e 20 55 73 65 20 61 20 73 75 73 70 65 6e 64 20 63 61 70 74 75 72 65 | vent.loop..Use.a.suspend.capture |
| 4e5a0 | 20 62 6c 6f 63 6b 20 74 6f 20 67 61 69 6e 20 61 63 63 65 73 73 20 74 6f 20 74 68 65 0a 20 20 20 | .block.to.gain.access.to.the.... |
| 4e5c0 | 20 20 20 70 72 6f 6d 69 73 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 | ...promise:.......</p>.......<p. |
| 4e5e0 | 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 |
| 4e600 | 6f 64 65 20 63 6c 61 73 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 |
| 4e620 | 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 |
| 4e640 | 61 73 73 3d 22 74 6f 6b 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> |
| 4e660 | 28 3c 73 70 61 6e 20 63 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 |
| 4e680 | 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 |
| 4e6a0 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 73 74 64 2e 64 | -kw">const</span>.assert.=.std.d |
| 4e6c0 | 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ebug.assert;..<span.class="tok-k |
| 4e6e0 | 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- |
| 4e700 | 73 74 72 22 3e 26 71 75 6f 74 3b 63 6f 72 6f 75 74 69 6e 65 20 73 75 73 70 65 6e 64 20 77 69 74 | str">"coroutine.suspend.wit |
| 4e720 | 68 20 62 6c 6f 63 6b 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e | h.block"</span>.{.....<span |
| 4e740 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 20 3d | .class="tok-kw">const</span>.p.= |
| 4e760 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 72 79 3c 2f 73 70 61 6e 3e | .<span.class="tok-kw">try</span> |
| 4e780 | 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 |
| 4e7a0 | 6e 3e 26 6c 74 3b 73 74 64 2e 64 65 62 75 67 2e 67 6c 6f 62 61 6c 5f 61 6c 6c 6f 63 61 74 6f 72 | n><std.debug.global_allocator |
| 4e7c0 | 26 67 74 3b 20 74 65 73 74 53 75 73 70 65 6e 64 42 6c 6f 63 6b 28 29 3b 0a 20 20 20 20 73 74 64 | >.testSuspendBlock();.....std |
| 4e7e0 | 2e 64 65 62 75 67 2e 61 73 73 65 72 74 28 21 72 65 73 75 6c 74 29 3b 0a 20 20 20 20 3c 73 70 61 | .debug.assert(!result);.....<spa |
| 4e800 | 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 20 61 | n.class="tok-kw">resume</span>.a |
| 4e820 | 5f 70 72 6f 6d 69 73 65 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 61 73 73 65 72 74 28 72 | _promise;.....std.debug.assert(r |
| 4e840 | 65 73 75 6c 74 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | esult);.....<span.class="tok-kw" |
| 4e860 | 3e 63 61 6e 63 65 6c 3c 2f 73 70 61 6e 3e 20 70 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 | >cancel</span>.p;.}..<span.class |
| 4e880 | 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 5f 70 72 6f 6d 69 73 65 3a 20 | ="tok-kw">var</span>.a_promise:. |
| 4e8a0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 72 6f 6d 69 73 65 3c 2f 73 70 | <span.class="tok-kw">promise</sp |
| 4e8c0 | 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 | an>.=.<span.class="tok-null">und |
| 4e8e0 | 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | efined</span>;.<span.class="tok- |
| 4e900 | 6b 77 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 | kw">var</span>.result.=.<span.cl |
| 4e920 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 | ass="tok-null">false</span>;.<sp |
| 4e940 | 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 3c | an.class="tok-kw">async</span>.< |
| 4e960 | 73 70 61 6e 20 63 6c 61 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 |
| 4e980 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 74 65 73 74 53 75 73 70 65 6e 64 42 6c | pan.class="tok-fn">testSuspendBl |
| 4e9a0 | 6f 63 6b 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | ock</span>().<span.class="tok-ty |
| 4e9c0 | 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 |
| 4e9e0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 75 73 70 65 6e 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | s="tok-kw">suspend</span>.{..... |
| 4ea00 | 20 20 20 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 |
| 4ea20 | 65 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | e</span>.assert(<span.class="tok |
| 4ea40 | 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 | -builtin">@typeOf</span>(<span.c |
| 4ea60 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 68 61 6e 64 6c 65 3c 2f 73 70 61 6e | lass="tok-builtin">@handle</span |
| 4ea80 | 3e 28 29 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 72 6f | >()).==.<span.class="tok-kw">pro |
| 4eaa0 | 6d 69 73 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 | mise</span>-><span.class="tok |
| 4eac0 | 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 20 20 20 20 61 5f 70 | -type">void</span>);.........a_p |
| 4eae0 | 72 6f 6d 69 73 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 | romise.=.<span.class="tok-builti |
| 4eb00 | 6e 22 3e 40 68 61 6e 64 6c 65 3c 2f 73 70 61 6e 3e 28 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 72 | n">@handle</span>();.....}.....r |
| 4eb20 | 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 6e 75 6c 6c 22 3e 74 | esult.=.<span.class="tok-null">t |
| 4eb40 | 72 75 65 3c 2f 73 70 61 6e 3e 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c | rue</span>;.}</code></pre><pre>< |
| 4eb60 | 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 |
| 4eb80 | 73 74 2e 7a 69 67 0a 54 65 73 74 20 31 2f 31 20 63 6f 72 6f 75 74 69 6e 65 20 73 75 73 70 65 6e | st.zig.Test.1/1.coroutine.suspen |
| 4eba0 | 64 20 77 69 74 68 20 62 6c 6f 63 6b 2e 2e 2e 4f 4b 0a 41 6c 6c 20 74 65 73 74 73 20 70 61 73 73 | d.with.block...OK.All.tests.pass |
| 4ebc0 | 65 64 2e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | ed..</code></pre>........<p>.... |
| 4ebe0 | 20 20 20 45 76 65 72 79 20 73 75 73 70 65 6e 64 20 70 6f 69 6e 74 20 69 6e 20 61 6e 20 61 73 79 | ...Every.suspend.point.in.an.asy |
| 4ec00 | 6e 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 70 72 65 73 65 6e 74 73 20 61 20 70 6f 69 6e 74 20 61 | nc.function.represents.a.point.a |
| 4ec20 | 74 20 77 68 69 63 68 20 74 68 65 20 63 6f 72 6f 75 74 69 6e 65 0a 20 20 20 20 20 20 63 6f 75 6c | t.which.the.coroutine.......coul |
| 4ec40 | 64 20 62 65 20 64 65 73 74 72 6f 79 65 64 2e 20 49 66 20 74 68 61 74 20 68 61 70 70 65 6e 73 2c | d.be.destroyed..If.that.happens, |
| 4ec60 | 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=" |
| 4ec80 | 74 6f 6b 2d 6b 77 22 3e 64 65 66 65 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 | tok-kw">defer</span></code>.expr |
| 4eca0 | 65 73 73 69 6f 6e 73 20 74 68 61 74 20 61 72 65 20 69 6e 0a 20 20 20 20 20 20 20 20 20 20 73 63 | essions.that.are.in...........sc |
| 4ecc0 | 6f 70 65 20 61 72 65 20 72 75 6e 2c 20 61 73 20 77 65 6c 6c 20 61 73 20 3c 63 6f 64 65 20 63 6c | ope.are.run,.as.well.as.<code.cl |
| 4ece0 | 61 73 73 3d 22 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 |
| 4ed00 | 72 72 64 65 66 65 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 | rrdefer</span></code>.expression |
| 4ed20 | 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 61 | s........</p>.......<p>.......<a |
| 4ed40 | 20 68 72 65 66 3d 22 23 41 77 61 69 74 22 3e 41 77 61 69 74 3c 2f 61 3e 20 63 6f 75 6e 74 73 20 | .href="#Await">Await</a>.counts. |
| 4ed60 | 61 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 | as.a.suspend.point........</p>.. |
| 4ed80 | 20 20 20 20 20 3c 68 33 20 69 64 3d 22 52 65 73 75 6d 69 6e 67 2d 66 72 6f 6d 2d 53 75 73 70 65 | .....<h3.id="Resuming-from-Suspe |
| 4eda0 | 6e 64 2d 42 6c 6f 63 6b 73 22 3e 52 65 73 75 6d 69 6e 67 20 66 72 6f 6d 20 53 75 73 70 65 6e 64 | nd-Blocks">Resuming.from.Suspend |
| 4edc0 | 20 42 6c 6f 63 6b 73 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 55 70 | .Blocks</h3>........<p>.......Up |
| 4ede0 | 6f 6e 20 65 6e 74 65 72 69 6e 67 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | on.entering.a.<code.class="zig"> |
| 4ee00 | 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 |
| 4ee20 | 61 6e 3e 3c 2f 63 6f 64 65 3e 20 62 6c 6f 63 6b 2c 20 74 68 65 20 63 6f 72 6f 75 74 69 6e 65 20 | an></code>.block,.the.coroutine. |
| 4ee40 | 69 73 20 61 6c 72 65 61 64 79 20 63 6f 6e 73 69 64 65 72 65 64 0a 20 20 20 20 20 20 73 75 73 70 | is.already.considered.......susp |
| 4ee60 | 65 6e 64 65 64 2c 20 61 6e 64 20 63 61 6e 20 62 65 20 72 65 73 75 6d 65 64 2e 20 46 6f 72 20 65 | ended,.and.can.be.resumed..For.e |
| 4ee80 | 78 61 6d 70 6c 65 2c 20 69 66 20 79 6f 75 20 73 74 61 72 74 65 64 20 61 6e 6f 74 68 65 72 20 6b | xample,.if.you.started.another.k |
| 4eea0 | 65 72 6e 65 6c 20 74 68 72 65 61 64 2c 0a 20 20 20 20 20 20 61 6e 64 20 68 61 64 20 74 68 61 74 | ernel.thread,.......and.had.that |
| 4eec0 | 20 74 68 72 65 61 64 20 63 61 6c 6c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | .thread.call.<code.class="zig">< |
| 4eee0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 73 75 6d 65 3c 2f 73 70 61 6e | span.class="tok-kw">resume</span |
| 4ef00 | 3e 3c 2f 63 6f 64 65 3e 20 6f 6e 20 74 68 65 20 70 72 6f 6d 69 73 65 20 68 61 6e 64 6c 65 20 70 | ></code>.on.the.promise.handle.p |
| 4ef20 | 72 6f 76 69 64 65 64 20 62 79 20 74 68 65 0a 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 | rovided.by.the...........<code.c |
| 4ef40 | 6c 61 73 73 3d 22 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"> |
| 4ef60 | 73 75 73 70 65 6e 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 62 6c 6f 63 6b 2c 20 74 68 65 | suspend</span></code>.block,.the |
| 4ef80 | 20 6e 65 77 20 74 68 72 65 61 64 20 77 6f 75 6c 64 20 62 65 67 69 6e 20 65 78 65 63 75 74 69 6e | .new.thread.would.begin.executin |
| 4efa0 | 67 20 61 66 74 65 72 20 74 68 65 20 73 75 73 70 65 6e 64 0a 20 20 20 20 20 20 62 6c 6f 63 6b 2c | g.after.the.suspend.......block, |
| 4efc0 | 20 77 68 69 6c 65 20 74 68 65 20 6f 6c 64 20 74 68 72 65 61 64 20 63 6f 6e 74 69 6e 75 65 64 20 | .while.the.old.thread.continued. |
| 4efe0 | 65 78 65 63 75 74 69 6e 67 20 74 68 65 20 73 75 73 70 65 6e 64 20 62 6c 6f 63 6b 2e 0a 20 20 20 | executing.the.suspend.block..... |
| 4f000 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 48 6f 77 65 76 65 72 2c | ...</p>.......<p>.......However, |
| 4f020 | 20 74 68 65 20 63 6f 72 6f 75 74 69 6e 65 20 63 61 6e 20 62 65 20 64 69 72 65 63 74 6c 79 20 72 | .the.coroutine.can.be.directly.r |
| 4f040 | 65 73 75 6d 65 64 20 66 72 6f 6d 20 74 68 65 20 73 75 73 70 65 6e 64 20 62 6c 6f 63 6b 2c 20 69 | esumed.from.the.suspend.block,.i |
| 4f060 | 6e 20 77 68 69 63 68 20 63 61 73 65 20 69 74 0a 20 20 20 20 20 20 6e 65 76 65 72 20 72 65 74 75 | n.which.case.it.......never.retu |
| 4f080 | 72 6e 73 20 74 6f 20 69 74 73 20 72 65 73 75 6d 65 72 20 61 6e 64 20 63 6f 6e 74 69 6e 75 65 73 | rns.to.its.resumer.and.continues |
| 4f0a0 | 20 65 78 65 63 75 74 69 6e 67 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 | .executing........</p>.......<p. |
| 4f0c0 | 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 |
| 4f0e0 | 6f 64 65 20 63 6c 61 73 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 |
| 4f100 | 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 |
| 4f120 | 61 73 73 3d 22 74 6f 6b 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> |
| 4f140 | 28 3c 73 70 61 6e 20 63 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 |
| 4f160 | 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 |
| 4f180 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 73 74 64 2e 64 | -kw">const</span>.assert.=.std.d |
| 4f1a0 | 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ebug.assert;..<span.class="tok-k |
| 4f1c0 | 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- |
| 4f1e0 | 73 74 72 22 3e 26 71 75 6f 74 3b 72 65 73 75 6d 65 20 66 72 6f 6d 20 73 75 73 70 65 6e 64 26 71 | str">"resume.from.suspend&q |
| 4f200 | 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 |
| 4f220 | 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 75 66 3a 20 5b 3c 73 70 61 6e 20 63 6c | ok-kw">var</span>.buf:.[<span.cl |
| 4f240 | 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 5d 3c 73 70 61 | ass="tok-number">500</span>]<spa |
| 4f260 | 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>.=.< |
| 4f280 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c | span.class="tok-null">undefined< |
| 4f2a0 | 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" |
| 4f2c0 | 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 20 3d 20 26 61 6d 70 3b 73 74 64 2e 68 65 61 70 2e 46 69 | >var</span>.a.=.&std.heap.Fi |
| 4f2e0 | 78 65 64 42 75 66 66 65 72 41 6c 6c 6f 63 61 74 6f 72 2e 69 6e 69 74 28 62 75 66 5b 3c 73 70 61 | xedBufferAllocator.init(buf[<spa |
| 4f300 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 5d | n.class="tok-number">0</span>..] |
| 4f320 | 29 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 22 74 6f | ).allocator;.....<span.class="to |
| 4f340 | 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6d 79 5f 72 65 73 75 6c 74 3a 20 3c 73 70 61 | k-kw">var</span>.my_result:.<spa |
| 4f360 | 6e 20 63 6c 61 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>.=. |
| 4f380 | 3c 73 70 61 6e 20 63 6c 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 |
| 4f3a0 | 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 |
| 4f3c0 | 74 3c 2f 73 70 61 6e 3e 20 70 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | t</span>.p.=.<span.class="tok-kw |
| 4f3e0 | 22 3e 74 72 79 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | ">try</span>.<span.class="tok-kw |
| 4f400 | 22 3e 61 73 79 6e 63 3c 2f 73 70 61 6e 3e 26 6c 74 3b 61 26 67 74 3b 20 74 65 73 74 52 65 73 75 | ">async</span><a>.testResu |
| 4f420 | 6d 65 46 72 6f 6d 53 75 73 70 65 6e 64 28 26 61 6d 70 3b 6d 79 5f 72 65 73 75 6c 74 29 3b 0a 20 | meFromSuspend(&my_result);.. |
| 4f440 | 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 6e 63 65 6c 3c 2f | ...<span.class="tok-kw">cancel</ |
| 4f460 | 73 70 61 6e 3e 20 70 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 61 73 73 65 72 74 28 6d 79 | span>.p;.....std.debug.assert(my |
| 4f480 | 5f 72 65 73 75 6c 74 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | _result.==.<span.class="tok-numb |
| 4f4a0 | 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 22 74 6f | er">2</span>);.}.<span.class="to |
| 4f4c0 | 6b 2d 6b 77 22 3e 61 73 79 6e 63 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | k-kw">async</span>.<span.class=" |
| 4f4e0 | 74 6f 6b 2d 6b 77 22 3e 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 |
| 4f500 | 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 70 | ok-fn">testResumeFromSuspend</sp |
| 4f520 | 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 6b | an>(my_result:.*<span.class="tok |
| 4f540 | 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=" |
| 4f560 | 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 |
| 4f580 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 75 73 70 65 6e 64 3c 2f 73 70 61 6e 3e 20 | n.class="tok-kw">suspend</span>. |
| 4f5a0 | 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 72 | {.........<span.class="tok-kw">r |
| 4f5c0 | 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 75 | esume</span>.<span.class="tok-bu |
| 4f5e0 | 69 6c 74 69 6e 22 3e 40 68 61 6e 64 6c 65 3c 2f 73 70 61 6e 3e 28 29 3b 0a 20 20 20 20 7d 0a 20 | iltin">@handle</span>();.....}.. |
| 4f600 | 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 |
| 4f620 | 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 |
| 4f640 | 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>;... |
| 4f660 | 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 |
| 4f680 | 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 |
| 4f6a0 | 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 |
| 4f6c0 | 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 31 2f 31 20 72 65 73 75 6d 65 20 66 | .test.test.zig.Test.1/1.resume.f |
| 4f6e0 | 72 6f 6d 20 73 75 73 70 65 6e 64 2e 2e 2e 4f 4b 0a 41 6c 6c 20 74 65 73 74 73 20 70 61 73 73 65 | rom.suspend...OK.All.tests.passe |
| 4f700 | 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>..... |
| 4f720 | 20 20 54 68 69 73 20 69 73 20 67 75 61 72 61 6e 74 65 65 64 20 74 6f 20 62 65 20 61 20 74 61 69 | ..This.is.guaranteed.to.be.a.tai |
| 4f740 | 6c 20 63 61 6c 6c 2c 20 61 6e 64 20 74 68 65 72 65 66 6f 72 65 20 77 69 6c 6c 20 6e 6f 74 20 63 | l.call,.and.therefore.will.not.c |
| 4f760 | 61 75 73 65 20 61 20 6e 65 77 20 73 74 61 63 6b 20 66 72 61 6d 65 2e 0a 20 20 20 20 20 20 3c 2f | ause.a.new.stack.frame........</ |
| 4f780 | 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 32 20 69 64 3d 22 41 | p>.....................<h2.id="A |
| 4f7a0 | 77 61 69 74 22 3e 41 77 61 69 74 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | wait">Await</h2>........<p>..... |
| 4f7c0 | 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 63 6c | ..The.<code.class="zig"><span.cl |
| 4f7e0 | 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 3e | ass="tok-kw">await</span></code> |
| 4f800 | 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 20 77 | .keyword.is.used.to.coordinate.w |
| 4f820 | 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 20 20 | ith.an.async.function's......... |
| 4f840 | 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= |
| 4f860 | 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 73 74 | "tok-kw">return</span></code>.st |
| 4f880 | 61 74 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 | atement........</p>.......<p>... |
| 4f8a0 | 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 |
| 4f8c0 | 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 69 | s="tok-kw">await</span></code>.i |
| 4f8e0 | 73 20 76 61 6c 69 64 20 6f 6e 6c 79 20 69 6e 20 61 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 | s.valid.only.in.an.<code.class=" |
| 4f900 | 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 73 79 6e 63 3c | zig"><span.class="tok-kw">async< |
| 4f920 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 2c 20 61 6e 64 20 69 74 20 74 | /span></code>.function,.and.it.t |
| 4f940 | 61 6b 65 73 0a 20 20 20 20 20 20 61 73 20 61 6e 20 6f 70 65 72 61 6e 64 20 61 20 70 72 6f 6d 69 | akes.......as.an.operand.a.promi |
| 4f960 | 73 65 20 68 61 6e 64 6c 65 2e 0a 20 20 20 20 20 20 49 66 20 74 68 65 20 61 73 79 6e 63 20 66 75 | se.handle........If.the.async.fu |
| 4f980 | 6e 63 74 69 6f 6e 20 61 73 73 6f 63 69 61 74 65 64 20 77 69 74 68 20 74 68 65 20 70 72 6f 6d 69 | nction.associated.with.the.promi |
| 4f9a0 | 73 65 20 68 61 6e 64 6c 65 20 68 61 73 20 61 6c 72 65 61 64 79 20 72 65 74 75 72 6e 65 64 2c 20 | se.handle.has.already.returned,. |
| 4f9c0 | 0a 20 20 20 20 20 20 74 68 65 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | .......then.<code.class="zig"><s |
| 4f9e0 | 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>< |
| 4fa00 | 2f 63 6f 64 65 3e 20 64 65 73 74 72 6f 79 73 20 74 68 65 20 74 61 72 67 65 74 20 61 73 79 6e 63 | /code>.destroys.the.target.async |
| 4fa20 | 20 66 75 6e 63 74 69 6f 6e 2c 20 61 6e 64 20 67 69 76 65 73 20 74 68 65 20 72 65 74 75 72 6e 20 | .function,.and.gives.the.return. |
| 4fa40 | 76 61 6c 75 65 2e 0a 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 | value............Otherwise,.<cod |
| 4fa60 | 65 20 63 6c 61 73 73 3d 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 |
| 4fa80 | 77 22 3e 61 77 61 69 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 73 75 73 70 65 6e 64 73 20 | w">await</span></code>.suspends. |
| 4faa0 | 74 68 65 20 63 75 72 72 65 6e 74 20 61 73 79 6e 63 20 66 75 6e 63 74 69 6f 6e 2c 20 72 65 67 69 | the.current.async.function,.regi |
| 4fac0 | 73 74 65 72 69 6e 67 20 69 74 73 0a 20 20 20 20 20 20 70 72 6f 6d 69 73 65 20 68 61 6e 64 6c 65 | stering.its.......promise.handle |
| 4fae0 | 20 77 69 74 68 20 74 68 65 20 74 61 72 67 65 74 20 63 6f 72 6f 75 74 69 6e 65 2e 20 49 74 20 62 | .with.the.target.coroutine..It.b |
| 4fb00 | 65 63 6f 6d 65 73 20 74 68 65 20 74 61 72 67 65 74 20 63 6f 72 6f 75 74 69 6e 65 27 73 20 72 65 | ecomes.the.target.coroutine's.re |
| 4fb20 | 73 70 6f 6e 73 69 62 69 6c 69 74 79 0a 20 20 20 20 20 20 74 6f 20 68 61 76 65 20 65 6e 73 75 72 | sponsibility.......to.have.ensur |
| 4fb40 | 65 64 20 74 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65 20 72 65 73 75 6d 65 64 20 6f 72 20 64 65 | ed.that.it.will.be.resumed.or.de |
| 4fb60 | 73 74 72 6f 79 65 64 2e 20 57 68 65 6e 20 74 68 65 20 74 61 72 67 65 74 20 63 6f 72 6f 75 74 69 | stroyed..When.the.target.corouti |
| 4fb80 | 6e 65 20 72 65 61 63 68 65 73 0a 20 20 20 20 20 20 69 74 73 20 72 65 74 75 72 6e 20 73 74 61 74 | ne.reaches.......its.return.stat |
| 4fba0 | 65 6d 65 6e 74 2c 20 69 74 20 67 69 76 65 73 20 74 68 65 20 72 65 74 75 72 6e 20 76 61 6c 75 65 | ement,.it.gives.the.return.value |
| 4fbc0 | 20 74 6f 20 74 68 65 20 61 77 61 69 74 65 72 2c 20 64 65 73 74 72 6f 79 73 20 69 74 73 65 6c 66 | .to.the.awaiter,.destroys.itself |
| 4fbe0 | 2c 20 61 6e 64 20 74 68 65 6e 0a 20 20 20 20 20 20 72 65 73 75 6d 65 73 20 74 68 65 20 61 77 61 | ,.and.then.......resumes.the.awa |
| 4fc00 | 69 74 65 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | iter........</p>.......<p>...... |
| 4fc20 | 20 41 20 70 72 6f 6d 69 73 65 20 68 61 6e 64 6c 65 20 6d 75 73 74 20 62 65 20 63 6f 6e 73 75 6d | .A.promise.handle.must.be.consum |
| 4fc40 | 65 64 20 65 78 61 63 74 6c 79 20 6f 6e 63 65 20 61 66 74 65 72 20 69 74 20 69 73 20 63 72 65 61 | ed.exactly.once.after.it.is.crea |
| 4fc60 | 74 65 64 2c 20 65 69 74 68 65 72 20 62 79 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ted,.either.by.<code.class="zig" |
| 4fc80 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 6e 63 65 6c 3c 2f 73 70 | ><span.class="tok-kw">cancel</sp |
| 4fca0 | 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 3e | an></code>.or.<code.class="zig"> |
| 4fcc0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 77 61 69 74 3c 2f 73 70 61 6e | <span.class="tok-kw">await</span |
| 4fce0 | 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | ></code>........</p>.......<p>.. |
| 4fd00 | 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 |
| 4fd20 | 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 3e 20 | ss="tok-kw">await</span></code>. |
| 4fd40 | 63 6f 75 6e 74 73 20 61 73 20 61 20 73 75 73 70 65 6e 64 20 70 6f 69 6e 74 2c 20 61 6e 64 20 74 | counts.as.a.suspend.point,.and.t |
| 4fd60 | 68 65 72 65 66 6f 72 65 20 61 74 20 65 76 65 72 79 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | herefore.at.every.<code.class="z |
| 4fd80 | 69 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</ |
| 4fda0 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 20 63 6f | span></code>,...............a.co |
| 4fdc0 | 72 6f 75 74 69 6e 65 20 63 61 6e 20 62 65 20 70 6f 74 65 6e 74 69 61 6c 6c 79 20 64 65 73 74 72 | routine.can.be.potentially.destr |
| 4fde0 | 6f 79 65 64 2c 20 77 68 69 63 68 20 77 6f 75 6c 64 20 72 75 6e 20 3c 63 6f 64 65 20 63 6c 61 73 | oyed,.which.would.run.<code.clas |
| 4fe00 | 73 3d 22 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 65 66 | s="zig"><span.class="tok-kw">def |
| 4fe20 | 65 72 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 | er</span></code>.and.<code.class |
| 4fe40 | 3d 22 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 72 64 | ="zig"><span.class="tok-kw">errd |
| 4fe60 | 65 66 65 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 | efer</span></code>.expressions.. |
| 4fe80 | 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" |
| 4fea0 | 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 |
| 4fec0 | 69 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</ |
| 4fee0 | 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 |
| 4ff00 | 6c 74 69 6e 22 3e 40 69 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 |
| 4ff20 | 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 |
| 4ff40 | 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</ |
| 4ff60 | 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; |
| 4ff80 | 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 |
| 4ffa0 | 3e 20 61 5f 70 72 6f 6d 69 73 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | >.a_promise:.<span.class="tok-kw |
| 4ffc0 | 22 3e 70 72 6f 6d 69 73 65 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ">promise</span>.=.<span.class=" |
| 4ffe0 | 74 6f 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 | tok-null">undefined</span>;.<spa |
| 50000 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 66 69 6e 61 | n.class="tok-kw">var</span>.fina |
| 50020 | 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 74 79 70 65 22 | l_result:.<span.class="tok-type" |
| 50040 | 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 |
| 50060 | 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 73 73 3d 22 74 | umber">0</span>;..<span.class="t |
| 50080 | 6f 6b 2d 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=" |
| 500a0 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 6f 72 6f 75 74 69 6e 65 20 61 77 61 69 74 26 71 | tok-str">"coroutine.await&q |
| 500c0 | 75 6f 74 3b 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 | uot;</span>.{.....seq(<span.clas |
| 500e0 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 61 27 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 | s="tok-str">'a'</span>);.....<sp |
| 50100 | 61 6e 20 63 6c 61 73 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 |
| 50120 | 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 73 | .=.<span.class="tok-kw">async</s |
| 50140 | 70 61 6e 3e 26 6c 74 3b 73 74 64 2e 64 65 62 75 67 2e 67 6c 6f 62 61 6c 5f 61 6c 6c 6f 63 61 74 | pan><std.debug.global_allocat |
| 50160 | 6f 72 26 67 74 3b 20 61 6d 61 69 6e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | or>.amain().<span.class="tok- |
| 50180 | 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | kw">catch</span>.<span.class="to |
| 501a0 | 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 73 65 | k-kw">unreachable</span>;.....se |
| 501c0 | 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 66 27 3c 2f 73 70 61 | q(<span.class="tok-str">'f'</spa |
| 501e0 | 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 72 65 | n>);.....<span.class="tok-kw">re |
| 50200 | 73 75 6d 65 3c 2f 73 70 61 6e 3e 20 61 5f 70 72 6f 6d 69 73 65 3b 0a 20 20 20 20 73 65 71 28 3c | sume</span>.a_promise;.....seq(< |
| 50220 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 69 27 3c 2f 73 70 61 6e 3e 29 | span.class="tok-str">'i'</span>) |
| 50240 | 3b 0a 20 20 20 20 61 73 73 65 72 74 28 66 69 6e 61 6c 5f 72 65 73 75 6c 74 20 3d 3d 20 3c 73 70 | ;.....assert(final_result.==.<sp |
| 50260 | 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 |
| 50280 | 3e 29 3b 0a 20 20 20 20 61 73 73 65 72 74 28 73 74 64 2e 6d 65 6d 2e 65 71 6c 28 3c 73 70 61 6e | >);.....assert(std.mem.eql(<span |
| 502a0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 73 65 71 | .class="tok-type">u8</span>,.seq |
| 502c0 | 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 26 | _points,.<span.class="tok-str">& |
| 502e0 | 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 7d | quot;abcdefghi"</span>));.} |
| 50300 | 0a 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 |
| 50320 | 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 |
| 50340 | 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 3c 2f 73 70 | >.<span.class="tok-fn">amain</sp |
| 50360 | 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 |
| 50380 | 64 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 | d</span>.{.....seq(<span.class=" |
| 503a0 | 74 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 | tok-str">'b'</span>);.....<span. |
| 503c0 | 63 6c 61 73 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 | class="tok-kw">const</span>.p.=. |
| 503e0 | 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 6e | <span.class="tok-kw">async</span |
| 50400 | 3e 20 61 6e 6f 74 68 65 72 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | >.another().<span.class="tok-kw" |
| 50420 | 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | >catch</span>.<span.class="tok-k |
| 50440 | 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 73 65 71 28 3c | w">unreachable</span>;.....seq(< |
| 50460 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 65 27 3c 2f 73 70 61 6e 3e 29 | span.class="tok-str">'e'</span>) |
| 50480 | 3b 0a 20 20 20 20 66 69 6e 61 6c 5f 72 65 73 75 6c 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ;.....final_result.=.<span.class |
| 504a0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 61 77 61 69 74 3c 2f 73 70 61 6e 3e 20 70 3b 0a 20 20 20 20 73 65 | ="tok-kw">await</span>.p;.....se |
| 504c0 | 71 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 68 27 3c 2f 73 70 61 | q(<span.class="tok-str">'h'</spa |
| 504e0 | 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 61 73 79 6e | n>);.}.<span.class="tok-kw">asyn |
| 50500 | 63 3c 2f 73 70 61 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 | c</span>.<span.class="tok-kw">fn |
| 50520 | 3c 2f 73 70 61 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 6e 6f | </span>.<span.class="tok-fn">ano |
| 50540 | 74 68 65 72 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | ther</span>().<span.class="tok-t |
| 50560 | 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 73 65 71 28 3c 73 70 61 6e 20 | ype">i32</span>.{.....seq(<span. |
| 50580 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 63 27 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 | class="tok-str">'c'</span>);.... |
| 505a0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 75 73 70 65 6e 64 3c 2f 73 | .<span.class="tok-kw">suspend</s |
| 505c0 | 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 73 65 71 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | pan>.{.........seq(<span.class=" |
| 505e0 | 74 6f 6b 2d 73 74 72 22 3e 27 64 27 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 61 5f | tok-str">'d'</span>);.........a_ |
| 50600 | 70 72 6f 6d 69 73 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 | promise.=.<span.class="tok-built |
| 50620 | 69 6e 22 3e 40 68 61 6e 64 6c 65 3c 2f 73 70 61 6e 3e 28 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 | in">@handle</span>();.....}..... |
| 50640 | 73 65 71 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 67 27 3c 2f 73 | seq(<span.class="tok-str">'g'</s |
| 50660 | 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pan>);.....<span.class="tok-kw"> |
| 50680 | 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | return</span>.<span.class="tok-n |
| 506a0 | 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 | umber">1234</span>;.}..<span.cla |
| 506c0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 73 65 71 5f 70 6f 69 6e 74 | ss="tok-kw">var</span>.seq_point |
| 506e0 | 73 20 3d 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c | s.=.[]<span.class="tok-type">u8< |
| 50700 | 2f 73 70 61 6e 3e 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | /span>{<span.class="tok-number"> |
| 50720 | 30 3c 2f 73 70 61 6e 3e 7d 20 2a 2a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | 0</span>}.**.<span.class="tok-st |
| 50740 | 72 22 3e 26 71 75 6f 74 3b 61 62 63 64 65 66 67 68 69 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2e | r">"abcdefghi"</span>. |
| 50760 | 6c 65 6e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 | len;.<span.class="tok-kw">var</s |
| 50780 | 70 61 6e 3e 20 73 65 71 5f 69 6e 64 65 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | pan>.seq_index:.<span.class="tok |
| 507a0 | 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 |
| 507c0 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 | s="tok-number">0</span>;..<span. |
| 507e0 | 63 6c 61 73 73 3d 22 74 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 |
| 50800 | 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 73 65 71 3c 2f 73 70 61 6e 3e 28 63 3a 20 3c 73 70 61 | lass="tok-fn">seq</span>(c:.<spa |
| 50820 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 3c 73 | n.class="tok-type">u8</span>).<s |
| 50840 | 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> |
| 50860 | 20 7b 0a 20 20 20 20 73 65 71 5f 70 6f 69 6e 74 73 5b 73 65 71 5f 69 6e 64 65 78 5d 20 3d 20 63 | .{.....seq_points[seq_index].=.c |
| 50880 | 3b 0a 20 20 20 20 73 65 71 5f 69 6e 64 65 78 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ;.....seq_index.+=.<span.class=" |
| 508a0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f | tok-number">1</span>;.}</code></ |
| 508c0 | 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 |
| 508e0 | 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 31 2f 31 20 63 6f 72 6f 75 74 | ig.test.test.zig.Test.1/1.corout |
| 50900 | 69 6e 65 20 61 77 61 69 74 2e 2e 2e 4f 4b 0a 41 6c 6c 20 74 65 73 74 73 20 70 61 73 73 65 64 2e | ine.await...OK.All.tests.passed. |
| 50920 | 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>....... |
| 50940 | 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 67 22 3e 3c 73 | In.general,.<code.class="zig"><s |
| 50960 | 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 |
| 50980 | 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 6e 20 3c 63 6f | ></code>.is.lower.level.than.<co |
| 509a0 | 64 65 20 63 6c 61 73 73 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- |
| 509c0 | 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 73 74 20 61 70 | kw">await</span></code>..Most.ap |
| 509e0 | 70 6c 69 63 61 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 64 65 20 77 69 6c | plication...............code.wil |
| 50a00 | 6c 20 75 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 | l.use.only.<code.class="zig"><sp |
| 50a20 | 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 3c 2f | an.class="tok-kw">async</span></ |
| 50a40 | 63 6f 64 65 3e 20 61 6e 64 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | code>.and.<code.class="zig"><spa |
| 50a60 | 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 2f 63 | n.class="tok-kw">await</span></c |
| 50a80 | 6f 64 65 3e 2c 20 62 75 74 20 65 76 65 6e 74 20 6c 6f 6f 70 0a 20 20 20 20 20 20 20 20 20 20 20 | ode>,.but.event.loop............ |
| 50aa0 | 20 20 20 20 20 20 20 20 20 20 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 73 20 77 69 6c 6c 20 | ...........implementations.will. |
| 50ac0 | 6d 61 6b 65 20 75 73 65 20 6f 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 | make.use.of.<code.class="zig"><s |
| 50ae0 | 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 |
| 50b00 | 3e 3c 2f 63 6f 64 65 3e 20 69 6e 74 65 72 6e 61 6c 6c 79 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | ></code>.internally........</p>. |
| 50b20 | 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 4f 70 65 6e 2d 49 73 73 75 65 73 | .............<h2.id="Open-Issues |
| 50b40 | 22 3e 4f 70 65 6e 20 49 73 73 75 65 73 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | ">Open.Issues</h2>........<p>... |
| 50b60 | 20 20 20 20 54 68 65 72 65 20 61 72 65 20 61 20 66 65 77 20 69 73 73 75 65 73 20 77 69 74 68 20 | ....There.are.a.few.issues.with. |
| 50b80 | 63 6f 72 6f 75 74 69 6e 65 73 20 74 68 61 74 20 61 72 65 20 63 6f 6e 73 69 64 65 72 65 64 20 75 | coroutines.that.are.considered.u |
| 50ba0 | 6e 72 65 73 6f 6c 76 65 64 2e 20 42 65 73 74 20 62 65 20 61 77 61 72 65 20 6f 66 20 74 68 65 6d | nresolved..Best.be.aware.of.them |
| 50bc0 | 2c 0a 20 20 20 20 20 20 61 73 20 74 68 65 20 73 69 74 75 61 74 69 6f 6e 20 69 73 20 6c 69 6b 65 | ,.......as.the.situation.is.like |
| 50be0 | 6c 79 20 74 6f 20 63 68 61 6e 67 65 20 62 65 66 6f 72 65 20 31 2e 30 2e 30 3a 0a 20 20 20 20 20 | ly.to.change.before.1.0.0:...... |
| 50c00 | 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 41 | .</p>.......<ul>...........<li>A |
| 50c20 | 73 79 6e 63 20 66 75 6e 63 74 69 6f 6e 73 20 68 61 76 65 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e | sync.functions.have.optimization |
| 50c40 | 73 20 64 69 73 61 62 6c 65 64 20 2d 20 65 76 65 6e 20 69 6e 20 72 65 6c 65 61 73 65 20 6d 6f 64 | s.disabled.-.even.in.release.mod |
| 50c60 | 65 73 20 2d 20 64 75 65 20 74 6f 20 61 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 61 20 | es.-.due.to.an...............<a. |
| 50c80 | 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 |
| 50ca0 | 2f 7a 69 67 2f 69 73 73 75 65 73 2f 38 30 32 22 3e 4c 4c 56 4d 20 62 75 67 3c 2f 61 3e 2e 0a 20 | /zig/issues/802">LLVM.bug</a>... |
| 50cc0 | 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 | .........</li>...........<li>... |
| 50ce0 | 20 20 20 20 20 20 20 20 20 20 20 20 54 68 65 72 65 20 61 72 65 20 73 6f 6d 65 20 73 69 74 75 61 | ............There.are.some.situa |
| 50d00 | 74 69 6f 6e 73 20 77 68 65 72 65 20 77 65 20 63 61 6e 20 6b 6e 6f 77 20 73 74 61 74 69 63 61 6c | tions.where.we.can.know.statical |
| 50d20 | 6c 79 20 74 68 61 74 20 74 68 65 72 65 20 77 69 6c 6c 20 6e 6f 74 20 62 65 0a 20 20 20 20 20 20 | ly.that.there.will.not.be....... |
| 50d40 | 20 20 20 20 20 20 20 20 6d 65 6d 6f 72 79 20 61 6c 6c 6f 63 61 74 69 6f 6e 20 66 61 69 6c 75 72 | ........memory.allocation.failur |
| 50d60 | 65 2c 20 62 75 74 20 5a 69 67 20 73 74 69 6c 6c 20 66 6f 72 63 65 73 20 75 73 20 74 6f 20 68 61 | e,.but.Zig.still.forces.us.to.ha |
| 50d80 | 6e 64 6c 65 20 69 74 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 54 4f 44 4f 20 66 69 6c 65 | ndle.it................TODO.file |
| 50da0 | 20 61 6e 20 69 73 73 75 65 20 66 6f 72 20 74 68 69 73 20 61 6e 64 20 6c 69 6e 6b 20 69 74 20 68 | .an.issue.for.this.and.link.it.h |
| 50dc0 | 65 72 65 2e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | ere............</li>...........< |
| 50de0 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 5a 69 67 20 64 6f 65 73 20 6e 6f 74 20 74 | li>...............Zig.does.not.t |
| 50e00 | 61 6b 65 20 61 64 76 61 6e 74 61 67 65 20 6f 66 20 4c 4c 56 4d 27 73 20 61 6c 6c 6f 63 61 74 69 | ake.advantage.of.LLVM's.allocati |
| 50e20 | 6f 6e 20 65 6c 69 73 69 6f 6e 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 20 66 6f 72 0a 20 20 20 20 | on.elision.optimization.for..... |
| 50e40 | 20 20 20 20 20 20 20 20 20 20 63 6f 72 6f 75 74 69 6e 65 73 2e 20 49 74 20 63 72 61 73 68 65 64 | ..........coroutines..It.crashed |
| 50e60 | 20 4c 4c 56 4d 20 77 68 65 6e 20 49 20 74 72 69 65 64 20 74 6f 20 64 6f 20 69 74 20 74 68 65 20 | .LLVM.when.I.tried.to.do.it.the. |
| 50e80 | 66 69 72 73 74 20 74 69 6d 65 2e 20 54 68 69 73 20 69 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 | first.time..This.is............. |
| 50ea0 | 20 20 72 65 6c 61 74 65 64 20 74 6f 20 74 68 65 20 6f 74 68 65 72 20 32 20 62 75 6c 6c 65 74 20 | ..related.to.the.other.2.bullet. |
| 50ec0 | 70 6f 69 6e 74 73 20 68 65 72 65 2e 20 53 65 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c | points.here..See...............< |
| 50ee0 | 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 |
| 50f00 | 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 38 30 32 22 3e 23 38 30 32 3c 2f 61 3e 2e 0a 20 20 20 | ng/zig/issues/802">#802</a>..... |
| 50f20 | 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>........ |
| 50f40 | 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 42 75 69 6c | ....................<h1.id="Buil |
| 50f60 | 74 69 6e 2d 46 75 6e 63 74 69 6f 6e 73 22 3e 42 75 69 6c 74 69 6e 20 46 75 6e 63 74 69 6f 6e 73 | tin-Functions">Builtin.Functions |
| 50f80 | 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 42 75 69 6c 74 69 6e 20 66 | </h1>........<p>.......Builtin.f |
| 50fa0 | 75 6e 63 74 69 6f 6e 73 20 61 72 65 20 70 72 6f 76 69 64 65 64 20 62 79 20 74 68 65 20 63 6f 6d | unctions.are.provided.by.the.com |
| 50fc0 | 70 69 6c 65 72 20 61 6e 64 20 61 72 65 20 70 72 65 66 69 78 65 64 20 77 69 74 68 20 3c 63 6f 64 | piler.and.are.prefixed.with.<cod |
| 50fe0 | 65 3e 40 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 54 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 | e>@</code>........The.<code.clas |
| 51000 | 73 3d 22 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 |
| 51020 | 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 20 6f 6e 20 61 | ptime</span></code>.keyword.on.a |
| 51040 | 20 70 61 72 61 6d 65 74 65 72 20 6d 65 61 6e 73 20 74 68 61 74 20 74 68 65 20 70 61 72 61 6d 65 | .parameter.means.that.the.parame |
| 51060 | 74 65 72 20 6d 75 73 74 20 62 65 20 6b 6e 6f 77 6e 0a 20 20 20 20 20 20 61 74 20 63 6f 6d 70 69 | ter.must.be.known.......at.compi |
| 51080 | 6c 65 20 74 69 6d 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 68 32 20 69 64 | le.time........</p>.......<h2.id |
| 510a0 | 3d 22 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 40 61 64 64 57 69 74 68 4f 76 65 72 66 | ="addWithOverflow">@addWithOverf |
| 510c0 | 6c 6f 77 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 | low</h2>........<pre><code.class |
| 510e0 | 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" |
| 51100 | 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 3c 73 70 61 6e 20 63 | >@addWithOverflow</span>(<span.c |
| 51120 | 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: |
| 51140 | 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 |
| 51160 | 61 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 | an>,.a:.T,.b:.T,.result:.*T).<sp |
| 51180 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 3c | an.class="tok-type">bool</span>< |
| 511a0 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 50 65 72 | /code></pre>.......<p>.......Per |
| 511c0 | 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 65 73 75 6c 74 2e 2a | forms.<code.class="zig">result.* |
| 511e0 | 20 3d 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 | .=.a.+.b</code>..If.overflow.or. |
| 51200 | 75 6e 64 65 72 66 6c 6f 77 20 6f 63 63 75 72 73 2c 0a 20 20 20 20 20 20 20 20 20 20 73 74 6f 72 | underflow.occurs,...........stor |
| 51220 | 65 73 20 74 68 65 20 6f 76 65 72 66 6c 6f 77 65 64 20 62 69 74 73 20 69 6e 20 3c 63 6f 64 65 20 | es.the.overflowed.bits.in.<code. |
| 51240 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 72 65 73 75 6c 74 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 72 65 | class="zig">result</code>.and.re |
| 51260 | 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 20 63 6c | turns.<code.class="zig"><span.cl |
| 51280 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | ass="tok-null">true</span></code |
| 512a0 | 3e 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 | >....................If.no.overf |
| 512c0 | 6c 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 | low.or.underflow.occurs,.returns |
| 512e0 | 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=" |
| 51300 | 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 | tok-null">false</span></code>... |
| 51320 | 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 41 | .....</p>..............<h2.id="A |
| 51340 | 72 67 54 79 70 65 22 3e 40 41 72 67 54 79 70 65 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 | rgType">@ArgType</h2>........<pr |
| 51360 | 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= |
| 51380 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 41 72 67 54 79 70 65 3c 2f 73 70 61 6e 3e 28 3c 73 | "tok-builtin">@ArgType</span>(<s |
| 513a0 | 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 |
| 513c0 | 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 |
| 513e0 | 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 |
| 51400 | 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | omptime</span>.n:.<span.class="t |
| 51420 | 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 | ok-type">usize</span>).<span.cla |
| 51440 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ss="tok-type">type</span></code> |
| 51460 | 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 62 75 69 6c | </pre>.......<p>.......This.buil |
| 51480 | 74 69 6e 20 66 75 6e 63 74 69 6f 6e 20 74 61 6b 65 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 79 | tin.function.takes.a.function.ty |
| 514a0 | 70 65 20 61 6e 64 20 72 65 74 75 72 6e 73 20 74 68 65 20 74 79 70 65 20 6f 66 20 74 68 65 20 70 | pe.and.returns.the.type.of.the.p |
| 514c0 | 61 72 61 6d 65 74 65 72 20 61 74 20 69 6e 64 65 78 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | arameter.at.index.<code.class="z |
| 514e0 | 69 67 22 3e 6e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | ig">n</code>........</p>.......< |
| 51500 | 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 6f | p>.......<code.class="zig">T</co |
| 51520 | 64 65 3e 20 6d 75 73 74 20 62 65 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 79 70 65 2e 0a 20 20 20 | de>.must.be.a.function.type..... |
| 51540 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4e 6f 74 65 3a 20 54 68 | ...</p>.......<p>.......Note:.Th |
| 51560 | 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 64 65 70 72 65 63 61 74 65 64 2e 20 55 73 65 20 3c | is.function.is.deprecated..Use.< |
| 51580 | 61 20 68 72 65 66 3d 22 23 74 79 70 65 49 6e 66 6f 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 61 3e | a.href="#typeInfo">@typeInfo</a> |
| 515a0 | 20 69 6e 73 74 65 61 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 | .instead........</p>............ |
| 515c0 | 20 20 3c 68 32 20 69 64 3d 22 61 74 6f 6d 69 63 4c 6f 61 64 22 3e 40 61 74 6f 6d 69 63 4c 6f 61 | ..<h2.id="atomicLoad">@atomicLoa |
| 515e0 | 64 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 | d</h2>........<pre><code.class=" |
| 51600 | 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">@ |
| 51620 | 61 74 6f 6d 69 63 4c 6f 61 64 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | atomicLoad</span>(<span.class="t |
| 51640 | 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. |
| 51660 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 70 74 | class="tok-type">type</span>,.pt |
| 51680 | 72 3a 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | r:.*<span.class="tok-kw">const</ |
| 516a0 | 73 70 61 6e 3e 20 54 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | span>.T,.<span.class="tok-kw">co |
| 516c0 | 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 69 6e 2e | mptime</span>.ordering:.builtin. |
| 516e0 | 41 74 6f 6d 69 63 4f 72 64 65 72 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 | AtomicOrder).T</code></pre>..... |
| 51700 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 62 75 69 6c 74 69 6e 20 66 75 6e 63 74 69 6f | ..<p>.......This.builtin.functio |
| 51720 | 6e 20 61 74 6f 6d 69 63 61 6c 6c 79 20 64 65 72 65 66 65 72 65 6e 63 65 73 20 61 20 70 6f 69 6e | n.atomically.dereferences.a.poin |
| 51740 | 74 65 72 20 61 6e 64 20 72 65 74 75 72 6e 73 20 74 68 65 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 | ter.and.returns.the.value....... |
| 51760 | 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 73 | .</p>.......<p>.......<code.clas |
| 51780 | 73 3d 22 7a 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 | s="zig">T</code>.must.be.a.point |
| 517a0 | 65 72 20 74 79 70 65 2c 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | er.type,.a.<code.class="zig"><sp |
| 517c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 3c | an.class="tok-type">bool</span>< |
| 517e0 | 2f 63 6f 64 65 3e 2c 0a 20 20 20 20 20 20 6f 72 20 61 6e 20 69 6e 74 65 67 65 72 20 77 68 6f 73 | /code>,.......or.an.integer.whos |
| 51800 | 65 20 62 69 74 20 63 6f 75 6e 74 20 6d 65 65 74 73 20 74 68 65 73 65 20 72 65 71 75 69 72 65 6d | e.bit.count.meets.these.requirem |
| 51820 | 65 6e 74 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 | ents:.......</p>.......<ul>..... |
| 51840 | 20 20 20 20 20 20 3c 6c 69 3e 41 74 20 6c 65 61 73 74 20 38 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | ......<li>At.least.8</li>....... |
| 51860 | 20 20 20 20 3c 6c 69 3e 41 74 20 6d 6f 73 74 20 74 68 65 20 73 61 6d 65 20 61 73 20 75 73 69 7a | ....<li>At.most.the.same.as.usiz |
| 51880 | 65 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 50 6f 77 65 72 20 6f 66 20 32 3c | e</li>...........<li>Power.of.2< |
| 518a0 | 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | /li>.......</ul>.......<p>...... |
| 518c0 | 20 54 4f 44 4f 20 72 69 67 68 74 20 6e 6f 77 20 62 6f 6f 6c 20 69 73 20 6e 6f 74 20 61 63 63 65 | .TODO.right.now.bool.is.not.acce |
| 518e0 | 70 74 65 64 2e 20 41 6c 73 6f 20 49 20 74 68 69 6e 6b 20 77 65 20 63 6f 75 6c 64 20 6d 61 6b 65 | pted..Also.I.think.we.could.make |
| 51900 | 20 6e 6f 6e 20 70 6f 77 65 72 73 20 6f 66 20 32 20 77 6f 72 6b 20 66 69 6e 65 2c 20 6d 61 79 62 | .non.powers.of.2.work.fine,.mayb |
| 51920 | 65 0a 20 20 20 20 20 20 77 65 20 63 61 6e 20 72 65 6d 6f 76 65 20 74 68 69 73 20 72 65 73 74 72 | e.......we.can.remove.this.restr |
| 51940 | 69 63 74 69 6f 6e 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 | iction.......</p>..............< |
| 51960 | 68 32 20 69 64 3d 22 61 74 6f 6d 69 63 52 6d 77 22 3e 40 61 74 6f 6d 69 63 52 6d 77 3c 2f 68 32 | h2.id="atomicRmw">@atomicRmw</h2 |
| 51980 | 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"> |
| 519a0 | 3c 73 70 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 | <span.class="tok-builtin">@atomi |
| 519c0 | 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 22 | cRmw</span>(<span.class="tok-kw" |
| 519e0 | 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= |
| 51a00 | 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 2c | "tok-type">type</span>,.ptr:.*T, |
| 51a20 | 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</ |
| 51a40 | 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 6f | span>.op:.builtin.AtomicRmwOp,.o |
| 51a60 | 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 3e | perand:.T,.<span.class="tok-kw"> |
| 51a80 | 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 69 | comptime</span>.ordering:.builti |
| 51aa0 | 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 20 | n.AtomicOrder).T</code></pre>... |
| 51ac0 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 62 75 69 6c 74 69 6e 20 66 75 6e 63 74 | ....<p>.......This.builtin.funct |
| 51ae0 | 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 61 | ion.atomically.modifies.memory.a |
| 51b00 | 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 6c | nd.then.returns.the.previous.val |
| 51b20 | 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 3c | ue........</p>.......<p>.......< |
| 51b40 | 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 |
| 51b60 | 65 20 61 20 70 6f 69 6e 74 65 72 20 74 79 70 65 2c 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | e.a.pointer.type,.a.<code.class= |
| 51b80 | 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f | "zig"><span.class="tok-type">boo |
| 51ba0 | 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 0a 20 20 20 20 20 20 6f 72 20 61 6e 20 69 6e 74 | l</span></code>,.......or.an.int |
| 51bc0 | 65 67 65 72 20 77 68 6f 73 65 20 62 69 74 20 63 6f 75 6e 74 20 6d 65 65 74 73 20 74 68 65 73 65 | eger.whose.bit.count.meets.these |
| 51be0 | 20 72 65 71 75 69 72 65 6d 65 6e 74 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | .requirements:.......</p>....... |
| 51c00 | 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 74 20 6c 65 61 73 74 20 38 3c 2f 6c | <ul>...........<li>At.least.8</l |
| 51c20 | 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 74 20 6d 6f 73 74 20 74 68 65 20 73 61 6d | i>...........<li>At.most.the.sam |
| 51c40 | 65 20 61 73 20 75 73 69 7a 65 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 50 6f | e.as.usize</li>...........<li>Po |
| 51c60 | 77 65 72 20 6f 66 20 32 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 | wer.of.2</li>.......</ul>....... |
| 51c80 | 3c 70 3e 0a 20 20 20 20 20 20 54 4f 44 4f 20 72 69 67 68 74 20 6e 6f 77 20 62 6f 6f 6c 20 69 73 | <p>.......TODO.right.now.bool.is |
| 51ca0 | 20 6e 6f 74 20 61 63 63 65 70 74 65 64 2e 20 41 6c 73 6f 20 49 20 74 68 69 6e 6b 20 77 65 20 63 | .not.accepted..Also.I.think.we.c |
| 51cc0 | 6f 75 6c 64 20 6d 61 6b 65 20 6e 6f 6e 20 70 6f 77 65 72 73 20 6f 66 20 32 20 77 6f 72 6b 20 66 | ould.make.non.powers.of.2.work.f |
| 51ce0 | 69 6e 65 2c 20 6d 61 79 62 65 0a 20 20 20 20 20 20 77 65 20 63 61 6e 20 72 65 6d 6f 76 65 20 74 | ine,.maybe.......we.can.remove.t |
| 51d00 | 68 69 73 20 72 65 73 74 72 69 63 74 69 6f 6e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | his.restriction.......</p>...... |
| 51d20 | 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 62 69 74 43 61 73 74 22 3e 40 62 69 74 43 61 73 | ........<h2.id="bitCast">@bitCas |
| 51d40 | 74 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 | t</h2>........<pre><code.class=" |
| 51d60 | 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">@ |
| 51d80 | 62 69 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 | bitCast</span>(<span.class="tok- |
| 51da0 | 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 44 65 73 74 54 79 70 65 3a 20 3c 73 | kw">comptime</span>.DestType:.<s |
| 51dc0 | 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> |
| 51de0 | 2c 20 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 | ,.value:.<span.class="tok-kw">va |
| 51e00 | 72 3c 2f 73 70 61 6e 3e 29 20 44 65 73 74 54 79 70 65 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | r</span>).DestType</code></pre>. |
| 51e20 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 6e 76 65 72 74 73 20 61 20 76 61 6c 75 65 | ......<p>.......Converts.a.value |
| 51e40 | 20 6f 66 20 6f 6e 65 20 74 79 70 65 20 74 6f 20 61 6e 6f 74 68 65 72 20 74 79 70 65 2e 0a 20 20 | .of.one.type.to.another.type.... |
| 51e60 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 73 73 65 72 74 73 | ....</p>.......<p>.......Asserts |
| 51e80 | 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 6e 20 63 6c | .that.<code.class="zig"><span.cl |
| 51ea0 | 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> |
| 51ec0 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 | (<span.class="tok-builtin">@type |
| 51ee0 | 4f 66 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 29 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | Of</span>(value)).==.<span.class |
| 51f00 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 69 7a 65 4f 66 3c 2f 73 70 61 6e 3e 28 44 65 | ="tok-builtin">@sizeOf</span>(De |
| 51f20 | 73 74 54 79 70 65 29 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | stType)</code>........</p>...... |
| 51f40 | 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 |
| 51f60 | 61 73 73 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 |
| 51f80 | 69 6e 22 3e 40 74 79 70 65 49 64 3c 2f 73 70 61 6e 3e 28 44 65 73 74 54 79 70 65 29 20 21 3d 20 | in">@typeId</span>(DestType).!=. |
| 51fa0 | 3c 73 70 61 6e 20 63 6c 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 |
| 51fc0 | 74 3c 2f 73 70 61 6e 3e 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">& |
| 51fe0 | 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 54 79 70 65 49 | quot;builtin"</span>).TypeI |
| 52000 | 64 2e 50 6f 69 6e 74 65 72 3c 2f 63 6f 64 65 3e 2e 20 55 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 | d.Pointer</code>..Use.<code.clas |
| 52020 | 73 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 |
| 52040 | 22 3e 40 70 74 72 43 61 73 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6f 72 20 3c 63 6f 64 | ">@ptrCast</span></code>.or.<cod |
| 52060 | 65 20 63 6c 61 73 73 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 |
| 52080 | 75 69 6c 74 69 6e 22 3e 40 69 6e 74 54 6f 50 74 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 | uiltin">@intToPtr</span></code>. |
| 520a0 | 69 66 20 79 6f 75 20 6e 65 65 64 20 74 68 69 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | if.you.need.this........</p>.... |
| 520c0 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 61 6e 20 62 65 20 75 73 65 64 20 66 6f 72 20 74 68 65 | ...<p>.......Can.be.used.for.the |
| 520e0 | 73 65 20 74 68 69 6e 67 73 20 66 6f 72 20 65 78 61 6d 70 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 | se.things.for.example:.......</p |
| 52100 | 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 43 6f 6e 76 65 | >.......<ul>...........<li>Conve |
| 52120 | 72 74 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | rt.<code.class="zig"><span.class |
| 52140 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 6f | ="tok-type">f32</span></code>.to |
| 52160 | 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=" |
| 52180 | 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 62 69 74 73 | tok-type">u32</span></code>.bits |
| 521a0 | 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 6f 6e 76 65 72 74 20 3c 63 6f 64 | </li>...........<li>Convert.<cod |
| 521c0 | 65 20 63 6c 61 73 73 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 |
| 521e0 | 79 70 65 22 3e 69 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 | ype">i32</span></code>.to.<code. |
| 52200 | 63 6c 61 73 73 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 |
| 52220 | 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 70 72 65 73 65 72 76 69 6e 67 20 | e">u32</span></code>.preserving. |
| 52240 | 74 77 6f 73 20 63 6f 6d 70 6c 65 6d 65 6e 74 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e | twos.complement</li>.......</ul> |
| 52260 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 57 6f 72 6b 73 20 61 74 20 63 6f 6d 70 69 6c | .......<p>.......Works.at.compil |
| 52280 | 65 2d 74 69 6d 65 20 69 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 76 61 6c 75 | e-time.if.<code.class="zig">valu |
| 522a0 | 65 3c 2f 63 6f 64 65 3e 20 69 73 20 6b 6e 6f 77 6e 20 61 74 20 63 6f 6d 70 69 6c 65 20 74 69 6d | e</code>.is.known.at.compile.tim |
| 522c0 | 65 2e 20 49 74 27 73 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 74 6f 20 62 69 74 63 61 | e..It's.a.compile.error.to.bitca |
| 522e0 | 73 74 20 61 20 73 74 72 75 63 74 20 74 6f 20 61 20 73 63 61 6c 61 72 20 74 79 70 65 20 6f 66 20 | st.a.struct.to.a.scalar.type.of. |
| 52300 | 74 68 65 20 73 61 6d 65 20 73 69 7a 65 20 73 69 6e 63 65 20 73 74 72 75 63 74 73 20 68 61 76 65 | the.same.size.since.structs.have |
| 52320 | 20 75 6e 64 65 66 69 6e 65 64 20 6c 61 79 6f 75 74 2e 20 48 6f 77 65 76 65 72 20 69 66 20 74 68 | .undefined.layout..However.if.th |
| 52340 | 65 20 73 74 72 75 63 74 20 69 73 20 70 61 63 6b 65 64 20 74 68 65 6e 20 69 74 20 77 6f 72 6b 73 | e.struct.is.packed.then.it.works |
| 52360 | 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 |
| 52380 | 3d 22 62 69 74 4f 66 66 73 65 74 4f 66 22 3e 40 62 69 74 4f 66 66 73 65 74 4f 66 3c 2f 68 32 3e | ="bitOffsetOf">@bitOffsetOf</h2> |
| 523a0 | 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">< |
| 523c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 62 69 74 4f 66 66 | span.class="tok-builtin">@bitOff |
| 523e0 | 73 65 74 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | setOf</span>(<span.class="tok-kw |
| 52400 | 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 |
| 52420 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 | ="tok-type">type</span>,.<span.c |
| 52440 | 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 66 69 | lass="tok-kw">comptime</span>.fi |
| 52460 | 65 6c 64 5f 6e 61 6d 65 3a 20 5b 5d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | eld_name:.[].<span.class="tok-kw |
| 52480 | 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- |
| 524a0 | 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | type">u8</span>).<span.class="to |
| 524c0 | 6b 2d 74 79 70 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | k-type">comptime_int</span></cod |
| 524e0 | 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 |
| 52500 | 20 74 68 65 20 62 69 74 20 6f 66 66 73 65 74 20 6f 66 20 61 20 66 69 65 6c 64 20 72 65 6c 61 74 | .the.bit.offset.of.a.field.relat |
| 52520 | 69 76 65 20 74 6f 20 69 74 73 20 63 6f 6e 74 61 69 6e 69 6e 67 20 73 74 72 75 63 74 2e 0a 20 20 | ive.to.its.containing.struct.... |
| 52540 | 20 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 6e 6f 6e | ....</p>.......<p>.......For.non |
| 52560 | 20 3c 61 20 68 72 65 66 3d 22 23 70 61 63 6b 65 64 2d 73 74 72 75 63 74 22 3e 70 61 63 6b 65 64 | .<a.href="#packed-struct">packed |
| 52580 | 20 73 74 72 75 63 74 73 3c 2f 61 3e 2c 20 74 68 69 73 20 77 69 6c 6c 20 61 6c 77 61 79 73 20 62 | .structs</a>,.this.will.always.b |
| 525a0 | 65 20 64 69 76 69 73 69 62 6c 65 20 62 79 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | e.divisible.by.<code.class="zig" |
| 525c0 | 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 38 3c 2f 73 70 61 | ><span.class="tok-number">8</spa |
| 525e0 | 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 46 6f 72 20 70 61 63 6b 65 64 20 73 74 72 75 | n></code>........For.packed.stru |
| 52600 | 63 74 73 2c 20 6e 6f 6e 2d 62 79 74 65 2d 61 6c 69 67 6e 65 64 20 66 69 65 6c 64 73 20 77 69 6c | cts,.non-byte-aligned.fields.wil |
| 52620 | 6c 20 73 68 61 72 65 20 61 20 62 79 74 65 20 6f 66 66 73 65 74 2c 20 62 75 74 20 74 68 65 79 20 | l.share.a.byte.offset,.but.they. |
| 52640 | 77 69 6c 6c 20 68 61 76 65 20 64 69 66 66 65 72 65 6e 74 0a 20 20 20 20 20 20 62 69 74 20 6f 66 | will.have.different.......bit.of |
| 52660 | 66 73 65 74 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 | fsets........</p>.......<p>See.a |
| 52680 | 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 62 79 74 65 4f | lso:</p><ul>.<li><a.href="#byteO |
| 526a0 | 66 66 73 65 74 4f 66 22 3e 40 62 79 74 65 4f 66 66 73 65 74 4f 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a | ffsetOf">@byteOffsetOf</a></li>. |
| 526c0 | 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 62 72 65 61 | </ul>...............<h2.id="brea |
| 526e0 | 6b 70 6f 69 6e 74 22 3e 40 62 72 65 61 6b 70 6f 69 6e 74 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 | kpoint">@breakpoint</h2>........ |
| 52700 | 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 |
| 52720 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 62 72 65 61 6b 70 6f 69 6e 74 3c 2f 73 70 | ss="tok-builtin">@breakpoint</sp |
| 52740 | 61 6e 3e 28 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 | an>()</code></pre>.......<p>.... |
| 52760 | 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 6e 73 65 72 74 73 20 61 20 70 6c 61 74 66 | ...This.function.inserts.a.platf |
| 52780 | 6f 72 6d 2d 73 70 65 63 69 66 69 63 20 64 65 62 75 67 20 74 72 61 70 20 69 6e 73 74 72 75 63 74 | orm-specific.debug.trap.instruct |
| 527a0 | 69 6f 6e 20 77 68 69 63 68 20 63 61 75 73 65 73 0a 20 20 20 20 20 20 64 65 62 75 67 67 65 72 73 | ion.which.causes.......debuggers |
| 527c0 | 20 74 6f 20 62 72 65 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 | .to.break.there........</p>..... |
| 527e0 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 6f 6e 6c | ..<p>.......This.function.is.onl |
| 52800 | 79 20 76 61 6c 69 64 20 77 69 74 68 69 6e 20 66 75 6e 63 74 69 6f 6e 20 73 63 6f 70 65 2e 0a 20 | y.valid.within.function.scope... |
| 52820 | 20 20 20 20 20 3c 2f 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 | .....</p>...............<h2.id=" |
| 52840 | 62 79 74 65 4f 66 66 73 65 74 4f 66 22 3e 40 62 79 74 65 4f 66 66 73 65 74 4f 66 3c 2f 68 32 3e | byteOffsetOf">@byteOffsetOf</h2> |
| 52860 | 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">< |
| 52880 | 73 70 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 | span.class="tok-builtin">@byteOf |
| 528a0 | 66 73 65 74 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | fsetOf</span>(<span.class="tok-k |
| 528c0 | 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | w">comptime</span>.T:.<span.clas |
| 528e0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 | s="tok-type">type</span>,.<span. |
| 52900 | 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 66 | class="tok-kw">comptime</span>.f |
| 52920 | 69 65 6c 64 5f 6e 61 6d 65 3a 20 5b 5d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ield_name:.[].<span.class="tok-k |
| 52940 | 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 |
| 52960 | 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | -type">u8</span>).<span.class="t |
| 52980 | 6f 6b 2d 74 79 70 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f | ok-type">comptime_int</span></co |
| 529a0 | 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 52 65 74 75 72 6e | de></pre>.......<p>.......Return |
| 529c0 | 73 20 74 68 65 20 62 79 74 65 20 6f 66 66 73 65 74 20 6f 66 20 61 20 66 69 65 6c 64 20 72 65 6c | s.the.byte.offset.of.a.field.rel |
| 529e0 | 61 74 69 76 65 20 74 6f 20 69 74 73 20 63 6f 6e 74 61 69 6e 69 6e 67 20 73 74 72 75 63 74 2e 0a | ative.to.its.containing.struct.. |
| 52a00 | 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 |
| 52a20 | 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 62 69 74 4f 66 66 73 65 74 4f 66 22 | ><ul>.<li><a.href="#bitOffsetOf" |
| 52a40 | 3e 40 62 69 74 4f 66 66 73 65 74 4f 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 | >@bitOffsetOf</a></li>.</ul>.... |
| 52a60 | 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 61 6c 69 67 6e 43 61 73 74 22 3e 40 61 | ...........<h2.id="alignCast">@a |
| 52a80 | 6c 69 67 6e 43 61 73 74 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 | lignCast</h2>........<pre><code. |
| 52aa0 | 63 6c 61 73 73 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 |
| 52ac0 | 6c 74 69 6e 22 3e 40 61 6c 69 67 6e 43 61 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c | ltin">@alignCast</span>(<span.cl |
| 52ae0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 61 6c 69 | ass="tok-kw">comptime</span>.ali |
| 52b00 | 67 6e 6d 65 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 | gnment:.<span.class="tok-type">u |
| 52b20 | 32 39 3c 2f 73 70 61 6e 3e 2c 20 70 74 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | 29</span>,.ptr:.<span.class="tok |
| 52b40 | 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | -kw">var</span>).<span.class="to |
| 52b60 | 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 | k-kw">var</span></code></pre>... |
| 52b80 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | ....<p>.......<code.class="zig"> |
| 52ba0 | 70 74 72 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | ptr</code>.can.be.<code.class="z |
| 52bc0 | 69 67 22 3e 2a 54 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 | ig">*T</code>,.<code.class="zig" |
| 52be0 | 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 28 | ><span.class="tok-kw">fn</span>( |
| 52c00 | 29 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 3f 2a 54 3c | )</code>,.<code.class="zig">?*T< |
| 52c20 | 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 3c 63 | /code>,.......................<c |
| 52c40 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ode.class="zig">?<span.class="to |
| 52c60 | 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 6e 3e 28 29 3c 2f 63 6f 64 65 3e 2c 20 6f 72 20 3c 63 6f | k-kw">fn</span>()</code>,.or.<co |
| 52c80 | 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 5b 5d 54 3c 2f 63 6f 64 65 3e 2e 20 49 74 20 72 65 | de.class="zig">[]T</code>..It.re |
| 52ca0 | 74 75 72 6e 73 20 74 68 65 20 73 61 6d 65 20 74 79 70 65 20 61 73 20 3c 63 6f 64 65 20 63 6c 61 | turns.the.same.type.as.<code.cla |
| 52cc0 | 73 73 3d 22 7a 69 67 22 3e 70 74 72 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 65 78 63 65 70 74 | ss="zig">ptr</code>.......except |
| 52ce0 | 20 77 69 74 68 20 74 68 65 20 61 6c 69 67 6e 6d 65 6e 74 20 61 64 6a 75 73 74 65 64 20 74 6f 20 | .with.the.alignment.adjusted.to. |
| 52d00 | 74 68 65 20 6e 65 77 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 | the.new.value........</p>....... |
| 52d20 | 3c 70 3e 41 20 3c 61 20 68 72 65 66 3d 22 23 49 6e 63 6f 72 72 65 63 74 2d 50 6f 69 6e 74 65 72 | <p>A.<a.href="#Incorrect-Pointer |
| 52d40 | 2d 41 6c 69 67 6e 6d 65 6e 74 22 3e 70 6f 69 6e 74 65 72 20 61 6c 69 67 6e 6d 65 6e 74 20 73 61 | -Alignment">pointer.alignment.sa |
| 52d60 | 66 65 74 79 20 63 68 65 63 6b 3c 2f 61 3e 20 69 73 20 61 64 64 65 64 0a 20 20 20 20 20 20 74 6f | fety.check</a>.is.added.......to |
| 52d80 | 20 74 68 65 20 67 65 6e 65 72 61 74 65 64 20 63 6f 64 65 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 | .the.generated.code.to.make.sure |
| 52da0 | 20 74 68 65 20 70 6f 69 6e 74 65 72 20 69 73 20 61 6c 69 67 6e 65 64 20 61 73 20 70 72 6f 6d 69 | .the.pointer.is.aligned.as.promi |
| 52dc0 | 73 65 64 2e 3c 2f 70 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 61 | sed.</p>...............<h2.id="a |
| 52de0 | 6c 69 67 6e 4f 66 22 3e 40 61 6c 69 67 6e 4f 66 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 | lignOf">@alignOf</h2>........<pr |
| 52e00 | 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= |
| 52e20 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 6c 69 67 6e 4f 66 3c 2f 73 70 61 6e 3e 28 3c 73 | "tok-builtin">@alignOf</span>(<s |
| 52e40 | 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 |
| 52e60 | 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 |
| 52e80 | 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" |
| 52ea0 | 3e 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | >comptime_int</span></code></pre |
| 52ec0 | 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. |
| 52ee0 | 72 65 74 75 72 6e 73 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 62 79 74 65 73 20 74 68 61 74 | returns.the.number.of.bytes.that |
| 52f00 | 20 74 68 69 73 20 74 79 70 65 20 73 68 6f 75 6c 64 20 62 65 20 61 6c 69 67 6e 65 64 20 74 6f 0a | .this.type.should.be.aligned.to. |
| 52f20 | 20 20 20 20 20 20 66 6f 72 20 74 68 65 20 63 75 72 72 65 6e 74 20 74 61 72 67 65 74 20 74 6f 20 | ......for.the.current.target.to. |
| 52f40 | 6d 61 74 63 68 20 74 68 65 20 43 20 41 42 49 2e 20 57 68 65 6e 20 74 68 65 20 63 68 69 6c 64 20 | match.the.C.ABI..When.the.child. |
| 52f60 | 74 79 70 65 20 6f 66 20 61 20 70 6f 69 6e 74 65 72 20 68 61 73 0a 20 20 20 20 20 20 74 68 69 73 | type.of.a.pointer.has.......this |
| 52f80 | 20 61 6c 69 67 6e 6d 65 6e 74 2c 20 74 68 65 20 61 6c 69 67 6e 6d 65 6e 74 20 63 61 6e 20 62 65 | .alignment,.the.alignment.can.be |
| 52fa0 | 20 6f 6d 69 74 74 65 64 20 66 72 6f 6d 20 74 68 65 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f | .omitted.from.the.type........</ |
| 52fc0 | 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"> |
| 52fe0 | 3c 73 70 61 6e 20 63 6c 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 |
| 53000 | 3e 20 61 73 73 65 72 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | >.assert.=.<span.class="tok-buil |
| 53020 | 74 69 6e 22 3e 40 69 6d 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= |
| 53040 | 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> |
| 53060 | 29 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ).debug.assert;.<span.class="tok |
| 53080 | 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 72 | -kw">comptime</span>.{.....asser |
| 530a0 | 74 28 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 | t(*<span.class="tok-type">u32</s |
| 530c0 | 70 61 6e 3e 20 3d 3d 20 2a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c | pan>.==.*<span.class="tok-kw">al |
| 530e0 | 69 67 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c | ign</span>(<span.class="tok-buil |
| 53100 | 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 73 | tin">@alignOf</span>(<span.class |
| 53120 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 29 20 3c 73 70 61 6e 20 63 | ="tok-type">u32</span>)).<span.c |
| 53140 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f | lass="tok-type">u32</span>);.}</ |
| 53160 | 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 65 20 | code></pre>.......<p>.......The. |
| 53180 | 72 65 73 75 6c 74 20 69 73 20 61 20 74 61 72 67 65 74 2d 73 70 65 63 69 66 69 63 20 63 6f 6d 70 | result.is.a.target-specific.comp |
| 531a0 | 69 6c 65 20 74 69 6d 65 20 63 6f 6e 73 74 61 6e 74 2e 20 49 74 20 69 73 20 67 75 61 72 61 6e 74 | ile.time.constant..It.is.guarant |
| 531c0 | 65 65 64 20 74 6f 20 62 65 0a 20 20 20 20 20 20 6c 65 73 73 20 74 68 61 6e 20 6f 72 20 65 71 75 | eed.to.be.......less.than.or.equ |
| 531e0 | 61 6c 20 74 6f 20 3c 61 20 68 72 65 66 3d 22 23 73 69 7a 65 4f 66 22 3e 40 73 69 7a 65 4f 66 28 | al.to.<a.href="#sizeOf">@sizeOf( |
| 53200 | 54 29 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 | T)</a>........</p>.......<p>See. |
| 53220 | 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 41 6c 69 67 | also:</p><ul>.<li><a.href="#Alig |
| 53240 | 6e 6d 65 6e 74 22 3e 41 6c 69 67 6e 6d 65 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a | nment">Alignment</a></li>.</ul>. |
| 53260 | 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 6e 74 | ...............<h2.id="boolToInt |
| 53280 | 22 3e 40 62 6f 6f 6c 54 6f 49 6e 74 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 | ">@boolToInt</h2>........<pre><c |
| 532a0 | 6f 64 65 20 63 6c 61 73 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 |
| 532c0 | 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 6e 3e 28 76 61 6c 75 | -builtin">@boolToInt</span>(valu |
| 532e0 | 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f | e:.<span.class="tok-type">bool</ |
| 53300 | 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 31 | span>).<span.class="tok-type">u1 |
| 53320 | 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>.. |
| 53340 | 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 3d 22 7a 69 67 22 3e | .....Converts.<code.class="zig"> |
| 53360 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 74 72 75 65 3c 2f 73 70 61 | <span.class="tok-null">true</spa |
| 53380 | 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">< |
| 533a0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 31 3c 2f 73 70 61 6e 3e 28 | span.class="tok-type">u1</span>( |
| 533c0 | 3c 73 70 61 6e 20 63 6c 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 |
| 533e0 | 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 3d 22 7a 69 67 22 3e | >)</code>.and.<code.class="zig"> |
| 53400 | 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 |
| 53420 | 61 6e 3e 3c 2f 63 6f 64 65 3e 20 74 6f 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | an></code>.to................... |
| 53440 | 3c 63 6f 64 65 20 63 6c 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 |
| 53460 | 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 63 6c 61 73 73 3d 22 | ok-type">u1</span>(<span.class=" |
| 53480 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 2e 0a 20 20 | tok-number">0</span>)</code>.... |
| 534a0 | 20 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 20 | ....</p>.......<p>.......If.the. |
| 534c0 | 76 61 6c 75 65 20 69 73 20 6b 6e 6f 77 6e 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2c 20 | value.is.known.at.compile-time,. |
| 534e0 | 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 73 73 3d 22 | the.return.type.is.<code.class=" |
| 53500 | 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 |
| 53520 | 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 20 20 20 20 20 20 20 | time_int</span></code>.......... |
| 53540 | 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 7a 69 67 22 3e 3c 73 | .instead.of.<code.class="zig"><s |
| 53560 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 31 3c 2f 73 70 61 6e 3e 3c 2f | pan.class="tok-type">u1</span></ |
| 53580 | 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 | code>........</p>............... |
| 535a0 | 3c 68 32 20 69 64 3d 22 62 79 74 65 73 54 6f 53 6c 69 63 65 22 3e 40 62 79 74 65 73 54 6f 53 6c | <h2.id="bytesToSlice">@bytesToSl |
| 535c0 | 69 63 65 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 | ice</h2>........<pre><code.class |
| 535e0 | 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" |
| 53600 | 3e 40 62 79 74 65 73 54 6f 53 6c 69 63 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 | >@bytesToSlice</span>(<span.clas |
| 53620 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 45 6c 65 6d 65 | s="tok-kw">comptime</span>.Eleme |
| 53640 | 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 74 79 70 65 3c | nt:.<span.class="tok-type">type< |
| 53660 | 2f 73 70 61 6e 3e 2c 20 62 79 74 65 73 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | /span>,.bytes:.[]<span.class="to |
| 53680 | 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 5b 5d 45 6c 65 6d 65 6e 74 3c 2f 63 6f | k-type">u8</span>).[]Element</co |
| 536a0 | 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 |
| 536c0 | 74 73 20 61 20 73 6c 69 63 65 20 6f 66 20 62 79 74 65 73 20 6f 72 20 61 72 72 61 79 20 6f 66 20 | ts.a.slice.of.bytes.or.array.of. |
| 536e0 | 62 79 74 65 73 20 69 6e 74 6f 20 61 20 73 6c 69 63 65 20 6f 66 20 3c 63 6f 64 65 20 63 6c 61 73 | bytes.into.a.slice.of.<code.clas |
| 53700 | 73 3d 22 7a 69 67 22 3e 45 6c 65 6d 65 6e 74 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 54 68 | s="zig">Element</code>........Th |
| 53720 | 65 20 72 65 73 75 6c 74 69 6e 67 20 73 6c 69 63 65 20 68 61 73 20 74 68 65 20 73 61 6d 65 20 3c | e.resulting.slice.has.the.same.< |
| 53740 | 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 70 | a.href="#Pointers">pointer</a>.p |
| 53760 | 72 6f 70 65 72 74 69 65 73 20 61 73 20 74 68 65 20 70 61 72 61 6d 65 74 65 72 2e 0a 20 20 20 20 | roperties.as.the.parameter...... |
| 53780 | 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 74 74 65 6d 70 74 69 6e | ..</p>.......<p>.......Attemptin |
| 537a0 | 67 20 74 6f 20 63 6f 6e 76 65 72 74 20 61 20 6e 75 6d 62 65 72 20 6f 66 20 62 79 74 65 73 20 77 | g.to.convert.a.number.of.bytes.w |
| 537c0 | 69 74 68 20 61 20 6c 65 6e 67 74 68 20 74 68 61 74 20 64 6f 65 73 20 6e 6f 74 20 65 76 65 6e 6c | ith.a.length.that.does.not.evenl |
| 537e0 | 79 20 64 69 76 69 64 65 20 69 6e 74 6f 20 61 20 73 6c 69 63 65 20 6f 66 0a 20 20 20 20 20 20 65 | y.divide.into.a.slice.of.......e |
| 53800 | 6c 65 6d 65 6e 74 73 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 | lements.results.in.safety-protec |
| 53820 | 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 |
| 53840 | 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>........ |
| 53860 | 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 44 65 66 69 | </p>...............<h2.id="cDefi |
| 53880 | 6e 65 22 3e 40 63 44 65 66 69 6e 65 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 | ne">@cDefine</h2>........<pre><c |
| 538a0 | 6f 64 65 20 63 6c 61 73 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 |
| 538c0 | 2d 62 75 69 6c 74 69 6e 22 3e 40 63 44 65 66 69 6e 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 | -builtin">@cDefine</span>(<span. |
| 538e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 6e | class="tok-kw">comptime</span>.n |
| 53900 | 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 3e 75 38 | ame:.[]<span.class="tok-type">u8 |
| 53920 | 3c 2f 73 70 61 6e 3e 2c 20 76 61 6c 75 65 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 | </span>,.value)</code></pre>.... |
| 53940 | 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 61 6e 20 6f | ...<p>.......This.function.can.o |
| 53960 | 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 73 3d 22 7a 69 | nly.occur.inside.<code.class="zi |
| 53980 | 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 |
| 539a0 | 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | mport</span></code>........</p>. |
| 539c0 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 61 70 70 65 6e 64 73 20 3c 63 6f | ......<p>.......This.appends.<co |
| 539e0 | 64 65 3e 23 64 65 66 69 6e 65 20 24 6e 61 6d 65 20 24 76 61 6c 75 65 3c 2f 63 6f 64 65 3e 20 74 | de>#define.$name.$value</code>.t |
| 53a00 | 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 |
| 53a20 | 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 |
| 53a40 | 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. |
| 53a60 | 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 6f 20 64 | .......</p>.......<p>.......To.d |
| 53a80 | 65 66 69 6e 65 20 77 69 74 68 6f 75 74 20 61 20 76 61 6c 75 65 2c 20 6c 69 6b 65 20 74 68 69 73 | efine.without.a.value,.like.this |
| 53aa0 | 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 |
| 53ac0 | 61 73 73 3d 22 63 22 3e 23 64 65 66 69 6e 65 20 5f 47 4e 55 5f 53 4f 55 52 43 45 3c 2f 63 6f 64 | ass="c">#define._GNU_SOURCE</cod |
| 53ae0 | 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 55 73 65 20 74 68 65 | e></pre>.......<p>.......Use.the |
| 53b00 | 20 76 6f 69 64 20 76 61 6c 75 65 2c 20 6c 69 6b 65 20 74 68 69 73 3a 0a 20 20 20 20 20 20 3c 2f | .void.value,.like.this:.......</ |
| 53b20 | 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"> |
| 53b40 | 3c 73 70 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 |
| 53b60 | 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"> |
| 53b80 | 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 2c 20 | "_GNU_SOURCE"</span>,. |
| 53ba0 | 7b 7d 29 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 | {})</code></pre>.......<p>See.al |
| 53bc0 | 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6d 70 6f 72 74 | so:</p><ul>.<li><a.href="#Import |
| 53be0 | 2d 66 72 6f 6d 2d 43 2d 48 65 61 64 65 72 2d 46 69 6c 65 22 3e 49 6d 70 6f 72 74 20 66 72 6f 6d | -from-C-Header-File">Import.from |
| 53c00 | 20 43 20 48 65 61 64 65 72 20 46 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 | .C.Header.File</a></li>.<li><a.h |
| 53c20 | 72 65 66 3d 22 23 63 49 6e 63 6c 75 64 65 22 3e 40 63 49 6e 63 6c 75 64 65 3c 2f 61 3e 3c 2f 6c | ref="#cInclude">@cInclude</a></l |
| 53c40 | 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 49 6d 70 6f 72 74 22 3e 40 63 49 6d 70 6f | i>.<li><a.href="#cImport">@cImpo |
| 53c60 | 72 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 55 6e 64 65 66 | rt</a></li>.<li><a.href="#cUndef |
| 53c80 | 22 3e 40 63 55 6e 64 65 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 | ">@cUndef</a></li>.<li><a.href=" |
| 53ca0 | 23 76 6f 69 64 22 3e 76 6f 69 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 | #void">void</a></li>.</ul>...... |
| 53cc0 | 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 63 49 6d 70 6f 72 74 22 3e 40 63 49 6d 70 6f | .........<h2.id="cImport">@cImpo |
| 53ce0 | 72 74 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 | rt</h2>........<pre><code.class= |
| 53d00 | 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"> |
| 53d20 | 40 63 49 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 65 78 70 72 65 73 73 69 6f 6e 29 20 28 6e 61 6d | @cImport</span>(expression).(nam |
| 53d40 | 65 73 70 61 63 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 | espace)</code></pre>.......<p>.. |
| 53d60 | 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 73 20 43 20 63 6f 64 65 | .....This.function.parses.C.code |
| 53d80 | 20 61 6e 64 20 69 6d 70 6f 72 74 73 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 73 2c 20 74 79 70 65 | .and.imports.the.functions,.type |
| 53da0 | 73 2c 20 76 61 72 69 61 62 6c 65 73 2c 20 61 6e 64 0a 20 20 20 20 20 20 63 6f 6d 70 61 74 69 62 | s,.variables,.and.......compatib |
| 53dc0 | 6c 65 20 6d 61 63 72 6f 20 64 65 66 69 6e 69 74 69 6f 6e 73 20 69 6e 74 6f 20 74 68 65 20 72 65 | le.macro.definitions.into.the.re |
| 53de0 | 73 75 6c 74 20 6e 61 6d 65 73 70 61 63 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | sult.namespace........</p>...... |
| 53e00 | 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 65 78 70 | .<p>.......<code.class="zig">exp |
| 53e20 | 72 65 73 73 69 6f 6e 3c 2f 63 6f 64 65 3e 20 69 73 20 69 6e 74 65 72 70 72 65 74 65 64 20 61 74 | ression</code>.is.interpreted.at |
| 53e40 | 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 2e 20 54 68 65 20 62 75 69 6c 74 69 6e 20 66 75 6e 63 74 | .compile.time..The.builtin.funct |
| 53e60 | 69 6f 6e 73 0a 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ions...........<code.class="zig" |
| 53e80 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6e 63 | ><span.class="tok-builtin">@cInc |
| 53ea0 | 6c 75 64 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | lude</span></code>,.<code.class= |
| 53ec0 | 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"> |
| 53ee0 | 40 63 44 65 66 69 6e 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2c 20 61 6e 64 20 3c 63 6f 64 | @cDefine</span></code>,.and.<cod |
| 53f00 | 65 20 63 6c 61 73 73 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 |
| 53f20 | 75 69 6c 74 69 6e 22 3e 40 63 55 6e 64 65 66 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 6f | uiltin">@cUndef</span></code>.wo |
| 53f40 | 72 6b 0a 20 20 20 20 20 20 77 69 74 68 69 6e 20 74 68 69 73 20 65 78 70 72 65 73 73 69 6f 6e 2c | rk.......within.this.expression, |
| 53f60 | 20 61 70 70 65 6e 64 69 6e 67 20 74 6f 20 61 20 74 65 6d 70 6f 72 61 72 79 20 62 75 66 66 65 72 | .appending.to.a.temporary.buffer |
| 53f80 | 20 77 68 69 63 68 20 69 73 20 74 68 65 6e 20 70 61 72 73 65 64 20 61 73 20 43 20 63 6f 64 65 2e | .which.is.then.parsed.as.C.code. |
| 53fa0 | 0a 20 20 20 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 75 61 | .......</p>.......<p>.......Usua |
| 53fc0 | 6c 6c 79 20 79 6f 75 20 73 68 6f 75 6c 64 20 6f 6e 6c 79 20 68 61 76 65 20 6f 6e 65 20 3c 63 6f | lly.you.should.only.have.one.<co |
| 53fe0 | 64 65 20 63 6c 61 73 73 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- |
| 54000 | 62 75 69 6c 74 69 6e 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 | builtin">@cImport</span></code>. |
| 54020 | 69 6e 20 79 6f 75 72 20 65 6e 74 69 72 65 20 61 70 70 6c 69 63 61 74 69 6f 6e 2c 20 62 65 63 61 | in.your.entire.application,.beca |
| 54040 | 75 73 65 20 69 74 20 73 61 76 65 73 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 0a 20 20 20 20 20 20 | use.it.saves.the.compiler....... |
| 54060 | 66 72 6f 6d 20 69 6e 76 6f 6b 69 6e 67 20 63 6c 61 6e 67 20 6d 75 6c 74 69 70 6c 65 20 74 69 6d | from.invoking.clang.multiple.tim |
| 54080 | 65 73 2c 20 61 6e 64 20 70 72 65 76 65 6e 74 73 20 69 6e 6c 69 6e 65 20 66 75 6e 63 74 69 6f 6e | es,.and.prevents.inline.function |
| 540a0 | 73 20 66 72 6f 6d 20 62 65 69 6e 67 20 64 75 70 6c 69 63 61 74 65 64 2e 0a 20 20 20 20 20 20 3c | s.from.being.duplicated........< |
| 540c0 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 52 65 61 73 6f 6e 73 20 66 6f 72 20 | /p>.......<p>.......Reasons.for. |
| 540e0 | 68 61 76 69 6e 67 20 6d 75 6c 74 69 70 6c 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | having.multiple.<code.class="zig |
| 54100 | 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 |
| 54120 | 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 73 20 77 | port</span></code>.expressions.w |
| 54140 | 6f 75 6c 64 20 62 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 | ould.be:.......</p>.......<ul>.. |
| 54160 | 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 54 6f 20 61 76 6f 69 64 20 61 20 73 79 6d 62 6f 6c 20 63 | .........<li>To.avoid.a.symbol.c |
| 54180 | 6f 6c 6c 69 73 69 6f 6e 2c 20 66 6f 72 20 65 78 61 6d 70 6c 65 20 69 66 20 66 6f 6f 2e 68 20 61 | ollision,.for.example.if.foo.h.a |
| 541a0 | 6e 64 20 62 61 72 2e 68 20 62 6f 74 68 20 3c 63 6f 64 65 3e 23 64 65 66 69 6e 65 20 43 4f 4e 4e | nd.bar.h.both.<code>#define.CONN |
| 541c0 | 45 43 54 49 4f 4e 5f 43 4f 55 4e 54 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | ECTION_COUNT</code></li>........ |
| 541e0 | 20 3c 6c 69 3e 54 6f 20 61 6e 61 6c 79 7a 65 20 74 68 65 20 43 20 63 6f 64 65 20 77 69 74 68 20 | .<li>To.analyze.the.C.code.with. |
| 54200 | 64 69 66 66 65 72 65 6e 74 20 70 72 65 70 72 6f 63 65 73 73 6f 72 20 64 65 66 69 6e 65 73 3c 2f | different.preprocessor.defines</ |
| 54220 | 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 |
| 54240 | 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 49 6d 70 6f 72 74 2d | o:</p><ul>.<li><a.href="#Import- |
| 54260 | 66 72 6f 6d 2d 43 2d 48 65 61 64 65 72 2d 46 69 6c 65 22 3e 49 6d 70 6f 72 74 20 66 72 6f 6d 20 | from-C-Header-File">Import.from. |
| 54280 | 43 20 48 65 61 64 65 72 20 46 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 | C.Header.File</a></li>.<li><a.hr |
| 542a0 | 65 66 3d 22 23 63 49 6e 63 6c 75 64 65 22 3e 40 63 49 6e 63 6c 75 64 65 3c 2f 61 3e 3c 2f 6c 69 | ef="#cInclude">@cInclude</a></li |
| 542c0 | 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 44 65 66 69 6e 65 22 3e 40 63 44 65 66 69 6e | >.<li><a.href="#cDefine">@cDefin |
| 542e0 | 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 55 6e 64 65 66 22 | e</a></li>.<li><a.href="#cUndef" |
| 54300 | 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 20 0a | >@cUndef</a></li>.</ul>......... |
| 54320 | 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 63 49 6e 63 6c 75 64 65 22 3e 40 63 49 6e 63 6c 75 64 | ......<h2.id="cInclude">@cInclud |
| 54340 | 65 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 | e</h2>........<pre><code.class=" |
| 54360 | 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">@ |
| 54380 | 63 49 6e 63 6c 75 64 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | cInclude</span>(<span.class="tok |
| 543a0 | 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 70 61 74 68 3a 20 5b 5d 3c 73 70 | -kw">comptime</span>.path:.[]<sp |
| 543c0 | 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 3c 2f | an.class="tok-type">u8</span>)</ |
| 543e0 | 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 |
| 54400 | 20 66 75 6e 63 74 69 6f 6e 20 63 61 6e 20 6f 6e 6c 79 20 6f 63 63 75 72 20 69 6e 73 69 64 65 20 | .function.can.only.occur.inside. |
| 54420 | 3c 63 6f 64 65 20 63 6c 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 |
| 54440 | 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | ok-builtin">@cImport</span></cod |
| 54460 | 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 54 | e>........</p>.......<p>.......T |
| 54480 | 68 69 73 20 61 70 70 65 6e 64 73 20 3c 63 6f 64 65 3e 23 69 6e 63 6c 75 64 65 20 3c 24 70 61 74 | his.appends.<code>#include.<$pat |
| 544a0 | 68 3e 5c 6e 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 | h>\n</code>.to.the.<code.class=" |
| 544c0 | 7a 69 67 22 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 | zig">c_import</code>.......tempo |
| 544e0 | 72 61 72 79 20 62 75 66 66 65 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | rary.buffer........</p>.......<p |
| 54500 | 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=" |
| 54520 | 23 49 6d 70 6f 72 74 2d 66 72 6f 6d 2d 43 2d 48 65 61 64 65 72 2d 46 69 6c 65 22 3e 49 6d 70 6f | #Import-from-C-Header-File">Impo |
| 54540 | 72 74 20 66 72 6f 6d 20 43 20 48 65 61 64 65 72 20 46 69 6c 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c | rt.from.C.Header.File</a></li>.< |
| 54560 | 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</ |
| 54580 | 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 44 65 66 69 6e 65 22 3e 40 | a></li>.<li><a.href="#cDefine">@ |
| 545a0 | 63 44 65 66 69 6e 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 | cDefine</a></li>.<li><a.href="#c |
| 545c0 | 55 6e 64 65 66 22 3e 40 63 55 6e 64 65 66 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 | Undef">@cUndef</a></li>.</ul>... |
| 545e0 | 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 63 55 6e 64 65 66 22 3e 40 63 55 6e | ............<h2.id="cUndef">@cUn |
| 54600 | 64 65 66 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 | def</h2>........<pre><code.class |
| 54620 | 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" |
| 54640 | 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 6f 6b | >@cUndef</span>(<span.class="tok |
| 54660 | 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 |
| 54680 | 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 3c 2f | an.class="tok-type">u8</span>)</ |
| 546a0 | 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 |
| 546c0 | 20 66 75 6e 63 74 69 6f 6e 20 63 61 6e 20 6f 6e 6c 79 20 6f 63 63 75 72 20 69 6e 73 69 64 65 20 | .function.can.only.occur.inside. |
| 546e0 | 3c 63 6f 64 65 20 63 6c 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 |
| 54700 | 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | ok-builtin">@cImport</span></cod |
| 54720 | 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 54 | e>........</p>.......<p>.......T |
| 54740 | 68 69 73 20 61 70 70 65 6e 64 73 20 3c 63 6f 64 65 3e 23 75 6e 64 65 66 20 24 6e 61 6d 65 3c 2f | his.appends.<code>#undef.$name</ |
| 54760 | 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 3e 3c | code>.to.the.<code.class="zig">< |
| 54780 | 73 70 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 |
| 547a0 | 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 74 65 6d 70 6f 72 61 72 79 20 | t</span></code>.......temporary. |
| 547c0 | 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 20 | buffer........</p>.......<p>See. |
| 547e0 | 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 6f | also:</p><ul>.<li><a.href="#Impo |
| 54800 | 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 72 | rt-from-C-Header-File">Import.fr |
| 54820 | 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 61 | om.C.Header.File</a></li>.<li><a |
| 54840 | 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 6c | .href="#cImport">@cImport</a></l |
| 54860 | 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 69 | i>.<li><a.href="#cDefine">@cDefi |
| 54880 | 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 49 6e 63 6c 75 | ne</a></li>.<li><a.href="#cInclu |
| 548a0 | 64 65 22 3e 40 63 49 6e 63 6c 75 64 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 | de">@cInclude</a></li>.</ul>.... |
| 548c0 | 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 63 6c 7a 22 3e 40 63 6c 7a 3c 2f 68 32 | ...........<h2.id="clz">@clz</h2 |
| 548e0 | 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"> |
| 54900 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 6c 7a 3c 2f | <span.class="tok-builtin">@clz</ |
| 54920 | 73 70 61 6e 3e 28 78 3a 20 54 29 20 55 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 | span>(x:.T).U</code></pre>...... |
| 54940 | 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 6e 74 73 20 | .<p>.......This.function.counts. |
| 54960 | 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 6c 65 61 64 69 6e 67 20 7a 65 72 6f 65 73 20 69 6e 20 | the.number.of.leading.zeroes.in. |
| 54980 | 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 77 68 69 63 68 | <code.class="zig">x</code>.which |
| 549a0 | 20 69 73 20 61 6e 20 69 6e 74 65 67 65 72 0a 20 20 20 20 20 20 20 20 20 20 74 79 70 65 20 3c 63 | .is.an.integer...........type.<c |
| 549c0 | 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 20 20 20 20 20 | ode.class="zig">T</code>........ |
| 549e0 | 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 74 75 72 6e 20 | </p>.......<p>.......The.return. |
| 54a00 | 74 79 70 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 55 3c 2f 63 6f 64 65 3e 20 | type.<code.class="zig">U</code>. |
| 54a20 | 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 20 | is.an.unsigned.integer.with.the. |
| 54a40 | 6d 69 6e 69 6d 75 6d 20 6e 75 6d 62 65 72 0a 20 20 20 20 20 20 20 20 20 20 6f 66 20 62 69 74 73 | minimum.number...........of.bits |
| 54a60 | 20 74 68 61 74 20 63 61 6e 20 72 65 70 72 65 73 65 6e 74 20 74 68 65 20 76 61 6c 75 65 20 3c 63 | .that.can.represent.the.value.<c |
| 54a80 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 54 2e 62 69 74 5f 63 6f 75 6e 74 3c 2f 63 6f 64 | ode.class="zig">T.bit_count</cod |
| 54aa0 | 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 49 | e>........</p>.......<p>.......I |
| 54ac0 | 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. |
| 54ae0 | 7a 65 72 6f 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 | zero,.<code.class="zig"><span.cl |
| 54b00 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 6c 7a 3c 2f 73 70 61 6e 3e 3c 2f 63 | ass="tok-builtin">@clz</span></c |
| 54b20 | 6f 64 65 3e 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 54 | ode>.returns.<code.class="zig">T |
| 54b40 | 2e 62 69 74 5f 63 6f 75 6e 74 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | .bit_count</code>........</p>... |
| 54b60 | 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. |
| 54b80 | 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 61 | href="#ctz">@ctz</a></li>.<li><a |
| 54ba0 | 20 68 72 65 66 3d 22 23 70 6f 70 43 6f 75 6e 74 22 3e 40 70 6f 70 43 6f 75 6e 74 3c 2f 61 3e 3c | .href="#popCount">@popCount</a>< |
| 54bc0 | 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= |
| 54be0 | 22 63 6d 70 78 63 68 67 53 74 72 6f 6e 67 22 3e 40 63 6d 70 78 63 68 67 53 74 72 6f 6e 67 3c 2f | "cmpxchgStrong">@cmpxchgStrong</ |
| 54c00 | 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 |
| 54c20 | 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 6d 70 | "><span.class="tok-builtin">@cmp |
| 54c40 | 78 63 68 67 53 74 72 6f 6e 67 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | xchgStrong</span>(<span.class="t |
| 54c60 | 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. |
| 54c80 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 70 74 | class="tok-type">type</span>,.pt |
| 54ca0 | 72 3a 20 2a 54 2c 20 65 78 70 65 63 74 65 64 5f 76 61 6c 75 65 3a 20 54 2c 20 6e 65 77 5f 76 61 | r:.*T,.expected_value:.T,.new_va |
| 54cc0 | 6c 75 65 3a 20 54 2c 20 73 75 63 63 65 73 73 5f 6f 72 64 65 72 3a 20 41 74 6f 6d 69 63 4f 72 64 | lue:.T,.success_order:.AtomicOrd |
| 54ce0 | 65 72 2c 20 66 61 69 6c 5f 6f 72 64 65 72 3a 20 41 74 6f 6d 69 63 4f 72 64 65 72 29 20 3f 54 3c | er,.fail_order:.AtomicOrder).?T< |
| 54d00 | 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 |
| 54d20 | 73 20 66 75 6e 63 74 69 6f 6e 20 70 65 72 66 6f 72 6d 73 20 61 20 73 74 72 6f 6e 67 20 61 74 6f | s.function.performs.a.strong.ato |
| 54d40 | 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 74 69 6f 6e 2e 20 | mic.compare.exchange.operation.. |
| 54d60 | 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 73 20 63 6f 64 65 | It's.the.equivalent.of.this.code |
| 54d80 | 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 20 20 20 3c 2f 70 | ,.......except.atomic:.......</p |
| 54da0 | 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">< |
| 54dc0 | 73 70 61 6e 20 63 6c 61 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 |
| 54de0 | 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 53 74 72 6f 6e 67 | pan.class="tok-fn">cmpxchgStrong |
| 54e00 | 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 61 73 73 3d | ButNotAtomic</span>(<span.class= |
| 54e20 | 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 |
| 54e40 | 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>,. |
| 54e60 | 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 6e 65 77 5f | ptr:.*T,.expected_value:.T,.new_ |
| 54e80 | 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 73 73 3d 22 | value:.T).?T.{.....<span.class=" |
| 54ea0 | 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 75 65 20 3d | tok-kw">const</span>.old_value.= |
| 54ec0 | 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 2d 6b 77 22 | .ptr.*;.....<span.class="tok-kw" |
| 54ee0 | 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 65 63 74 65 | >if</span>.(old_value.==.expecte |
| 54f00 | 64 5f 76 61 6c 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 | d_value).{.........ptr.*.=.new_v |
| 54f20 | 61 6c 75 65 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | alue;.........<span.class="tok-k |
| 54f40 | 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 |
| 54f60 | 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 70 61 6e | k-null">null</span>;.....}.<span |
| 54f80 | 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>.{... |
| 54fa0 | 20 20 20 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 |
| 54fc0 | 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 63 6f 64 | n</span>.old_value;.....}.}</cod |
| 54fe0 | 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 6f 75 20 | e></pre>.......<p>.......If.you. |
| 55000 | 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 3c 61 20 | are.using.cmpxchg.in.a.loop,.<a. |
| 55020 | 68 72 65 66 3d 22 23 63 6d 70 78 63 68 67 57 65 61 6b 22 3e 40 63 6d 70 78 63 68 67 57 65 61 6b | href="#cmpxchgWeak">@cmpxchgWeak |
| 55040 | 3c 2f 61 3e 20 69 73 20 74 68 65 20 62 65 74 74 65 72 20 63 68 6f 69 63 65 2c 20 62 65 63 61 75 | </a>.is.the.better.choice,.becau |
| 55060 | 73 65 20 69 74 20 63 61 6e 20 62 65 20 69 6d 70 6c 65 6d 65 6e 74 65 64 0a 20 20 20 20 20 20 6d | se.it.can.be.implemented.......m |
| 55080 | 6f 72 65 20 65 66 66 69 63 69 65 6e 74 6c 79 20 69 6e 20 6d 61 63 68 69 6e 65 20 69 6e 73 74 72 | ore.efficiently.in.machine.instr |
| 550a0 | 75 63 74 69 6f 6e 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | uctions........</p>.......<p>... |
| 550c0 | 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 41 74 6f 6d 69 63 4f 72 64 65 | ....<code.class="zig">AtomicOrde |
| 550e0 | 72 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 20 66 6f 75 6e 64 20 77 69 74 68 20 3c 63 6f 64 65 | r</code>.can.be.found.with.<code |
| 55100 | 20 63 6c 61 73 73 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 |
| 55120 | 69 6c 74 69 6e 22 3e 40 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 |
| 55140 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 75 69 6c 74 69 6e 26 71 75 6f 74 3b 3c | s="tok-str">"builtin"< |
| 55160 | 2f 73 70 61 6e 3e 29 2e 41 74 6f 6d 69 63 4f 72 64 65 72 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 | /span>).AtomicOrder</code>...... |
| 55180 | 20 20 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 | ..</p>.......<p><code.class="zig |
| 551a0 | 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 70 | "><span.class="tok-builtin">@typ |
| 551c0 | 65 4f 66 3c 2f 73 70 61 6e 3e 28 70 74 72 29 2e 61 6c 69 67 6e 6d 65 6e 74 3c 2f 63 6f 64 65 3e | eOf</span>(ptr).alignment</code> |
| 551e0 | 20 6d 75 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 | .must.be.<code.class="zig">>= |
| 55200 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 69 7a 65 | .<span.class="tok-builtin">@size |
| 55220 | 4f 66 3c 2f 73 70 61 6e 3e 28 54 29 2e 3c 2f 63 6f 64 65 3e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | Of</span>(T).</code></p>.......< |
| 55240 | 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= |
| 55260 | 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 72 | "#Compile-Variables">Compile.Var |
| 55280 | 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 3d 22 23 63 6d | iables</a></li>.<li><a.href="#cm |
| 552a0 | 70 78 63 68 67 57 65 61 6b 22 3e 63 6d 70 78 63 68 67 57 65 61 6b 3c 2f 61 3e 3c 2f 6c 69 3e 0a | pxchgWeak">cmpxchgWeak</a></li>. |
| 552c0 | 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 63 6d 70 78 | </ul>...............<h2.id="cmpx |
| 552e0 | 63 68 67 57 65 61 6b 22 3e 40 63 6d 70 78 63 68 67 57 65 61 6b 3c 2f 68 32 3e 0a 0a 20 20 20 20 | chgWeak">@cmpxchgWeak</h2>...... |
| 55300 | 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 |
| 55320 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 6d 70 78 63 68 67 57 65 61 6b 3c | lass="tok-builtin">@cmpxchgWeak< |
| 55340 | 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 |
| 55360 | 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- |
| 55380 | 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 70 74 72 3a 20 2a 54 2c 20 65 78 70 65 | type">type</span>,.ptr:.*T,.expe |
| 553a0 | 63 74 65 64 5f 76 61 6c 75 65 3a 20 54 2c 20 6e 65 77 5f 76 61 6c 75 65 3a 20 54 2c 20 73 75 63 | cted_value:.T,.new_value:.T,.suc |
| 553c0 | 63 65 73 73 5f 6f 72 64 65 72 3a 20 41 74 6f 6d 69 63 4f 72 64 65 72 2c 20 66 61 69 6c 5f 6f 72 | cess_order:.AtomicOrder,.fail_or |
| 553e0 | 64 65 72 3a 20 41 74 6f 6d 69 63 4f 72 64 65 72 29 20 3f 54 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | der:.AtomicOrder).?T</code></pre |
| 55400 | 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. |
| 55420 | 70 65 72 66 6f 72 6d 73 20 61 20 77 65 61 6b 20 61 74 6f 6d 69 63 20 63 6f 6d 70 61 72 65 20 65 | performs.a.weak.atomic.compare.e |
| 55440 | 78 63 68 61 6e 67 65 20 6f 70 65 72 61 74 69 6f 6e 2e 20 49 74 27 73 20 74 68 65 20 65 71 75 69 | xchange.operation..It's.the.equi |
| 55460 | 76 61 6c 65 6e 74 20 6f 66 20 74 68 69 73 20 63 6f 64 65 2c 0a 20 20 20 20 20 20 65 78 63 65 70 | valent.of.this.code,.......excep |
| 55480 | 74 20 61 74 6f 6d 69 63 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e | t.atomic:.......</p>.......<pre> |
| 554a0 | 3c 63 6f 64 65 20 63 6c 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 |
| 554c0 | 6f 6b 2d 6b 77 22 3e 66 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 |
| 554e0 | 6b 2d 66 6e 22 3e 63 6d 70 78 63 68 67 57 65 61 6b 42 75 74 4e 6f 74 41 74 6f 6d 69 63 3c 2f 73 | k-fn">cmpxchgWeakButNotAtomic</s |
| 55500 | 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 |
| 55520 | 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 |
| 55540 | 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 70 74 72 3a 20 2a 54 2c 20 65 78 70 65 63 74 | pe">type</span>,.ptr:.*T,.expect |
| 55560 | 65 64 5f 76 61 6c 75 65 3a 20 54 2c 20 6e 65 77 5f 76 61 6c 75 65 3a 20 54 29 20 3f 54 20 7b 0a | ed_value:.T,.new_value:.T).?T.{. |
| 55580 | 20 20 20 20 3c 73 70 61 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</ |
| 555a0 | 73 70 61 6e 3e 20 6f 6c 64 5f 76 61 6c 75 65 20 3d 20 70 74 72 2e 2a 3b 0a 20 20 20 20 3c 73 70 | span>.old_value.=.ptr.*;.....<sp |
| 555c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 6f 6c 64 | an.class="tok-kw">if</span>.(old |
| 555e0 | 5f 76 61 6c 75 65 20 3d 3d 20 65 78 70 65 63 74 65 64 5f 76 61 6c 75 65 20 3c 73 70 61 6e 20 63 | _value.==.expected_value.<span.c |
| 55600 | 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 75 73 75 61 6c 6c 79 | lass="tok-kw">and</span>.usually |
| 55620 | 54 72 75 65 42 75 74 53 6f 6d 65 74 69 6d 65 73 46 61 6c 73 65 28 29 29 20 7b 0a 20 20 20 20 20 | TrueButSometimesFalse()).{...... |
| 55640 | 20 20 20 70 74 72 2e 2a 20 3d 20 6e 65 77 5f 76 61 6c 75 65 3b 0a 20 20 20 20 20 20 20 20 3c 73 | ...ptr.*.=.new_value;.........<s |
| 55660 | 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> |
| 55680 | 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 |
| 556a0 | 61 6e 3e 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | an>;.....}.<span.class="tok-kw"> |
| 556c0 | 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | else</span>.{.........<span.clas |
| 556e0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 6f 6c 64 5f 76 61 6c | s="tok-kw">return</span>.old_val |
| 55700 | 75 65 3b 0a 20 20 20 20 7d 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c | ue;.....}.}</code></pre>.......< |
| 55720 | 70 3e 0a 20 20 20 20 20 20 49 66 20 79 6f 75 20 61 72 65 20 75 73 69 6e 67 20 63 6d 70 78 63 68 | p>.......If.you.are.using.cmpxch |
| 55740 | 67 20 69 6e 20 61 20 6c 6f 6f 70 2c 20 74 68 65 20 73 70 6f 72 61 64 69 63 20 66 61 69 6c 75 72 | g.in.a.loop,.the.sporadic.failur |
| 55760 | 65 20 77 69 6c 6c 20 62 65 20 6e 6f 20 70 72 6f 62 6c 65 6d 2c 20 61 6e 64 20 3c 63 6f 64 65 20 | e.will.be.no.problem,.and.<code. |
| 55780 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 63 6d 70 78 63 68 67 57 65 61 6b 3c 2f 63 6f 64 65 3e 0a 20 | class="zig">cmpxchgWeak</code>.. |
| 557a0 | 20 20 20 20 20 69 73 20 74 68 65 20 62 65 74 74 65 72 20 63 68 6f 69 63 65 2c 20 62 65 63 61 75 | .....is.the.better.choice,.becau |
| 557c0 | 73 65 20 69 74 20 63 61 6e 20 62 65 20 69 6d 70 6c 65 6d 65 6e 74 65 64 20 6d 6f 72 65 20 65 66 | se.it.can.be.implemented.more.ef |
| 557e0 | 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 6e | ficiently.in.machine.instruction |
| 55800 | 73 2e 0a 20 20 20 20 20 20 48 6f 77 65 76 65 72 20 69 66 20 79 6f 75 20 6e 65 65 64 20 61 20 73 | s........However.if.you.need.a.s |
| 55820 | 74 72 6f 6e 67 65 72 20 67 75 61 72 61 6e 74 65 65 2c 20 75 73 65 20 3c 61 20 68 72 65 66 3d 22 | tronger.guarantee,.use.<a.href=" |
| 55840 | 23 63 6d 70 78 63 68 67 53 74 72 6f 6e 67 22 3e 40 63 6d 70 78 63 68 67 53 74 72 6f 6e 67 3c 2f | #cmpxchgStrong">@cmpxchgStrong</ |
| 55860 | 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c | a>........</p>.......<p>.......< |
| 55880 | 63 6f 64 65 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 | code.class="zig">AtomicOrder</co |
| 558a0 | 64 65 3e 20 63 61 6e 20 62 65 20 66 6f 75 6e 64 20 77 69 74 68 20 3c 63 6f 64 65 20 63 6c 61 73 | de>.can.be.found.with.<code.clas |
| 558c0 | 73 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 |
| 558e0 | 22 3e 40 69 6d 70 6f 72 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 |
| 55900 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 75 69 6c 74 69 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | k-str">"builtin"</span |
| 55920 | 3e 29 2e 41 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 | >).AtomicOrder</code>........</p |
| 55940 | 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 3c 73 70 | >.......<p><code.class="zig"><sp |
| 55960 | 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 4f 66 3c 2f | an.class="tok-builtin">@typeOf</ |
| 55980 | 73 70 61 6e 3e 28 70 74 72 29 2e 61 6c 69 67 6e 6d 65 6e 74 3c 2f 63 6f 64 65 3e 20 6d 75 73 74 | span>(ptr).alignment</code>.must |
| 559a0 | 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 70 61 | .be.<code.class="zig">>=.<spa |
| 559c0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 69 7a 65 4f 66 3c 2f 73 | n.class="tok-builtin">@sizeOf</s |
| 559e0 | 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 65 65 | pan>(T).</code></p>.......<p>See |
| 55a00 | 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 6f 6d | .also:</p><ul>.<li><a.href="#Com |
| 55a20 | 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 6c 65 | pile-Variables">Compile.Variable |
| 55a40 | 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 68 67 | s</a></li>.<li><a.href="#cmpxchg |
| 55a60 | 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 0a 3c | Strong">cmpxchgStrong</a></li>.< |
| 55a80 | 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 63 6f 6d 70 69 | /ul>...............<h2.id="compi |
| 55aa0 | 6c 65 45 72 72 6f 72 22 3e 40 63 6f 6d 70 69 6c 65 45 72 72 6f 72 3c 2f 68 32 3e 0a 0a 20 20 20 | leError">@compileError</h2>..... |
| 55ac0 | 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. |
| 55ae0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 6f 6d 70 69 6c 65 45 72 72 6f | class="tok-builtin">@compileErro |
| 55b00 | 72 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | r</span>(<span.class="tok-kw">co |
| 55b20 | 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 6d 73 67 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 | mptime</span>.msg:.[]<span.class |
| 55b40 | 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 70 | ="tok-type">u8</span>)</code></p |
| 55b60 | 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f | re>.......<p>.......This.functio |
| 55b80 | 6e 2c 20 77 68 65 6e 20 73 65 6d 61 6e 74 69 63 61 6c 6c 79 20 61 6e 61 6c 79 7a 65 64 2c 20 63 | n,.when.semantically.analyzed,.c |
| 55ba0 | 61 75 73 65 73 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 77 69 74 68 20 74 68 65 0a 20 | auses.a.compile.error.with.the.. |
| 55bc0 | 20 20 20 20 20 6d 65 73 73 61 67 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6d | .....message.<code.class="zig">m |
| 55be0 | 73 67 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a | sg</code>........</p>.......<p>. |
| 55c00 | 20 20 20 20 20 20 54 68 65 72 65 20 61 72 65 20 73 65 76 65 72 61 6c 20 77 61 79 73 20 74 68 61 | ......There.are.several.ways.tha |
| 55c20 | 74 20 63 6f 64 65 20 61 76 6f 69 64 73 20 62 65 69 6e 67 20 73 65 6d 61 6e 74 69 63 61 6c 6c 79 | t.code.avoids.being.semantically |
| 55c40 | 20 63 68 65 63 6b 65 64 2c 20 73 75 63 68 20 61 73 0a 20 20 20 20 20 20 75 73 69 6e 67 20 3c 63 | .checked,.such.as.......using.<c |
| 55c60 | 6f 64 65 20 63 6c 61 73 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 |
| 55c80 | 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6f 72 20 3c 63 6f 64 65 20 63 | -kw">if</span></code>.or.<code.c |
| 55ca0 | 6c 61 73 73 3d 22 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"> |
| 55cc0 | 73 77 69 74 63 68 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 69 74 68 20 63 6f 6d 70 69 6c | switch</span></code>.with.compil |
| 55ce0 | 65 20 74 69 6d 65 20 63 6f 6e 73 74 61 6e 74 73 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | e.time.constants,............... |
| 55d00 | 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 6c 61 73 | and.<code.class="zig"><span.clas |
| 55d20 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | s="tok-kw">comptime</span></code |
| 55d40 | 3e 20 66 75 6e 63 74 69 6f 6e 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 | >.functions........</p>......... |
| 55d60 | 20 20 20 20 20 3c 68 32 20 69 64 3d 22 63 6f 6d 70 69 6c 65 4c 6f 67 22 3e 40 63 6f 6d 70 69 6c | .....<h2.id="compileLog">@compil |
| 55d80 | 65 4c 6f 67 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 | eLog</h2>........<pre><code.clas |
| 55da0 | 73 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 |
| 55dc0 | 22 3e 40 63 6f 6d 70 69 6c 65 4c 6f 67 3c 2f 73 70 61 6e 3e 28 61 72 67 73 3a 20 2e 2e 2e 29 3c | ">@compileLog</span>(args:....)< |
| 55de0 | 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 |
| 55e00 | 73 20 66 75 6e 63 74 69 6f 6e 20 70 72 69 6e 74 73 20 74 68 65 20 61 72 67 75 6d 65 6e 74 73 20 | s.function.prints.the.arguments. |
| 55e20 | 70 61 73 73 65 64 20 74 6f 20 69 74 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 2e 0a 20 20 | passed.to.it.at.compile-time.... |
| 55e40 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 6f 20 70 72 65 76 | ....</p>.......<p>.......To.prev |
| 55e60 | 65 6e 74 20 61 63 63 69 64 65 6e 74 61 6c 6c 79 20 6c 65 61 76 69 6e 67 20 63 6f 6d 70 69 6c 65 | ent.accidentally.leaving.compile |
| 55e80 | 20 6c 6f 67 20 73 74 61 74 65 6d 65 6e 74 73 20 69 6e 20 61 20 63 6f 64 65 62 61 73 65 2c 0a 20 | .log.statements.in.a.codebase,.. |
| 55ea0 | 20 20 20 20 20 61 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 65 72 72 6f 72 20 69 73 20 61 64 64 65 | .....a.compilation.error.is.adde |
| 55ec0 | 64 20 74 6f 20 74 68 65 20 62 75 69 6c 64 2c 20 70 6f 69 6e 74 69 6e 67 20 74 6f 20 74 68 65 20 | d.to.the.build,.pointing.to.the. |
| 55ee0 | 63 6f 6d 70 69 6c 65 0a 20 20 20 20 20 20 6c 6f 67 20 73 74 61 74 65 6d 65 6e 74 2e 20 54 68 69 | compile.......log.statement..Thi |
| 55f00 | 73 20 65 72 72 6f 72 20 70 72 65 76 65 6e 74 73 20 63 6f 64 65 20 66 72 6f 6d 20 62 65 69 6e 67 | s.error.prevents.code.from.being |
| 55f20 | 20 67 65 6e 65 72 61 74 65 64 2c 20 62 75 74 0a 20 20 20 20 20 20 64 6f 65 73 20 6e 6f 74 20 6f | .generated,.but.......does.not.o |
| 55f40 | 74 68 65 72 77 69 73 65 20 69 6e 74 65 72 66 65 72 65 20 77 69 74 68 20 61 6e 61 6c 79 73 69 73 | therwise.interfere.with.analysis |
| 55f60 | 2e 0a 20 20 20 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 |
| 55f80 | 73 20 66 75 6e 63 74 69 6f 6e 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 64 6f 20 22 70 72 | s.function.can.be.used.to.do."pr |
| 55fa0 | 69 6e 74 66 20 64 65 62 75 67 67 69 6e 67 22 20 6f 6e 0a 20 20 20 20 20 20 63 6f 6d 70 69 6c 65 | intf.debugging".on.......compile |
| 55fc0 | 2d 74 69 6d 65 20 65 78 65 63 75 74 69 6e 67 20 63 6f 64 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | -time.executing.code........</p> |
| 55fe0 | 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< |
| 56000 | 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. |
| 56020 | 63 6c 61 73 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 61 72 6e | class="tok-kw">const</span>.warn |
| 56040 | 20 3d 20 3c 73 70 61 6e 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 |
| 56060 | 70 6f 72 74 3c 2f 73 70 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 |
| 56080 | 22 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. |
| 560a0 | 77 61 72 6e 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 | warn;..<span.class="tok-kw">cons |
| 560c0 | 74 3c 2f 73 70 61 6e 3e 20 6e 75 6d 31 20 3d 20 62 6c 6b 3a 20 7b 0a 20 20 20 20 3c 73 70 61 6e | t</span>.num1.=.blk:.{.....<span |
| 560e0 | 20 63 6c 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 | .class="tok-kw">var</span>.val1: |
| 56100 | 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 |
| 56120 | 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 39 39 | n>.=.<span.class="tok-number">99 |
| 56140 | 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 75 | </span>;.....<span.class="tok-bu |
| 56160 | 69 6c 74 69 6e 22 3e 40 63 6f 6d 70 69 6c 65 4c 6f 67 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 | iltin">@compileLog</span>(<span. |
| 56180 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 6f 6d 70 74 69 6d 65 20 76 | class="tok-str">"comptime.v |
| 561a0 | 61 6c 31 20 3d 20 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 76 61 6c 31 29 3b 20 0a 20 20 20 | al1.=."</span>,.val1);..... |
| 561c0 | 20 76 61 6c 31 20 3d 20 76 61 6c 31 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .val1.=.val1.+.<span.class="tok- |
| 561e0 | 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 |
| 56200 | 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 76 61 6c | s="tok-kw">break</span>.:blk.val |
| 56220 | 31 3b 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 74 65 73 74 | 1;.};..<span.class="tok-kw">test |
| 56240 | 3c 2f 73 70 61 6e 3e 20 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 |
| 56260 | 75 6f 74 3b 6d 61 69 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 | uot;main"</span>.{.....<spa |
| 56280 | 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 4c 6f | n.class="tok-builtin">@compileLo |
| 562a0 | 67 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 | g</span>(<span.class="tok-str">& |
| 562c0 | 71 75 6f 74 3b 63 6f 6d 70 74 69 6d 65 20 69 6e 20 6d 61 69 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 | quot;comptime.in.main"</spa |
| 562e0 | 6e 3e 29 3b 20 0a 0a 20 20 20 20 77 61 72 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | n>);.......warn(<span.class="tok |
| 56300 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 52 75 6e 74 69 6d 65 20 69 6e 20 6d 61 69 6e 2c 20 6e 75 6d | -str">"Runtime.in.main,.num |
| 56320 | 31 20 3d 20 7b 7d 2e 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 6e 75 6d 31 29 3b 0a 7d | 1.=.{}.\n"</span>,.num1);.} |
| 56340 | 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 |
| 56360 | 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 7c 20 26 71 75 6f | hell">$.zig.test.test.zig.|.&quo |
| 56380 | 74 3b 63 6f 6d 70 74 69 6d 65 20 69 6e 20 6d 61 69 6e 26 71 75 6f 74 3b 0a 7c 20 26 71 75 6f 74 | t;comptime.in.main".|." |
| 563a0 | 3b 63 6f 6d 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 | ;comptime.val1.=.",.99.<spa |
| 563c0 | 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 | n.class="t0_1">/home/andy/dev/zi |
| 563e0 | 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 35 3a 20 3c 2f 73 70 | g/docgen_tmp/test.zig:11:5:.</sp |
| 56400 | 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 3c 2f 73 | an><span.class="t31_1">error:</s |
| 56420 | 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 20 66 6f 75 6e 64 20 63 6f | pan><span.class="t0_1">.found.co |
| 56440 | 6d 70 69 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 | mpile.log.statement</span>.....@ |
| 56460 | 63 6f 6d 70 69 6c 65 4c 6f 67 28 26 71 75 6f 74 3b 63 6f 6d 70 74 69 6d 65 20 69 6e 20 6d 61 69 | compileLog("comptime.in.mai |
| 56480 | 6e 26 71 75 6f 74 3b 29 3b 20 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f | n");......<span.class="t32_ |
| 564a0 | 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 3e 2f | 1">^</span>.<span.class="t0_1">/ |
| 564c0 | 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 | home/andy/dev/zig/docgen_tmp/tes |
| 564e0 | 74 2e 7a 69 67 3a 35 3a 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | t.zig:5:5:.</span><span.class="t |
| 56500 | 33 31 5f 31 22 3e 65 72 72 6f 72 3a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | 31_1">error:</span><span.class=" |
| 56520 | 74 30 5f 31 22 3e 20 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 | t0_1">.found.compile.log.stateme |
| 56540 | 6e 74 3c 2f 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 | nt</span>.....@compileLog(" |
| 56560 | 63 6f 6d 70 74 69 6d 65 20 76 61 6c 31 20 3d 20 26 71 75 6f 74 3b 2c 20 76 61 6c 31 29 3b 20 0a | comptime.val1.=.",.val1);.. |
| 56580 | 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> |
| 565a0 | 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | .</code></pre>........</p>...... |
| 565c0 | 20 3c 70 3e 0a 20 20 20 20 20 20 77 69 6c 6c 20 6f 75 70 75 74 3a 0a 20 20 20 20 20 20 3c 2f 70 | .<p>.......will.ouput:.......</p |
| 565e0 | 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 61 6c 6c 20 3c 63 6f 64 65 20 63 | >.......<p>.......If.all.<code.c |
| 56600 | 6c 61 73 73 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 |
| 56620 | 74 69 6e 22 3e 40 63 6f 6d 70 69 6c 65 4c 6f 67 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 63 | tin">@compileLog</span></code>.c |
| 56640 | 61 6c 6c 73 20 61 72 65 20 72 65 6d 6f 76 65 64 20 6f 72 20 0a 20 20 20 20 20 20 6e 6f 74 20 65 | alls.are.removed.or........not.e |
| 56660 | 6e 63 6f 75 6e 74 65 72 65 64 20 62 79 20 61 6e 61 6c 79 73 69 73 2c 20 74 68 65 0a 20 20 20 20 | ncountered.by.analysis,.the..... |
| 56680 | 20 20 70 72 6f 67 72 61 6d 20 63 6f 6d 70 69 6c 65 73 20 73 75 63 63 65 73 73 66 75 6c 6c 79 20 | ..program.compiles.successfully. |
| 566a0 | 61 6e 64 20 74 68 65 20 67 65 6e 65 72 61 74 65 64 20 65 78 65 63 75 74 61 62 6c 65 20 70 72 69 | and.the.generated.executable.pri |
| 566c0 | 6e 74 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 20 20 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 | nts:.......</p>.........<p.class |
| 566e0 | 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 |
| 56700 | 6c 61 73 73 3d 22 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"> |
| 56720 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 77 61 72 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | const</span>.warn.=.<span.class= |
| 56740 | 22 74 6f 6b 2d 62 75 69 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 |
| 56760 | 61 6e 20 63 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 |
| 56780 | 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 77 61 72 6e 3b 0a 0a 3c 73 70 61 6e 20 63 6c | t;</span>).debug.warn;..<span.cl |
| 567a0 | 61 73 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 31 20 3d | ass="tok-kw">const</span>.num1.= |
| 567c0 | 20 62 6c 6b 3a 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | .blk:.{.....<span.class="tok-kw" |
| 567e0 | 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 76 61 6c 31 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | >var</span>.val1:.<span.class="t |
| 56800 | 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 |
| 56820 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 39 39 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 76 61 | s="tok-number">99</span>;.....va |
| 56840 | 6c 31 20 3d 20 76 61 6c 31 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | l1.=.val1.+.<span.class="tok-num |
| 56860 | 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=" |
| 56880 | 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 76 61 6c 31 3b 0a | tok-kw">break</span>.:blk.val1;. |
| 568a0 | 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 |
| 568c0 | 70 61 6e 3e 20 3c 73 70 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">" |
| 568e0 | 3b 6d 61 69 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 77 61 72 6e 28 3c 73 | ;main"</span>.{.....warn(<s |
| 56900 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 52 75 6e 74 69 6d | pan.class="tok-str">"Runtim |
| 56920 | 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 3c 2f 73 | e.in.main,.num1.=.{}.\n"</s |
| 56940 | 70 61 6e 3e 2c 20 6e 75 6d 31 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e | pan>,.num1);.}</code></pre><pre> |
| 56960 | 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 |
| 56980 | 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 31 2f 31 20 6d 61 69 6e 2e 2e 2e 52 75 6e 74 69 6d 65 20 | est.zig.Test.1/1.main...Runtime. |
| 569a0 | 69 6e 20 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 74 65 73 74 | in.main,.num1.=.100..OK.All.test |
| 569c0 | 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>......... |
| 569e0 | 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 63 74 7a 22 3e 40 63 74 7a 3c 2f 68 32 3e 0a 0a 20 20 | ......<h2.id="ctz">@ctz</h2>.... |
| 56a00 | 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 |
| 56a20 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 74 7a 3c 2f 73 70 61 6e 3e | .class="tok-builtin">@ctz</span> |
| 56a40 | 28 78 3a 20 54 29 20 55 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a | (x:.T).U</code></pre>.......<p>. |
| 56a60 | 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 63 6f 75 6e 74 73 20 74 68 65 20 6e | ......This.function.counts.the.n |
| 56a80 | 75 6d 62 65 72 20 6f 66 20 74 72 61 69 6c 69 6e 67 20 7a 65 72 6f 65 73 20 69 6e 20 3c 63 6f 64 | umber.of.trailing.zeroes.in.<cod |
| 56aa0 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 78 3c 2f 63 6f 64 65 3e 20 77 68 69 63 68 20 69 73 20 | e.class="zig">x</code>.which.is. |
| 56ac0 | 61 6e 20 69 6e 74 65 67 65 72 0a 20 20 20 20 20 20 20 20 20 20 74 79 70 65 20 3c 63 6f 64 65 20 | an.integer...........type.<code. |
| 56ae0 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 54 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | class="zig">T</code>........</p> |
| 56b00 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 | .......<p>.......The.return.type |
| 56b20 | 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 55 3c 2f 63 6f 64 65 3e 20 69 73 20 61 | .<code.class="zig">U</code>.is.a |
| 56b40 | 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 69 | n.unsigned.integer.with.the.mini |
| 56b60 | 6d 75 6d 20 6e 75 6d 62 65 72 0a 20 20 20 20 20 20 20 20 20 20 6f 66 20 62 69 74 73 20 74 68 61 | mum.number...........of.bits.tha |
| 56b80 | 74 20 63 61 6e 20 72 65 70 72 65 73 65 6e 74 20 74 68 65 20 76 61 6c 75 65 20 3c 63 6f 64 65 20 | t.can.represent.the.value.<code. |
| 56ba0 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 54 2e 62 69 74 5f 63 6f 75 6e 74 3c 2f 63 6f 64 65 3e 2e 0a | class="zig">T.bit_count</code>.. |
| 56bc0 | 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 3c 63 | ......</p>.......<p>.......If.<c |
| 56be0 | 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 7a 65 72 6f | ode.class="zig">x</code>.is.zero |
| 56c00 | 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ,.<code.class="zig"><span.class= |
| 56c20 | 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 3c 2f 63 6f 64 65 3e | "tok-builtin">@ctz</span></code> |
| 56c40 | 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 54 2e 62 69 74 | .returns.<code.class="zig">T.bit |
| 56c60 | 5f 63 6f 75 6e 74 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | _count</code>........</p>....... |
| 56c80 | 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 |
| 56ca0 | 3d 22 23 63 6c 7a 22 3e 40 63 6c 7a 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 | ="#clz">@clz</a></li>.<li><a.hre |
| 56cc0 | 66 3d 22 23 70 6f 70 43 6f 75 6e 74 22 3e 40 70 6f 70 43 6f 75 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e | f="#popCount">@popCount</a></li> |
| 56ce0 | 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 64 69 76 | .</ul>...............<h2.id="div |
| 56d00 | 45 78 61 63 74 22 3e 40 64 69 76 45 78 61 63 74 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 | Exact">@divExact</h2>........<pr |
| 56d20 | 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= |
| 56d40 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 64 69 76 45 78 61 63 74 3c 2f 73 70 61 6e 3e 28 6e | "tok-builtin">@divExact</span>(n |
| 56d60 | 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 2f | umerator:.T,.denominator:.T).T</ |
| 56d80 | 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 63 | code></pre>.......<p>.......Exac |
| 56da0 | 74 20 64 69 76 69 73 69 6f 6e 2e 20 43 61 6c 6c 65 72 20 67 75 61 72 61 6e 74 65 65 73 20 3c 63 | t.division..Caller.guarantees.<c |
| 56dc0 | 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 21 3d 20 3c | ode.class="zig">denominator.!=.< |
| 56de0 | 73 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> |
| 56e00 | 3c 2f 63 6f 64 65 3e 20 61 6e 64 0a 20 20 20 20 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 | </code>.and...........<code.clas |
| 56e20 | 73 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 |
| 56e40 | 22 3e 40 64 69 76 54 72 75 6e 63 3c 2f 73 70 61 6e 3e 28 6e 75 6d 65 72 61 74 6f 72 2c 20 64 65 | ">@divTrunc</span>(numerator,.de |
| 56e60 | 6e 6f 6d 69 6e 61 74 6f 72 29 20 2a 20 64 65 6e 6f 6d 69 6e 61 74 6f 72 20 3d 3d 20 6e 75 6d 65 | nominator).*.denominator.==.nume |
| 56e80 | 72 61 74 6f 72 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | rator</code>........</p>.......< |
| 56ea0 | 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 7a | ul>...........<li><code.class="z |
| 56ec0 | 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 64 | ig"><span.class="tok-builtin">@d |
| 56ee0 | 69 76 45 78 61 63 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ivExact</span>(<span.class="tok- |
| 56f00 | 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 |
| 56f20 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c | ok-number">3</span>).==.<span.cl |
| 56f40 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | ass="tok-number">2</span></code> |
| 56f60 | 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= |
| 56f80 | 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"> |
| 56fa0 | 40 64 69 76 45 78 61 63 74 3c 2f 73 70 61 6e 3e 28 61 2c 20 62 29 20 2a 20 62 20 3d 3d 20 61 3c | @divExact</span>(a,.b).*.b.==.a< |
| 56fc0 | 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 | /code></li>.......</ul>.......<p |
| 56fe0 | 3e 46 6f 72 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 68 61 74 20 72 65 74 75 72 6e 73 20 61 20 70 | >For.a.function.that.returns.a.p |
| 57000 | 6f 73 73 69 62 6c 65 20 65 72 72 6f 72 20 63 6f 64 65 2c 20 75 73 65 20 3c 63 6f 64 65 20 63 6c | ossible.error.code,.use.<code.cl |
| 57020 | 61 73 73 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 |
| 57040 | 69 6e 22 3e 40 69 6d 70 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=" |
| 57060 | 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>) |
| 57080 | 2e 6d 61 74 68 2e 64 69 76 45 78 61 63 74 3c 2f 63 6f 64 65 3e 2e 3c 2f 70 3e 0a 20 20 20 20 20 | .math.divExact</code>.</p>...... |
| 570a0 | 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 |
| 570c0 | 66 3d 22 23 64 69 76 54 72 75 6e 63 22 3e 40 64 69 76 54 72 75 6e 63 3c 2f 61 3e 3c 2f 6c 69 3e | f="#divTrunc">@divTrunc</a></li> |
| 570e0 | 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 64 69 76 46 6c 6f 6f 72 22 3e 40 64 69 76 46 6c 6f | .<li><a.href="#divFloor">@divFlo |
| 57100 | 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 | or</a></li>.</ul>............... |
| 57120 | 3c 68 32 20 69 64 3d 22 64 69 76 46 6c 6f 6f 72 22 3e 40 64 69 76 46 6c 6f 6f 72 3c 2f 68 32 3e | <h2.id="divFloor">@divFloor</h2> |
| 57140 | 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">< |
| 57160 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 64 69 76 46 6c 6f | span.class="tok-builtin">@divFlo |
| 57180 | 6f 72 3c 2f 73 70 61 6e 3e 28 6e 75 6d 65 72 61 74 6f 72 3a 20 54 2c 20 64 65 6e 6f 6d 69 6e 61 | or</span>(numerator:.T,.denomina |
| 571a0 | 74 6f 72 3a 20 54 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e | tor:.T).T</code></pre>.......<p> |
| 571c0 | 0a 20 20 20 20 20 20 46 6c 6f 6f 72 65 64 20 64 69 76 69 73 69 6f 6e 2e 20 52 6f 75 6e 64 73 20 | .......Floored.division..Rounds. |
| 571e0 | 74 6f 77 61 72 64 20 6e 65 67 61 74 69 76 65 20 69 6e 66 69 6e 69 74 79 2e 20 46 6f 72 20 75 6e | toward.negative.infinity..For.un |
| 57200 | 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 73 20 69 74 20 69 73 0a 20 20 20 20 20 20 74 68 65 20 | signed.integers.it.is.......the. |
| 57220 | 73 61 6d 65 20 61 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6e 75 6d 65 72 61 | same.as.<code.class="zig">numera |
| 57240 | 74 6f 72 20 2f 20 64 65 6e 6f 6d 69 6e 61 74 6f 72 3c 2f 63 6f 64 65 3e 2e 20 43 61 6c 6c 65 72 | tor./.denominator</code>..Caller |
| 57260 | 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 64 65 | .guarantees.<code.class="zig">de |
| 57280 | 6e 6f 6d 69 6e 61 74 6f 72 20 21 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 | nominator.!=.<span.class="tok-nu |
| 572a0 | 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 20 20 20 20 20 | mber">0</span></code>.and....... |
| 572c0 | 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 21 28 3c 73 70 61 | ........<code.class="zig">!(<spa |
| 572e0 | 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 64 3c 2f 73 | n.class="tok-builtin">@typeId</s |
| 57300 | 70 61 6e 3e 28 54 29 20 3d 3d 20 62 75 69 6c 74 69 6e 2e 54 79 70 65 49 64 2e 49 6e 74 20 3c 73 | pan>(T).==.builtin.TypeId.Int.<s |
| 57320 | 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 54 2e | pan.class="tok-kw">and</span>.T. |
| 57340 | 69 73 5f 73 69 67 6e 65 64 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 | is_signed.<span.class="tok-kw">a |
| 57360 | 6e 64 3c 2f 73 70 61 6e 3e 20 6e 75 6d 65 72 61 74 6f 72 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 | nd</span>.numerator.==.<span.cla |
| 57380 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6d 69 6e 56 61 6c 75 65 3c 2f 73 70 61 6e | ss="tok-builtin">@minValue</span |
| 573a0 | 3e 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 64 3c 2f 73 | >(T).<span.class="tok-kw">and</s |
| 573c0 | 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 6c 61 73 73 | pan>.denominator.==.-<span.class |
| 573e0 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 2e 0a | ="tok-number">1</span>)</code>.. |
| 57400 | 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 | ......</p>.......<ul>........... |
| 57420 | 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 |
| 57440 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 64 69 76 46 6c 6f 6f 72 3c 2f 73 70 61 6e 3e | s="tok-builtin">@divFloor</span> |
| 57460 | 28 2d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 | (-<span.class="tok-number">5</sp |
| 57480 | 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< |
| 574a0 | 2f 73 70 61 6e 3e 29 20 3d 3d 20 2d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d | /span>).==.-<span.class="tok-num |
| 574c0 | 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | ber">2</span></code></li>....... |
| 574e0 | 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. |
| 57500 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 64 69 76 46 6c 6f 6f 72 3c 2f 73 | class="tok-builtin">@divFloor</s |
| 57520 | 70 61 6e 3e 28 61 2c 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 | pan>(a,.b).+.<span.class="tok-bu |
| 57540 | 69 6c 74 69 6e 22 3e 40 6d 6f 64 3c 2f 73 70 61 6e 3e 28 61 2c 20 62 29 20 3d 3d 20 61 3c 2f 63 | iltin">@mod</span>(a,.b).==.a</c |
| 57560 | 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 46 | ode></li>.......</ul>.......<p>F |
| 57580 | 6f 72 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 68 61 74 20 72 65 74 75 72 6e 73 20 61 20 70 6f 73 | or.a.function.that.returns.a.pos |
| 575a0 | 73 69 62 6c 65 20 65 72 72 6f 72 20 63 6f 64 65 2c 20 75 73 65 20 3c 63 6f 64 65 20 63 6c 61 73 | sible.error.code,.use.<code.clas |
| 575c0 | 73 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 |
| 575e0 | 22 3e 40 69 6d 70 6f 72 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 |
| 57600 | 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 |
| 57620 | 61 74 68 2e 64 69 76 46 6c 6f 6f 72 3c 2f 63 6f 64 65 3e 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | ath.divFloor</code>.</p>.......< |
| 57640 | 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= |
| 57660 | 22 23 64 69 76 54 72 75 6e 63 22 3e 40 64 69 76 54 72 75 6e 63 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c | "#divTrunc">@divTrunc</a></li>.< |
| 57680 | 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 64 69 76 45 78 61 63 74 22 3e 40 64 69 76 45 78 61 63 74 | li><a.href="#divExact">@divExact |
| 576a0 | 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 |
| 576c0 | 32 20 69 64 3d 22 64 69 76 54 72 75 6e 63 22 3e 40 64 69 76 54 72 75 6e 63 3c 2f 68 32 3e 0a 0a | 2.id="divTrunc">@divTrunc</h2>.. |
| 576e0 | 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 |
| 57700 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 64 69 76 54 72 75 6e 63 | an.class="tok-builtin">@divTrunc |
| 57720 | 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 6f | </span>(numerator:.T,.denominato |
| 57740 | 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 20 | r:.T).T</code></pre>.......<p>.. |
| 57760 | 20 20 20 20 20 54 72 75 6e 63 61 74 65 64 20 64 69 76 69 73 69 6f 6e 2e 20 52 6f 75 6e 64 73 20 | .....Truncated.division..Rounds. |
| 57780 | 74 6f 77 61 72 64 20 7a 65 72 6f 2e 20 46 6f 72 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 | toward.zero..For.unsigned.intege |
| 577a0 | 72 73 20 69 74 20 69 73 0a 20 20 20 20 20 20 74 68 65 20 73 61 6d 65 20 61 73 20 3c 63 6f 64 65 | rs.it.is.......the.same.as.<code |
| 577c0 | 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 6d 69 6e | .class="zig">numerator./.denomin |
| 577e0 | 61 74 6f 72 3c 2f 63 6f 64 65 3e 2e 20 43 61 6c 6c 65 72 20 67 75 61 72 61 6e 74 65 65 73 20 3c | ator</code>..Caller.guarantees.< |
| 57800 | 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 21 3d 20 | code.class="zig">denominator.!=. |
| 57820 | 3c 73 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 |
| 57840 | 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 6f 64 65 | ></code>.and...............<code |
| 57860 | 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 6f 6b 2d | .class="zig">!(<span.class="tok- |
| 57880 | 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 49 64 3c 2f 73 70 61 6e 3e 28 54 29 20 3d 3d 20 62 75 | builtin">@typeId</span>(T).==.bu |
| 578a0 | 69 6c 74 69 6e 2e 54 79 70 65 49 64 2e 49 6e 74 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | iltin.TypeId.Int.<span.class="to |
| 578c0 | 6b 2d 6b 77 22 3e 61 6e 64 3c 2f 73 70 61 6e 3e 20 54 2e 69 73 5f 73 69 67 6e 65 64 20 3c 73 70 | k-kw">and</span>.T.is_signed.<sp |
| 578e0 | 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 6e 75 6d | an.class="tok-kw">and</span>.num |
| 57900 | 65 72 61 74 6f 72 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 | erator.==.<span.class="tok-built |
| 57920 | 69 6e 22 3e 40 6d 69 6e 56 61 6c 75 65 3c 2f 73 70 61 6e 3e 28 54 29 20 3c 73 70 61 6e 20 63 6c | in">@minValue</span>(T).<span.cl |
| 57940 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6e 64 3c 2f 73 70 61 6e 3e 20 64 65 6e 6f 6d 69 6e 61 | ass="tok-kw">and</span>.denomina |
| 57960 | 74 6f 72 20 3d 3d 20 2d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | tor.==.-<span.class="tok-number" |
| 57980 | 3e 31 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | >1</span>)</code>........</p>... |
| 579a0 | 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 | ....<ul>...........<li><code.cla |
| 579c0 | 73 73 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 |
| 579e0 | 6e 22 3e 40 64 69 76 54 72 75 6e 63 3c 2f 73 70 61 6e 3e 28 2d 3c 73 70 61 6e 20 63 6c 61 73 73 | n">@divTrunc</span>(-<span.class |
| 57a00 | 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 |
| 57a20 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 2d 3c | ass="tok-number">3</span>).==.-< |
| 57a40 | 73 70 61 6e 20 63 6c 61 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> |
| 57a60 | 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 |
| 57a80 | 20 63 6c 61 73 73 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 |
| 57aa0 | 69 6c 74 69 6e 22 3e 40 64 69 76 54 72 75 6e 63 3c 2f 73 70 61 6e 3e 28 61 2c 20 62 29 20 2b 20 | iltin">@divTrunc</span>(a,.b).+. |
| 57ac0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 72 65 6d 3c 2f | <span.class="tok-builtin">@rem</ |
| 57ae0 | 73 70 61 6e 3e 28 61 2c 20 62 29 20 3d 3d 20 61 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 | span>(a,.b).==.a</code></li>.... |
| 57b00 | 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 46 6f 72 20 61 20 66 75 6e 63 74 69 6f 6e | ...</ul>.......<p>For.a.function |
| 57b20 | 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 20 63 | .that.returns.a.possible.error.c |
| 57b40 | 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 61 6e | ode,.use.<code.class="zig"><span |
| 57b60 | 20 63 6c 61 73 73 3d 22 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 |
| 57b80 | 61 6e 3e 28 3c 73 70 61 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">" |
| 57ba0 | 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 61 74 68 2e 64 69 76 54 72 75 6e 63 3c | std"</span>).math.divTrunc< |
| 57bc0 | 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 3c 2f | /code>.</p>.......<p>See.also:</ |
| 57be0 | 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 64 69 76 46 6c 6f 6f 72 22 3e 40 | p><ul>.<li><a.href="#divFloor">@ |
| 57c00 | 64 69 76 46 6c 6f 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 | divFloor</a></li>.<li><a.href="# |
| 57c20 | 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 2f 75 | divExact">@divExact</a></li>.</u |
| 57c40 | 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 65 6d 62 65 64 46 69 | l>...............<h2.id="embedFi |
| 57c60 | 6c 65 22 3e 40 65 6d 62 65 64 46 69 6c 65 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e | le">@embedFile</h2>........<pre> |
| 57c80 | 3c 63 6f 64 65 20 63 6c 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 |
| 57ca0 | 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 6d 62 65 64 46 69 6c 65 3c 2f 73 70 61 6e 3e 28 3c 73 | ok-builtin">@embedFile</span>(<s |
| 57cc0 | 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 |
| 57ce0 | 6e 3e 20 70 61 74 68 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | n>.path:.[]<span.class="tok-kw"> |
| 57d00 | 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 |
| 57d20 | 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 5b 58 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | pe">u8</span>).[X]<span.class="t |
| 57d40 | 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 0a | ok-type">u8</span></code></pre>. |
| 57d60 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 72 65 | ......<p>.......This.function.re |
| 57d80 | 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 66 69 | turns.a.compile.time.constant.fi |
| 57da0 | 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 0a 20 20 20 20 20 | xed-size.array.with.length...... |
| 57dc0 | 20 65 71 75 61 6c 20 74 6f 20 74 68 65 20 62 79 74 65 20 63 6f 75 6e 74 20 6f 66 20 74 68 65 20 | .equal.to.the.byte.count.of.the. |
| 57de0 | 66 69 6c 65 20 67 69 76 65 6e 20 62 79 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | file.given.by.<code.class="zig"> |
| 57e00 | 70 61 74 68 3c 2f 63 6f 64 65 3e 2e 20 54 68 65 20 63 6f 6e 74 65 6e 74 73 20 6f 66 20 74 68 65 | path</code>..The.contents.of.the |
| 57e20 | 20 61 72 72 61 79 0a 20 20 20 20 20 20 61 72 65 20 74 68 65 20 63 6f 6e 74 65 6e 74 73 20 6f 66 | .array.......are.the.contents.of |
| 57e40 | 20 74 68 65 20 66 69 6c 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a | .the.file........</p>.......<p>. |
| 57e60 | 20 20 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 | ......<code.class="zig">path</co |
| 57e80 | 64 65 3e 20 69 73 20 61 62 73 6f 6c 75 74 65 20 6f 72 20 72 65 6c 61 74 69 76 65 20 74 6f 20 74 | de>.is.absolute.or.relative.to.t |
| 57ea0 | 68 65 20 63 75 72 72 65 6e 74 20 66 69 6c 65 2c 20 6a 75 73 74 20 6c 69 6b 65 20 3c 63 6f 64 65 | he.current.file,.just.like.<code |
| 57ec0 | 20 63 6c 61 73 73 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 |
| 57ee0 | 69 6c 74 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 | iltin">@import</span></code>.... |
| 57f00 | 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>< |
| 57f20 | 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 69 6d 70 6f 72 74 22 3e 40 69 6d 70 6f 72 | ul>.<li><a.href="#import">@impor |
| 57f40 | 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>................ |
| 57f60 | 3c 68 32 20 69 64 3d 22 65 6e 75 6d 54 6f 49 6e 74 22 3e 40 65 6e 75 6d 54 6f 49 6e 74 3c 2f 68 | <h2.id="enumToInt">@enumToInt</h |
| 57f80 | 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" |
| 57fa0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 6e 75 6d | ><span.class="tok-builtin">@enum |
| 57fc0 | 54 6f 49 6e 74 3c 2f 73 70 61 6e 3e 28 65 6e 75 6d 5f 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 | ToInt</span>(enum_value:.<span.c |
| 57fe0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 | lass="tok-kw">var</span>).<span. |
| 58000 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | class="tok-kw">var</span></code> |
| 58020 | 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 6e 76 65 72 74 73 20 | </pre>.......<p>.......Converts. |
| 58040 | 61 6e 20 65 6e 75 6d 65 72 61 74 69 6f 6e 20 76 61 6c 75 65 20 69 6e 74 6f 20 69 74 73 20 69 6e | an.enumeration.value.into.its.in |
| 58060 | 74 65 67 65 72 20 74 61 67 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | teger.tag.type........</p>...... |
| 58080 | 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 74 68 65 20 65 6e 75 6d 20 68 61 73 20 6f 6e 6c 79 20 | .<p>.......If.the.enum.has.only. |
| 580a0 | 31 20 70 6f 73 73 69 62 6c 65 20 76 61 6c 75 65 2c 20 74 68 65 20 72 65 73 75 74 20 69 73 20 61 | 1.possible.value,.the.resut.is.a |
| 580c0 | 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=" |
| 580e0 | 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 |
| 58100 | 6f 64 65 3e 0a 20 20 20 20 20 20 6b 6e 6f 77 6e 20 61 74 20 3c 61 20 68 72 65 66 3d 22 23 63 6f | ode>.......known.at.<a.href="#co |
| 58120 | 6d 70 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | mptime">comptime</a>........</p> |
| 58140 | 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> |
| 58160 | 3c 61 20 68 72 65 66 3d 22 23 69 6e 74 54 6f 45 6e 75 6d 22 3e 40 69 6e 74 54 6f 45 6e 75 6d 3c | <a.href="#intToEnum">@intToEnum< |
| 58180 | 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 |
| 581a0 | 32 20 69 64 3d 22 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 68 | 2.id="errSetCast">@errSetCast</h |
| 581c0 | 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" |
| 581e0 | 3e 3c 73 70 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 53 | ><span.class="tok-builtin">@errS |
| 58200 | 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 22 74 6f 6b 2d 6b | etCast</span>(<span.class="tok-k |
| 58220 | 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 54 79 70 65 2c 20 | w">comptime</span>.T:.DestType,. |
| 58240 | 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 76 61 72 3c | value:.<span.class="tok-kw">var< |
| 58260 | 2f 73 70 61 6e 3e 29 20 44 65 73 74 54 79 70 65 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 | /span>).DestType</code></pre>... |
| 58280 | 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 6f 72 20 | ....<p>.......Converts.an.error. |
| 582a0 | 76 61 6c 75 65 20 66 72 6f 6d 20 6f 6e 65 20 65 72 72 6f 72 20 73 65 74 20 74 6f 20 61 6e 6f 74 | value.from.one.error.set.to.anot |
| 582c0 | 68 65 72 20 65 72 72 6f 72 20 73 65 74 2e 20 41 74 74 65 6d 70 74 69 6e 67 20 74 6f 20 63 6f 6e | her.error.set..Attempting.to.con |
| 582e0 | 76 65 72 74 20 61 6e 20 65 72 72 6f 72 0a 20 20 20 20 20 20 77 68 69 63 68 20 69 73 20 6e 6f 74 | vert.an.error.......which.is.not |
| 58300 | 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 20 72 65 | .in.the.destination.error.set.re |
| 58320 | 73 75 6c 74 73 20 69 6e 20 73 61 66 65 74 79 2d 70 72 6f 74 65 63 74 65 64 20 3c 61 20 68 72 65 | sults.in.safety-protected.<a.hre |
| 58340 | 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 | f="#Undefined-Behavior">Undefine |
| 58360 | 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | d.Behavior</a>........</p>...... |
| 58380 | 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 40 65 72 72 | .........<h2.id="errorName">@err |
| 583a0 | 6f 72 4e 61 6d 65 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 | orName</h2>........<pre><code.cl |
| 583c0 | 61 73 73 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 |
| 583e0 | 69 6e 22 3e 40 65 72 72 6f 72 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 65 72 72 3a 20 3c 73 70 61 6e | in">@errorName</span>(err:.<span |
| 58400 | 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 29 20 5b 5d | .class="tok-kw">error</span>).[] |
| 58420 | 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> |
| 58440 | 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 |
| 58460 | 69 73 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 20 74 68 65 20 73 74 72 69 6e 67 20 72 | is.function.returns.the.string.r |
| 58480 | 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 6f 66 20 61 6e 20 65 72 72 6f 72 2e 20 49 66 20 61 6e | epresentation.of.an.error..If.an |
| 584a0 | 20 65 72 72 6f 72 0a 20 20 20 20 20 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 69 73 3a 0a 20 20 20 | .error.......declaration.is:.... |
| 584c0 | 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=" |
| 584e0 | 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 72 6f 72 3c | zig"><span.class="tok-kw">error< |
| 58500 | 2f 73 70 61 6e 3e 20 4f 75 74 4f 66 4d 65 6d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 | /span>.OutOfMem</code></pre>.... |
| 58520 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 6e 20 74 68 65 20 73 74 72 69 6e 67 20 72 65 70 | ...<p>.......Then.the.string.rep |
| 58540 | 72 65 73 65 6e 74 61 74 69 6f 6e 20 69 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | resentation.is.<code.class="zig" |
| 58560 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 4f 75 74 | ><span.class="tok-str">"Out |
| 58580 | 4f 66 4d 65 6d 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 | OfMem"</span></code>....... |
| 585a0 | 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 74 68 65 72 65 20 61 | .</p>.......<p>.......If.there.a |
| 585c0 | 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 7a 69 67 22 | re.no.calls.to.<code.class="zig" |
| 585e0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 72 72 6f | ><span.class="tok-builtin">@erro |
| 58600 | 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 74 69 72 65 | rName</span></code>.in.an.entire |
| 58620 | 20 61 70 70 6c 69 63 61 74 69 6f 6e 2c 0a 20 20 20 20 20 20 20 20 20 20 6f 72 20 61 6c 6c 20 63 | .application,...........or.all.c |
| 58640 | 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 |
| 58660 | 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</ |
| 58680 | 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. |
| 586a0 | 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........< |
| 586c0 | 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 |
| 586e0 | 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 68 | eturnTrace">@errorReturnTrace</h |
| 58700 | 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" |
| 58720 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 72 72 6f | ><span.class="tok-builtin">@erro |
| 58740 | 72 52 65 74 75 72 6e 54 72 61 63 65 3c 2f 73 70 61 6e 3e 28 29 20 3f 2a 62 75 69 6c 74 69 6e 2e | rReturnTrace</span>().?*builtin. |
| 58760 | 53 74 61 63 6b 54 72 61 63 65 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 | StackTrace</code></pre>.......<p |
| 58780 | 3e 0a 20 20 20 20 20 20 49 66 20 74 68 65 20 62 69 6e 61 72 79 20 69 73 20 62 75 69 6c 74 20 77 | >.......If.the.binary.is.built.w |
| 587a0 | 69 74 68 20 65 72 72 6f 72 20 72 65 74 75 72 6e 20 74 72 61 63 69 6e 67 2c 20 61 6e 64 20 74 68 | ith.error.return.tracing,.and.th |
| 587c0 | 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 69 6e 76 6f 6b 65 64 20 69 6e 20 61 0a 20 20 20 20 | is.function.is.invoked.in.a..... |
| 587e0 | 20 20 66 75 6e 63 74 69 6f 6e 20 74 68 61 74 20 63 61 6c 6c 73 20 61 20 66 75 6e 63 74 69 6f 6e | ..function.that.calls.a.function |
| 58800 | 20 77 69 74 68 20 61 6e 20 65 72 72 6f 72 20 6f 72 20 65 72 72 6f 72 20 75 6e 69 6f 6e 20 72 65 | .with.an.error.or.error.union.re |
| 58820 | 74 75 72 6e 20 74 79 70 65 2c 20 72 65 74 75 72 6e 73 20 61 0a 20 20 20 20 20 20 73 74 61 63 6b | turn.type,.returns.a.......stack |
| 58840 | 20 74 72 61 63 65 20 6f 62 6a 65 63 74 2e 20 4f 74 68 65 72 77 69 73 65 20 72 65 74 75 72 6e 73 | .trace.object..Otherwise.returns |
| 58860 | 20 60 6e 75 6c 6c 60 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 | .`null`........</p>............. |
| 58880 | 20 20 3c 68 32 20 69 64 3d 22 65 72 72 6f 72 54 6f 49 6e 74 22 3e 40 65 72 72 6f 72 54 6f 49 6e | ..<h2.id="errorToInt">@errorToIn |
| 588a0 | 74 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 | t</h2>........<pre><code.class=" |
| 588c0 | 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">@ |
| 588e0 | 65 72 72 6f 72 54 6f 49 6e 74 3c 2f 73 70 61 6e 3e 28 65 72 72 3a 20 3c 73 70 61 6e 20 63 6c 61 | errorToInt</span>(err:.<span.cla |
| 58900 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c | ss="tok-kw">var</span>).<span.cl |
| 58920 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 49 6e 74 54 79 70 65 3c 2f 73 70 61 6e | ass="tok-builtin">@IntType</span |
| 58940 | 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f | >(<span.class="tok-null">false</ |
| 58960 | 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | span>,.<span.class="tok-builtin" |
| 58980 | 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 74 6f 6b | >@sizeOf</span>(<span.class="tok |
| 589a0 | 2d 6b 77 22 3e 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 | -kw">error</span>).*.<span.class |
| 589c0 | 3d 22 74 6f 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 | ="tok-number">8</span>)</code></ |
| 589e0 | 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 75 70 70 6f 72 74 73 20 74 68 | pre>.......<p>.......Supports.th |
| 58a00 | 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 79 70 65 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | e.following.types:.......</p>... |
| 58a20 | 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 65 72 72 6f 72 20 75 6e 69 | ....<ul>...........<li>error.uni |
| 58a40 | 6f 6e 73 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 | ons</li>...........<li><code.cla |
| 58a60 | 73 73 3d 22 7a 69 67 22 3e 45 21 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | ss="zig">E!<span.class="tok-type |
| 58a80 | 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | ">void</span></code></li>....... |
| 58aa0 | 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 6e 76 65 72 74 73 20 61 | </ul>.......<p>.......Converts.a |
| 58ac0 | 6e 20 65 72 72 6f 72 20 74 6f 20 74 68 65 20 69 6e 74 65 67 65 72 20 72 65 70 72 65 73 65 6e 74 | n.error.to.the.integer.represent |
| 58ae0 | 61 74 69 6f 6e 20 6f 66 20 61 6e 20 65 72 72 6f 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | ation.of.an.error........</p>... |
| 58b00 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 74 20 69 73 20 67 65 6e 65 72 61 6c 6c 79 20 72 65 | ....<p>.......It.is.generally.re |
| 58b20 | 63 6f 6d 6d 65 6e 64 65 64 20 74 6f 20 61 76 6f 69 64 20 74 68 69 73 0a 20 20 20 20 20 20 63 61 | commended.to.avoid.this.......ca |
| 58b40 | 73 74 2c 20 61 73 20 74 68 65 20 69 6e 74 65 67 65 72 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f | st,.as.the.integer.representatio |
| 58b60 | 6e 20 6f 66 20 61 6e 20 65 72 72 6f 72 20 69 73 20 6e 6f 74 20 73 74 61 62 6c 65 20 61 63 72 6f | n.of.an.error.is.not.stable.acro |
| 58b80 | 73 73 20 73 6f 75 72 63 65 20 63 6f 64 65 20 63 68 61 6e 67 65 73 2e 0a 20 20 20 20 20 20 3c 2f | ss.source.code.changes........</ |
| 58ba0 | 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 |
| 58bc0 | 69 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 | i><a.href="#intToError">@intToEr |
| 58be0 | 72 6f 72 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 | ror</a></li>.</ul>.............. |
| 58c00 | 20 20 3c 68 32 20 69 64 3d 22 65 78 70 6f 72 74 22 3e 40 65 78 70 6f 72 74 3c 2f 68 32 3e 0a 0a | ..<h2.id="export">@export</h2>.. |
| 58c20 | 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 |
| 58c40 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 78 70 6f 72 74 3c 2f | an.class="tok-builtin">@export</ |
| 58c60 | 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 |
| 58c80 | 69 6d 65 3c 2f 73 70 61 6e 3e 20 6e 61 6d 65 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ime</span>.name:.[]<span.class=" |
| 58ca0 | 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 |
| 58cc0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 74 61 72 67 65 74 3a 20 3c | ="tok-type">u8</span>,.target:.< |
| 58ce0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 2c 20 | span.class="tok-kw">var</span>,. |
| 58d00 | 6c 69 6e 6b 61 67 65 3a 20 62 75 69 6c 74 69 6e 2e 47 6c 6f 62 61 6c 4c 69 6e 6b 61 67 65 29 20 | linkage:.builtin.GlobalLinkage). |
| 58d20 | 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 |
| 58d40 | 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 |
| 58d60 | 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>..... |
| 58d80 | 20 20 43 72 65 61 74 65 73 20 61 20 73 79 6d 62 6f 6c 20 69 6e 20 74 68 65 20 6f 75 74 70 75 74 | ..Creates.a.symbol.in.the.output |
| 58da0 | 20 6f 62 6a 65 63 74 20 66 69 6c 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a | .object.file........</p>........ |
| 58dc0 | 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 66 65 6e 63 65 22 3e 40 66 65 6e 63 65 3c 2f 68 32 | .......<h2.id="fence">@fence</h2 |
| 58de0 | 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"> |
| 58e00 | 3c 73 70 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 | <span.class="tok-builtin">@fence |
| 58e20 | 3c 2f 73 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 | </span>(order:.AtomicOrder)</cod |
| 58e40 | 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 3c 63 6f | e></pre>.......<p>.......The.<co |
| 58e60 | 64 65 20 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 | de.class="zig">fence</code>.func |
| 58e80 | 74 69 6f 6e 20 69 73 20 75 73 65 64 20 74 6f 20 69 6e 74 72 6f 64 75 63 65 20 68 61 70 70 65 6e | tion.is.used.to.introduce.happen |
| 58ea0 | 73 2d 62 65 66 6f 72 65 20 65 64 67 65 73 20 62 65 74 77 65 65 6e 20 6f 70 65 72 61 74 69 6f 6e | s-before.edges.between.operation |
| 58ec0 | 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 63 | s........</p>.......<p>.......<c |
| 58ee0 | 6f 64 65 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 | ode.class="zig">AtomicOrder</cod |
| 58f00 | 65 3e 20 63 61 6e 20 62 65 20 66 6f 75 6e 64 20 77 69 74 68 20 3c 63 6f 64 65 20 63 6c 61 73 73 | e>.can.be.found.with.<code.class |
| 58f20 | 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" |
| 58f40 | 3e 40 69 6d 70 6f 72 74 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 |
| 58f60 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 75 69 6c 74 69 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | -str">"builtin"</span> |
| 58f80 | 29 2e 41 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 | ).AtomicOrder</code>........</p> |
| 58fa0 | 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> |
| 58fc0 | 3c 61 20 68 72 65 66 3d 22 23 43 6f 6d 70 69 6c 65 2d 56 61 72 69 61 62 6c 65 73 22 3e 43 6f 6d | <a.href="#Compile-Variables">Com |
| 58fe0 | 70 69 6c 65 20 56 61 72 69 61 62 6c 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 | pile.Variables</a></li>.</ul>... |
| 59000 | 20 20 20 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 40 66 69 65 | .............<h2.id="field">@fie |
| 59020 | 6c 64 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 | ld</h2>........<pre><code.class= |
| 59040 | 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"> |
| 59060 | 40 66 69 65 6c 64 3c 2f 73 70 61 6e 3e 28 6c 68 73 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | @field</span>(lhs:.<span.class=" |
| 59080 | 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | tok-kw">var</span>,.<span.class= |
| 590a0 | 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 6e | "tok-kw">comptime</span>.field_n |
| 590c0 | 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 |
| 590e0 | 74 3c 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"> |
| 59100 | 75 38 3c 2f 73 70 61 6e 3e 29 20 28 66 69 65 6c 64 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | u8</span>).(field)</code></pre>. |
| 59120 | 20 20 20 20 20 20 3c 70 3e 50 72 65 66 6f 72 6d 73 20 66 69 65 6c 64 20 61 63 63 65 73 73 20 65 | ......<p>Preforms.field.access.e |
| 59140 | 71 75 69 76 61 6c 65 6e 74 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6c | quivalent.to.<code.class="zig">l |
| 59160 | 68 73 2e 66 69 65 6c 64 5f 6e 61 6d 65 3c 2f 63 6f 64 65 3e 2c 20 65 78 63 65 70 74 20 69 6e 73 | hs.field_name</code>,.except.ins |
| 59180 | 74 65 61 64 0a 20 20 20 20 20 20 6f 66 20 74 68 65 20 66 69 65 6c 64 20 3c 63 6f 64 65 20 63 6c | tead.......of.the.field.<code.cl |
| 591a0 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e | ass="zig"><span.class="tok-str"> |
| 591c0 | 26 71 75 6f 74 3b 66 69 65 6c 64 5f 6e 61 6d 65 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3c 2f 63 | "field_name"</span></c |
| 591e0 | 6f 64 65 3e 2c 20 69 74 20 61 63 63 65 73 73 65 73 20 74 68 65 20 66 69 65 6c 64 20 6e 61 6d 65 | ode>,.it.accesses.the.field.name |
| 59200 | 64 20 62 79 20 74 68 65 20 73 74 72 69 6e 67 0a 20 20 20 20 20 20 76 61 6c 75 65 20 6f 66 20 3c | d.by.the.string.......value.of.< |
| 59220 | 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 66 69 65 6c 64 5f 6e 61 6d 65 3c 2f 63 6f 64 | code.class="zig">field_name</cod |
| 59240 | 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 |
| 59260 | 20 69 64 3d 22 66 69 65 6c 64 50 61 72 65 6e 74 50 74 72 22 3e 40 66 69 65 6c 64 50 61 72 65 6e | .id="fieldParentPtr">@fieldParen |
| 59280 | 74 50 74 72 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 | tPtr</h2>........<pre><code.clas |
| 592a0 | 73 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 |
| 592c0 | 22 3e 40 66 69 65 6c 64 50 61 72 65 6e 74 50 74 72 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 | ">@fieldParentPtr</span>(<span.c |
| 592e0 | 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 50 61 | lass="tok-kw">comptime</span>.Pa |
| 59300 | 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 6b 2d 74 79 70 65 22 | rentType:.<span.class="tok-type" |
| 59320 | 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | >type</span>,.<span.class="tok-k |
| 59340 | 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 66 69 65 6c 64 5f 6e 61 6d 65 3a 20 5b | w">comptime</span>.field_name:.[ |
| 59360 | 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 |
| 59380 | 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 |
| 593a0 | 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 50 61 72 65 6e 74 54 | an>,.....field_ptr:.*T).*ParentT |
| 593c0 | 79 70 65 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | ype</code></pre>.......<p>...... |
| 593e0 | 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 6c 64 2c 20 72 65 74 | .Given.a.pointer.to.a.field,.ret |
| 59400 | 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 61 20 73 74 72 75 63 | urns.the.base.pointer.of.a.struc |
| 59420 | 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 | t........</p>...............<h2. |
| 59440 | 69 64 3d 22 66 6c 6f 61 74 43 61 73 74 22 3e 40 66 6c 6f 61 74 43 61 73 74 3c 2f 68 32 3e 0a 0a | id="floatCast">@floatCast</h2>.. |
| 59460 | 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 |
| 59480 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 66 6c 6f 61 74 43 61 73 | an.class="tok-builtin">@floatCas |
| 594a0 | 74 3c 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 | t</span>(<span.class="tok-kw">co |
| 594c0 | 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 44 65 73 74 54 79 70 65 3a 20 3c 73 70 61 6e 20 63 6c | mptime</span>.DestType:.<span.cl |
| 594e0 | 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 76 61 6c 75 | ass="tok-type">type</span>,.valu |
| 59500 | 65 3a 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 | e:.<span.class="tok-kw">var</spa |
| 59520 | 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 20 | n>).DestType</code></pre>....... |
| 59540 | 3c 70 3e 0a 20 20 20 20 20 20 43 6f 6e 76 65 72 74 20 66 72 6f 6d 20 6f 6e 65 20 66 6c 6f 61 74 | <p>.......Convert.from.one.float |
| 59560 | 20 74 79 70 65 20 74 6f 20 61 6e 6f 74 68 65 72 2e 20 54 68 69 73 20 63 61 73 74 20 69 73 20 73 | .type.to.another..This.cast.is.s |
| 59580 | 61 66 65 2c 20 62 75 74 20 6d 61 79 20 63 61 75 73 65 20 74 68 65 0a 20 20 20 20 20 20 6e 75 6d | afe,.but.may.cause.the.......num |
| 595a0 | 65 72 69 63 20 76 61 6c 75 65 20 74 6f 20 6c 6f 73 65 20 70 72 65 63 69 73 69 6f 6e 2e 0a 20 20 | eric.value.to.lose.precision.... |
| 595c0 | 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 66 | ....</p>...............<h2.id="f |
| 595e0 | 6c 6f 61 74 54 6f 49 6e 74 22 3e 40 66 6c 6f 61 74 54 6f 49 6e 74 3c 2f 68 32 3e 0a 0a 20 20 20 | loatToInt">@floatToInt</h2>..... |
| 59600 | 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. |
| 59620 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 66 6c 6f 61 74 54 6f 49 6e 74 3c | class="tok-builtin">@floatToInt< |
| 59640 | 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 |
| 59660 | 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 73 | time</span>.DestType:.<span.clas |
| 59680 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 66 6c 6f 61 74 3a | s="tok-type">type</span>,.float: |
| 596a0 | 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> |
| 596c0 | 29 20 44 65 73 74 54 79 70 65 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 | ).DestType</code></pre>.......<p |
| 596e0 | 3e 0a 20 20 20 20 20 20 43 6f 6e 76 65 72 74 73 20 74 68 65 20 69 6e 74 65 67 65 72 20 70 61 72 | >.......Converts.the.integer.par |
| 59700 | 74 20 6f 66 20 61 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6e 75 6d 62 65 72 20 74 6f 20 | t.of.a.floating.point.number.to. |
| 59720 | 74 68 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 74 79 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | the.destination.type........</p> |
| 59740 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 66 20 74 68 65 20 69 6e 74 65 67 65 72 20 | .......<p>.......If.the.integer. |
| 59760 | 70 61 72 74 20 6f 66 20 74 68 65 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6e 75 6d 62 65 | part.of.the.floating.point.numbe |
| 59780 | 72 20 63 61 6e 6e 6f 74 20 66 69 74 20 69 6e 20 74 68 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 | r.cannot.fit.in.the.destination. |
| 597a0 | 74 79 70 65 2c 0a 20 20 20 20 20 20 69 74 20 69 6e 76 6f 6b 65 73 20 73 61 66 65 74 79 2d 63 68 | type,.......it.invokes.safety-ch |
| 597c0 | 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 |
| 597e0 | 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>...... |
| 59800 | 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 |
| 59820 | 3e 0a 3c 6c 69 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 | >.<li><a.href="#intToFloat">@int |
| 59840 | 54 6f 46 6c 6f 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 | ToFloat</a></li>.</ul>.......... |
| 59860 | 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 66 72 61 6d 65 41 64 64 72 65 73 73 22 3e 40 66 72 61 | ......<h2.id="frameAddress">@fra |
| 59880 | 6d 65 41 64 64 72 65 73 73 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 | meAddress</h2>........<pre><code |
| 598a0 | 20 63 6c 61 73 73 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 |
| 598c0 | 69 6c 74 69 6e 22 3e 40 66 72 61 6d 65 41 64 64 72 65 73 73 3c 2f 73 70 61 6e 3e 28 29 3c 2f 63 | iltin">@frameAddress</span>()</c |
| 598e0 | 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 | ode></pre>.......<p>.......This. |
| 59900 | 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 20 74 68 65 20 62 61 73 65 20 70 6f 69 6e 74 65 | function.returns.the.base.pointe |
| 59920 | 72 20 6f 66 20 74 68 65 20 63 75 72 72 65 6e 74 20 73 74 61 63 6b 20 66 72 61 6d 65 2e 0a 20 20 | r.of.the.current.stack.frame.... |
| 59940 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 69 6d 70 | ....</p>.......<p>.......The.imp |
| 59960 | 6c 69 63 61 74 69 6f 6e 73 20 6f 66 20 74 68 69 73 20 61 72 65 20 74 61 72 67 65 74 20 73 70 65 | lications.of.this.are.target.spe |
| 59980 | 63 69 66 69 63 20 61 6e 64 20 6e 6f 74 20 63 6f 6e 73 69 73 74 65 6e 74 20 61 63 72 6f 73 73 20 | cific.and.not.consistent.across. |
| 599a0 | 61 6c 6c 0a 20 20 20 20 20 20 70 6c 61 74 66 6f 72 6d 73 2e 20 54 68 65 20 66 72 61 6d 65 20 61 | all.......platforms..The.frame.a |
| 599c0 | 64 64 72 65 73 73 20 6d 61 79 20 6e 6f 74 20 62 65 20 61 76 61 69 6c 61 62 6c 65 20 69 6e 20 72 | ddress.may.not.be.available.in.r |
| 599e0 | 65 6c 65 61 73 65 20 6d 6f 64 65 20 64 75 65 20 74 6f 0a 20 20 20 20 20 20 61 67 67 72 65 73 73 | elease.mode.due.to.......aggress |
| 59a00 | 69 76 65 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | ive.optimizations........</p>... |
| 59a20 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 6f | ....<p>.......This.function.is.o |
| 59a40 | 6e 6c 79 20 76 61 6c 69 64 20 77 69 74 68 69 6e 20 66 75 6e 63 74 69 6f 6e 20 73 63 6f 70 65 2e | nly.valid.within.function.scope. |
| 59a60 | 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d | .......</p>..............<h2.id= |
| 59a80 | 22 68 61 6e 64 6c 65 22 3e 40 68 61 6e 64 6c 65 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 | "handle">@handle</h2>........<pr |
| 59aa0 | 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= |
| 59ac0 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 68 61 6e 64 6c 65 3c 2f 73 70 61 6e 3e 28 29 3c 2f | "tok-builtin">@handle</span>()</ |
| 59ae0 | 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 |
| 59b00 | 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | .function.returns.a.<code.class= |
| 59b20 | 22 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 72 6f 6d 69 | "zig"><span.class="tok-kw">promi |
| 59b40 | 73 65 3c 2f 73 70 61 6e 3e 2d 26 67 74 3b 54 3c 2f 63 6f 64 65 3e 20 74 79 70 65 2c 20 77 68 65 | se</span>->T</code>.type,.whe |
| 59b60 | 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 0a 20 20 | re.<code.class="zig">T</code>... |
| 59b80 | 20 20 20 20 69 73 20 74 68 65 20 72 65 74 75 72 6e 20 74 79 70 65 20 6f 66 20 74 68 65 20 61 73 | ....is.the.return.type.of.the.as |
| 59ba0 | 79 6e 63 20 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 | ync.function.in.scope........</p |
| 59bc0 | 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. |
| 59be0 | 69 73 20 6f 6e 6c 79 20 76 61 6c 69 64 20 77 69 74 68 69 6e 20 61 6e 20 61 73 79 6e 63 20 66 75 | is.only.valid.within.an.async.fu |
| 59c00 | 6e 63 74 69 6f 6e 20 73 63 6f 70 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a | nction.scope........</p>........ |
| 59c20 | 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 69 6d 70 6f 72 74 22 3e 40 69 6d 70 6f 72 74 3c 2f 68 | ......<h2.id="import">@import</h |
| 59c40 | 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" |
| 59c60 | 3e 3c 73 70 61 6e 20 63 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 |
| 59c80 | 72 74 3c 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 | rt</span>(<span.class="tok-kw">c |
| 59ca0 | 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 70 61 74 68 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 | omptime</span>.path:.[]<span.cla |
| 59cc0 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 28 6e 61 6d 65 73 70 | ss="tok-type">u8</span>).(namesp |
| 59ce0 | 61 63 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 | ace)</code></pre>.......<p>..... |
| 59d00 | 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 73 20 61 20 7a 69 67 20 66 69 6c 65 | ..This.function.finds.a.zig.file |
| 59d20 | 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 74 6f 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | .corresponding.to.<code.class="z |
| 59d40 | 69 67 22 3e 70 61 74 68 3c 2f 63 6f 64 65 3e 20 61 6e 64 20 69 6d 70 6f 72 74 73 20 61 6c 6c 20 | ig">path</code>.and.imports.all. |
| 59d60 | 74 68 65 0a 20 20 20 20 20 20 70 75 62 6c 69 63 20 74 6f 70 20 6c 65 76 65 6c 20 64 65 63 6c 61 | the.......public.top.level.decla |
| 59d80 | 72 61 74 69 6f 6e 73 20 69 6e 74 6f 20 74 68 65 20 72 65 73 75 6c 74 69 6e 67 20 6e 61 6d 65 73 | rations.into.the.resulting.names |
| 59da0 | 70 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 | pace........</p>.......<p>...... |
| 59dc0 | 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 20 63 | .<code.class="zig">path</code>.c |
| 59de0 | 61 6e 20 62 65 20 61 20 72 65 6c 61 74 69 76 65 20 6f 72 20 61 62 73 6f 6c 75 74 65 20 70 61 74 | an.be.a.relative.or.absolute.pat |
| 59e00 | 68 2c 20 6f 72 20 69 74 20 63 61 6e 20 62 65 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 61 20 70 61 | h,.or.it.can.be.the.name.of.a.pa |
| 59e20 | 63 6b 61 67 65 2e 0a 20 20 20 20 20 20 20 20 20 20 49 66 20 69 74 20 69 73 20 61 20 72 65 6c 61 | ckage............If.it.is.a.rela |
| 59e40 | 74 69 76 65 20 70 61 74 68 2c 20 69 74 20 69 73 20 72 65 6c 61 74 69 76 65 20 74 6f 20 74 68 65 | tive.path,.it.is.relative.to.the |
| 59e60 | 20 66 69 6c 65 20 74 68 61 74 20 63 6f 6e 74 61 69 6e 73 20 74 68 65 20 3c 63 6f 64 65 20 63 6c | .file.that.contains.the.<code.cl |
| 59e80 | 61 73 73 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 |
| 59ea0 | 69 6e 22 3e 40 69 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 0a 20 20 20 20 20 20 | in">@import</span></code>....... |
| 59ec0 | 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | function.call........</p>....... |
| 59ee0 | 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 70 61 63 6b 61 67 65 73 | <p>.......The.following.packages |
| 59f00 | 20 61 72 65 20 61 6c 77 61 79 73 20 61 76 61 69 6c 61 62 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 | .are.always.available:.......</p |
| 59f20 | 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 |
| 59f40 | 20 63 6c 61 73 73 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 |
| 59f60 | 69 6c 74 69 6e 22 3e 40 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 |
| 59f80 | 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 |
| 59fa0 | 6e 3e 29 3c 2f 63 6f 64 65 3e 20 2d 20 5a 69 67 20 53 74 61 6e 64 61 72 64 20 4c 69 62 72 61 72 | n>)</code>.-.Zig.Standard.Librar |
| 59fc0 | 79 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 | y</li>...........<li><code.class |
| 59fe0 | 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" |
| 5a000 | 3e 40 69 6d 70 6f 72 74 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 |
| 5a020 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 75 69 6c 74 69 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | -str">"builtin"</span> |
| 5a040 | 29 3c 2f 63 6f 64 65 3e 20 2d 20 43 6f 6d 70 69 6c 65 72 2d 70 72 6f 76 69 64 65 64 20 74 79 70 | )</code>.-.Compiler-provided.typ |
| 5a060 | 65 73 20 61 6e 64 20 76 61 72 69 61 62 6c 65 73 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c | es.and.variables</li>.......</ul |
| 5a080 | 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 |
| 5a0a0 | 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 6f | ><a.href="#Compile-Variables">Co |
| 5a0c0 | 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 20 | mpile.Variables</a></li>.<li><a. |
| 5a0e0 | 68 72 65 66 3d 22 23 65 6d 62 65 64 46 69 6c 65 22 3e 40 65 6d 62 65 64 46 69 6c 65 3c 2f 61 3e | href="#embedFile">@embedFile</a> |
| 5a100 | 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 | </li>.</ul>...............<h2.id |
| 5a120 | 3d 22 69 6e 6c 69 6e 65 43 61 6c 6c 22 3e 40 69 6e 6c 69 6e 65 43 61 6c 6c 3c 2f 68 32 3e 0a 0a | ="inlineCall">@inlineCall</h2>.. |
| 5a140 | 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 |
| 5a160 | 61 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 6c 69 6e 65 43 61 | an.class="tok-builtin">@inlineCa |
| 5a180 | 6c 6c 3c 2f 73 70 61 6e 3e 28 66 75 6e 63 74 69 6f 6e 3a 20 58 2c 20 61 72 67 73 3a 20 2e 2e 2e | ll</span>(function:.X,.args:.... |
| 5a1a0 | 29 20 59 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 | ).Y</code></pre>.......<p>...... |
| 5a1c0 | 20 54 68 69 73 20 63 61 6c 6c 73 20 61 20 66 75 6e 63 74 69 6f 6e 2c 20 69 6e 20 74 68 65 20 73 | .This.calls.a.function,.in.the.s |
| 5a1e0 | 61 6d 65 20 77 61 79 20 74 68 61 74 20 69 6e 76 6f 6b 69 6e 67 20 61 6e 20 65 78 70 72 65 73 73 | ame.way.that.invoking.an.express |
| 5a200 | 69 6f 6e 20 77 69 74 68 20 70 61 72 65 6e 74 68 65 73 65 73 20 64 6f 65 73 3a 0a 20 20 20 20 20 | ion.with.parentheses.does:...... |
| 5a220 | 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 |
| 5a240 | 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">< |
| 5a260 | 73 70 61 6e 20 63 6c 61 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> |
| 5a280 | 20 61 73 73 65 72 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 | .assert.=.<span.class="tok-built |
| 5a2a0 | 69 6e 22 3e 40 69 6d 70 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=" |
| 5a2c0 | 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>) |
| 5a2e0 | 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 |
| 5a300 | 2d 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 |
| 5a320 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 69 6e 6c 69 6e 65 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c | k-str">"inline.function.cal |
| 5a340 | 6c 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 72 74 28 3c 73 70 61 | l"</span>.{.....assert(<spa |
| 5a360 | 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 6c 69 6e 65 43 61 6c | n.class="tok-builtin">@inlineCal |
| 5a380 | 6c 3c 2f 73 70 61 6e 3e 28 61 64 64 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | l</span>(add,.<span.class="tok-n |
| 5a3a0 | 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | umber">3</span>,.<span.class="to |
| 5a3c0 | 6b 2d 6e 75 6d 62 65 72 22 3e 39 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 | k-number">9</span>).==.<span.cla |
| 5a3e0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c | ss="tok-number">12</span>);.}..< |
| 5a400 | 73 70 61 6e 20 63 6c 61 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 |
| 5a420 | 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 3e 28 61 3a | pan.class="tok-fn">add</span>(a: |
| 5a440 | 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 |
| 5a460 | 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 33 | n>,.b:.<span.class="tok-type">i3 |
| 5a480 | 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 22 | 2</span>).<span.class="tok-type" |
| 5a4a0 | 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 6b | >i32</span>.{.<span.class="tok-k |
| 5a4c0 | 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 61 20 2b 20 62 3b 20 7d 3c 2f 63 6f 64 65 3e | w">return</span>.a.+.b;.}</code> |
| 5a4e0 | 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">$ |
| 5a500 | 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 31 2f 31 20 69 6e 6c 69 | .zig.test.test.zig.Test.1/1.inli |
| 5a520 | 6e 65 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 2e 2e 2e 4f 4b 0a 41 6c 6c 20 74 65 73 74 73 20 | ne.function.call...OK.All.tests. |
| 5a540 | 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> |
| 5a560 | 0a 20 20 20 20 20 20 55 6e 6c 69 6b 65 20 61 20 6e 6f 72 6d 61 6c 20 66 75 6e 63 74 69 6f 6e 20 | .......Unlike.a.normal.function. |
| 5a580 | 63 61 6c 6c 2c 20 68 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 | call,.however,.<code.class="zig" |
| 5a5a0 | 3e 3c 73 70 61 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 6c 69 | ><span.class="tok-builtin">@inli |
| 5a5c0 | 6e 65 43 61 6c 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 67 75 61 72 61 6e 74 65 65 73 20 | neCall</span></code>.guarantees. |
| 5a5e0 | 74 68 61 74 20 74 68 65 20 63 61 6c 6c 0a 20 20 20 20 20 20 77 69 6c 6c 20 62 65 20 69 6e 6c 69 | that.the.call.......will.be.inli |
| 5a600 | 6e 65 64 2e 20 49 66 20 74 68 65 20 63 61 6c 6c 20 63 61 6e 6e 6f 74 20 62 65 20 69 6e 6c 69 6e | ned..If.the.call.cannot.be.inlin |
| 5a620 | 65 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 2e 0a | ed,.a.compile.error.is.emitted.. |
| 5a640 | 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 |
| 5a660 | 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 6e 6f 49 6e 6c 69 6e 65 43 61 6c 6c | ><ul>.<li><a.href="#noInlineCall |
| 5a680 | 22 3e 40 6e 6f 49 6e 6c 69 6e 65 43 61 6c 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a | ">@noInlineCall</a></li>.</ul>.. |
| 5a6a0 | 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 43 61 73 74 22 3e 40 | ..............<h2.id="intCast">@ |
| 5a6c0 | 69 6e 74 43 61 73 74 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 | intCast</h2>........<pre><code.c |
| 5a6e0 | 6c 61 73 73 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 |
| 5a700 | 74 69 6e 22 3e 40 69 6e 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | tin">@intCast</span>(<span.class |
| 5a720 | 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 |
| 5a740 | 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< |
| 5a760 | 2f 73 70 61 6e 3e 2c 20 69 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | /span>,.int:.<span.class="tok-kw |
| 5a780 | 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 29 20 44 65 73 74 54 79 70 65 3c 2f 63 6f 64 65 3e 3c 2f 70 | ">var</span>).DestType</code></p |
| 5a7a0 | 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 6e 76 65 72 74 73 20 61 6e 20 | re>.......<p>.......Converts.an. |
| 5a7c0 | 69 6e 74 65 67 65 72 20 74 6f 20 61 6e 6f 74 68 65 72 20 69 6e 74 65 67 65 72 20 77 68 69 6c 65 | integer.to.another.integer.while |
| 5a7e0 | 20 6b 65 65 70 69 6e 67 20 74 68 65 20 73 61 6d 65 20 6e 75 6d 65 72 69 63 61 6c 20 76 61 6c 75 | .keeping.the.same.numerical.valu |
| 5a800 | 65 2e 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 | e........Attempting.to.convert.a |
| 5a820 | 20 6e 75 6d 62 65 72 20 77 68 69 63 68 20 69 73 20 6f 75 74 20 6f 66 20 72 61 6e 67 65 20 6f 66 | .number.which.is.out.of.range.of |
| 5a840 | 20 74 68 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 74 79 70 65 20 72 65 73 75 6c 74 73 20 69 6e | .the.destination.type.results.in |
| 5a860 | 0a 20 20 20 20 20 20 73 61 66 65 74 79 2d 70 72 6f 74 65 63 74 65 64 20 3c 61 20 68 72 65 66 3d | .......safety-protected.<a.href= |
| 5a880 | 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. |
| 5a8a0 | 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a | Behavior</a>........</p>........ |
| 5a8c0 | 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 69 6e 74 54 6f 45 6e 75 6d 22 3e 40 69 6e 74 54 6f | .......<h2.id="intToEnum">@intTo |
| 5a8e0 | 45 6e 75 6d 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 | Enum</h2>........<pre><code.clas |
| 5a900 | 73 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 |
| 5a920 | 22 3e 40 69 6e 74 54 6f 45 6e 75 6d 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ">@intToEnum</span>(<span.class= |
| 5a940 | 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 70 | "tok-kw">comptime</span>.DestTyp |
| 5a960 | 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 2f | e:.<span.class="tok-type">type</ |
| 5a980 | 73 70 61 6e 3e 2c 20 69 6e 74 5f 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | span>,.int_value:.<span.class="t |
| 5a9a0 | 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 44 65 73 74 | ok-builtin">@TagType</span>(Dest |
| 5a9c0 | 54 79 70 65 29 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 | Type)).DestType</code></pre>.... |
| 5a9e0 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 6e 76 65 72 74 73 20 61 6e 20 69 6e 74 65 67 65 72 | ...<p>.......Converts.an.integer |
| 5aa00 | 20 69 6e 74 6f 20 61 6e 20 3c 61 20 68 72 65 66 3d 22 23 65 6e 75 6d 22 3e 65 6e 75 6d 3c 2f 61 | .into.an.<a.href="#enum">enum</a |
| 5aa20 | 3e 20 76 61 6c 75 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | >.value........</p>.......<p>... |
| 5aa40 | 20 20 20 20 41 74 74 65 6d 70 74 69 6e 67 20 74 6f 20 63 6f 6e 76 65 72 74 20 61 6e 20 69 6e 74 | ....Attempting.to.convert.an.int |
| 5aa60 | 65 67 65 72 20 77 68 69 63 68 20 72 65 70 72 65 73 65 6e 74 73 20 6e 6f 20 76 61 6c 75 65 20 69 | eger.which.represents.no.value.i |
| 5aa80 | 6e 20 74 68 65 20 63 68 6f 73 65 6e 20 65 6e 75 6d 20 74 79 70 65 20 69 6e 76 6f 6b 65 73 0a 20 | n.the.chosen.enum.type.invokes.. |
| 5aaa0 | 20 20 20 20 20 73 61 66 65 74 79 2d 63 68 65 63 6b 65 64 20 3c 61 20 68 72 65 66 3d 22 23 55 6e | .....safety-checked.<a.href="#Un |
| 5aac0 | 64 65 66 69 6e 65 64 2d 42 65 68 61 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 | defined-Behavior">Undefined.Beha |
| 5aae0 | 76 69 6f 72 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 | vior</a>........</p>.......<p>Se |
| 5ab00 | 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 6e | e.also:</p><ul>.<li><a.href="#en |
| 5ab20 | 75 6d 54 6f 49 6e 74 22 3e 40 65 6e 75 6d 54 6f 49 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 | umToInt">@enumToInt</a></li>.</u |
| 5ab40 | 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 6e 74 54 6f 45 | l>................<h2.id="intToE |
| 5ab60 | 72 72 6f 72 22 3e 40 69 6e 74 54 6f 45 72 72 6f 72 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 | rror">@intToError</h2>........<p |
| 5ab80 | 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 |
| 5aba0 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 54 6f 45 72 72 6f 72 3c 2f 73 70 61 6e | ="tok-builtin">@intToError</span |
| 5abc0 | 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 62 75 69 6c 74 69 | >(value:.<span.class="tok-builti |
| 5abe0 | 6e 22 3e 40 49 6e 74 54 79 70 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | n">@IntType</span>(<span.class=" |
| 5ac00 | 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c | tok-null">false</span>,.<span.cl |
| 5ac20 | 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> |
| 5ac40 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f 73 70 61 | (<span.class="tok-kw">error</spa |
| 5ac60 | 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 38 | n>).*.<span.class="tok-number">8 |
| 5ac80 | 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 6b 77 22 3e 65 | </span>)).<span.class="tok-kw">e |
| 5aca0 | 72 72 6f 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c | rror</span></code></pre>.......< |
| 5acc0 | 70 3e 0a 20 20 20 20 20 20 43 6f 6e 76 65 72 74 73 20 66 72 6f 6d 20 74 68 65 20 69 6e 74 65 67 | p>.......Converts.from.the.integ |
| 5ace0 | 65 72 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 6f 66 20 61 6e 20 65 72 72 6f 72 20 69 6e | er.representation.of.an.error.in |
| 5ad00 | 74 6f 20 74 68 65 20 67 6c 6f 62 61 6c 20 65 72 72 6f 72 20 73 65 74 20 74 79 70 65 2e 0a 20 20 | to.the.global.error.set.type.... |
| 5ad20 | 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 74 20 69 73 20 67 | ....</p>.......<p>.......It.is.g |
| 5ad40 | 65 6e 65 72 61 6c 6c 79 20 72 65 63 6f 6d 6d 65 6e 64 65 64 20 74 6f 20 61 76 6f 69 64 20 74 68 | enerally.recommended.to.avoid.th |
| 5ad60 | 69 73 0a 20 20 20 20 20 20 63 61 73 74 2c 20 61 73 20 74 68 65 20 69 6e 74 65 67 65 72 20 72 65 | is.......cast,.as.the.integer.re |
| 5ad80 | 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 6f 66 20 61 6e 20 65 72 72 6f 72 20 69 73 20 6e 6f 74 20 | presentation.of.an.error.is.not. |
| 5ada0 | 73 74 61 62 6c 65 20 61 63 72 6f 73 73 20 73 6f 75 72 63 65 20 63 6f 64 65 20 63 68 61 6e 67 65 | stable.across.source.code.change |
| 5adc0 | 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 41 74 | s........</p>.......<p>.......At |
| 5ade0 | 74 65 6d 70 74 69 6e 67 20 74 6f 20 63 6f 6e 76 65 72 74 20 61 6e 20 69 6e 74 65 67 65 72 20 74 | tempting.to.convert.an.integer.t |
| 5ae00 | 68 61 74 20 64 6f 65 73 20 6e 6f 74 20 63 6f 72 72 65 73 70 6f 6e 64 20 74 6f 20 61 6e 79 20 65 | hat.does.not.correspond.to.any.e |
| 5ae20 | 72 72 6f 72 20 72 65 73 75 6c 74 73 20 69 6e 0a 20 20 20 20 20 20 73 61 66 65 74 79 2d 70 72 6f | rror.results.in.......safety-pro |
| 5ae40 | 74 65 63 74 65 64 20 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d 42 65 68 61 76 | tected.<a.href="#Undefined-Behav |
| 5ae60 | 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e 2e 0a 20 20 20 | ior">Undefined.Behavior</a>..... |
| 5ae80 | 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 |
| 5aea0 | 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 65 72 72 6f 72 54 6f 49 6e 74 22 3e 40 65 72 | l>.<li><a.href="#errorToInt">@er |
| 5aec0 | 72 6f 72 54 6f 49 6e 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a | rorToInt</a></li>.</ul>......... |
| 5aee0 | 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 69 6e 74 54 6f 46 6c 6f 61 74 22 3e 40 69 6e 74 54 | .......<h2.id="intToFloat">@intT |
| 5af00 | 6f 46 6c 6f 61 74 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 | oFloat</h2>........<pre><code.cl |
| 5af20 | 61 73 73 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 |
| 5af40 | 69 6e 22 3e 40 69 6e 74 54 6f 46 6c 6f 61 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 | in">@intToFloat</span>(<span.cla |
| 5af60 | 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 73 74 | ss="tok-kw">comptime</span>.Dest |
| 5af80 | 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 |
| 5afa0 | 65 3c 2f 73 70 61 6e 3e 2c 20 69 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | e</span>,.int:.<span.class="tok- |
| 5afc0 | 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 29 20 44 65 73 74 54 79 70 65 3c 2f 63 6f 64 65 3e 3c | kw">var</span>).DestType</code>< |
| 5afe0 | 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 6e 76 65 72 74 73 20 61 | /pre>.......<p>.......Converts.a |
| 5b000 | 6e 20 69 6e 74 65 67 65 72 20 74 6f 20 74 68 65 20 63 6c 6f 73 65 73 74 20 66 6c 6f 61 74 69 6e | n.integer.to.the.closest.floatin |
| 5b020 | 67 20 70 6f 69 6e 74 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 2e 20 54 6f 20 63 6f 6e 76 65 | g.point.representation..To.conve |
| 5b040 | 72 74 20 74 68 65 20 6f 74 68 65 72 20 77 61 79 2c 20 75 73 65 20 3c 61 20 68 72 65 66 3d 22 23 | rt.the.other.way,.use.<a.href="# |
| 5b060 | 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 61 3e 2e 20 54 68 69 | floatToInt">@floatToInt</a>..Thi |
| 5b080 | 73 20 63 61 73 74 20 69 73 20 61 6c 77 61 79 73 20 73 61 66 65 2e 0a 20 20 20 20 20 20 3c 2f 70 | s.cast.is.always.safe........</p |
| 5b0a0 | 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 50 74 72 | >...............<h2.id="intToPtr |
| 5b0c0 | 22 3e 40 69 6e 74 54 6f 50 74 72 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f | ">@intToPtr</h2>........<pre><co |
| 5b0e0 | 64 65 20 63 6c 61 73 73 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- |
| 5b100 | 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 3c 73 70 61 6e 20 | builtin">@intToPtr</span>(<span. |
| 5b120 | 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 44 | class="tok-kw">comptime</span>.D |
| 5b140 | 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 65 22 3e | estType:.<span.class="tok-type"> |
| 5b160 | 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 73 73 3d 22 74 | type</span>,.int:.<span.class="t |
| 5b180 | 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 29 20 44 65 73 74 54 79 70 65 3c | ok-type">usize</span>).DestType< |
| 5b1a0 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 6e | /code></pre>.......<p>.......Con |
| 5b1c0 | 76 65 72 74 73 20 61 6e 20 69 6e 74 65 67 65 72 20 74 6f 20 61 20 70 6f 69 6e 74 65 72 2e 20 54 | verts.an.integer.to.a.pointer..T |
| 5b1e0 | 6f 20 63 6f 6e 76 65 72 74 20 74 68 65 20 6f 74 68 65 72 20 77 61 79 2c 20 75 73 65 20 3c 61 20 | o.convert.the.other.way,.use.<a. |
| 5b200 | 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 61 3e 2e 0a | href="#ptrToInt">@ptrToInt</a>.. |
| 5b220 | 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= |
| 5b240 | 22 49 6e 74 54 79 70 65 22 3e 40 49 6e 74 54 79 70 65 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c | "IntType">@IntType</h2>........< |
| 5b260 | 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 |
| 5b280 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 49 6e 74 54 79 70 65 3c 2f 73 70 61 6e 3e 28 | s="tok-builtin">@IntType</span>( |
| 5b2a0 | 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 |
| 5b2c0 | 70 61 6e 3e 20 69 73 5f 73 69 67 6e 65 64 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | pan>.is_signed:.<span.class="tok |
| 5b2e0 | 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | -type">bool</span>,.<span.class= |
| 5b300 | 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 62 69 74 5f 63 6f 75 | "tok-kw">comptime</span>.bit_cou |
| 5b320 | 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f | nt:.<span.class="tok-type">u32</ |
| 5b340 | 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 | span>).<span.class="tok-type">ty |
| 5b360 | 70 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e | pe</span></code></pre>.......<p> |
| 5b380 | 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 20 61 6e 20 | .......This.function.returns.an. |
| 5b3a0 | 69 6e 74 65 67 65 72 20 74 79 70 65 20 77 69 74 68 20 74 68 65 20 67 69 76 65 6e 20 73 69 67 6e | integer.type.with.the.given.sign |
| 5b3c0 | 6e 65 73 73 20 61 6e 64 20 62 69 74 20 63 6f 75 6e 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | ness.and.bit.count........</p>.. |
| 5b3e0 | 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 6d 61 78 56 61 6c 75 65 22 3e 40 6d | ............<h2.id="maxValue">@m |
| 5b400 | 61 78 56 61 6c 75 65 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 | axValue</h2>........<pre><code.c |
| 5b420 | 6c 61 73 73 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 |
| 5b440 | 74 69 6e 22 3e 40 6d 61 78 56 61 6c 75 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 | tin">@maxValue</span>(<span.clas |
| 5b460 | 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 |
| 5b480 | 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> |
| 5b4a0 | 29 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 |
| 5b4c0 | 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>....... |
| 5b4e0 | 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. |
| 5b500 | 74 68 65 20 6d 61 78 69 6d 75 6d 20 76 61 6c 75 65 20 6f 66 20 74 68 65 20 69 6e 74 65 67 65 72 | the.maximum.value.of.the.integer |
| 5b520 | 20 74 79 70 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 54 3c 2f 63 6f 64 65 3e | .type.<code.class="zig">T</code> |
| 5b540 | 2e 0a 20 20 20 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 |
| 5b560 | 20 72 65 73 75 6c 74 20 69 73 20 61 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65 20 63 6f 6e 73 74 61 | .result.is.a.compile.time.consta |
| 5b580 | 6e 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 | nt........</p>..............<h2. |
| 5b5a0 | 69 64 3d 22 6d 65 6d 62 65 72 43 6f 75 6e 74 22 3e 40 6d 65 6d 62 65 72 43 6f 75 6e 74 3c 2f 68 | id="memberCount">@memberCount</h |
| 5b5c0 | 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" |
| 5b5e0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6d 65 6d 62 | ><span.class="tok-builtin">@memb |
| 5b600 | 65 72 43 6f 75 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 | erCount</span>(<span.class="tok- |
| 5b620 | 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 |
| 5b640 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e | ss="tok-type">type</span>).<span |
| 5b660 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 3c 2f | .class="tok-type">comptime_int</ |
| 5b680 | 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | span></code></pre>.......<p>.... |
| 5b6a0 | 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 20 74 68 65 20 6e 75 6d | ...This.function.returns.the.num |
| 5b6c0 | 62 65 72 20 6f 66 20 6d 65 6d 62 65 72 73 20 69 6e 20 61 20 73 74 72 75 63 74 2c 20 65 6e 75 6d | ber.of.members.in.a.struct,.enum |
| 5b6e0 | 2c 20 6f 72 20 75 6e 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 | ,.or.union.type........</p>..... |
| 5b700 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 72 65 73 75 6c 74 20 69 73 20 61 20 63 6f 6d 70 | ..<p>.......The.result.is.a.comp |
| 5b720 | 69 6c 65 20 74 69 6d 65 20 63 6f 6e 73 74 61 6e 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | ile.time.constant........</p>... |
| 5b740 | 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 74 20 64 6f 65 73 20 6e 6f 74 20 69 6e 63 6c 75 64 | ....<p>.......It.does.not.includ |
| 5b760 | 65 20 66 75 6e 63 74 69 6f 6e 73 2c 20 76 61 72 69 61 62 6c 65 73 2c 20 6f 72 20 63 6f 6e 73 74 | e.functions,.variables,.or.const |
| 5b780 | 61 6e 74 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 | ants........</p>..............<h |
| 5b7a0 | 32 20 69 64 3d 22 6d 65 6d 62 65 72 4e 61 6d 65 22 3e 40 6d 65 6d 62 65 72 4e 61 6d 65 3c 2f 68 | 2.id="memberName">@memberName</h |
| 5b7c0 | 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" |
| 5b7e0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6d 65 6d 62 | ><span.class="tok-builtin">@memb |
| 5b800 | 65 72 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | erName</span>(<span.class="tok-k |
| 5b820 | 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | w">comptime</span>.T:.<span.clas |
| 5b840 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 | s="tok-type">type</span>,.<span. |
| 5b860 | 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 69 | class="tok-kw">comptime</span>.i |
| 5b880 | 6e 64 65 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 | ndex:.<span.class="tok-type">usi |
| 5b8a0 | 7a 65 3c 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 | ze</span>).[N]<span.class="tok-t |
| 5b8c0 | 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>..... |
| 5b8e0 | 20 20 3c 70 3e 52 65 74 75 72 6e 73 20 74 68 65 20 66 69 65 6c 64 20 6e 61 6d 65 20 6f 66 20 61 | ..<p>Returns.the.field.name.of.a |
| 5b900 | 20 73 74 72 75 63 74 2c 20 75 6e 69 6f 6e 2c 20 6f 72 20 65 6e 75 6d 2e 3c 2f 70 3e 0a 20 20 20 | .struct,.union,.or.enum.</p>.... |
| 5b920 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 72 65 73 75 6c 74 20 69 73 20 61 20 63 6f 6d | ...<p>.......The.result.is.a.com |
| 5b940 | 70 69 6c 65 20 74 69 6d 65 20 63 6f 6e 73 74 61 6e 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 | pile.time.constant........</p>.. |
| 5b960 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 74 20 64 6f 65 73 20 6e 6f 74 20 69 6e 63 6c 75 | .....<p>.......It.does.not.inclu |
| 5b980 | 64 65 20 66 75 6e 63 74 69 6f 6e 73 2c 20 76 61 72 69 61 62 6c 65 73 2c 20 6f 72 20 63 6f 6e 73 | de.functions,.variables,.or.cons |
| 5b9a0 | 74 61 6e 74 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c | tants........</p>..............< |
| 5b9c0 | 68 32 20 69 64 3d 22 6d 65 6d 62 65 72 54 79 70 65 22 3e 40 6d 65 6d 62 65 72 54 79 70 65 3c 2f | h2.id="memberType">@memberType</ |
| 5b9e0 | 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 |
| 5ba00 | 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 65 6d | "><span.class="tok-builtin">@mem |
| 5ba20 | 62 65 72 54 79 70 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | berType</span>(<span.class="tok- |
| 5ba40 | 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 |
| 5ba60 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e | ss="tok-type">type</span>,.<span |
| 5ba80 | 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>. |
| 5baa0 | 69 6e 64 65 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 | index:.<span.class="tok-type">us |
| 5bac0 | 69 7a 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | ize</span>).<span.class="tok-typ |
| 5bae0 | 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 20 20 | e">type</span></code></pre>..... |
| 5bb00 | 20 20 3c 70 3e 52 65 74 75 72 6e 73 20 74 68 65 20 66 69 65 6c 64 20 74 79 70 65 20 6f 66 20 61 | ..<p>Returns.the.field.type.of.a |
| 5bb20 | 20 73 74 72 75 63 74 20 6f 72 20 75 6e 69 6f 6e 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 | .struct.or.union.</p>........... |
| 5bb40 | 20 20 20 3c 68 32 20 69 64 3d 22 6d 65 6d 63 70 79 22 3e 40 6d 65 6d 63 70 79 3c 2f 68 32 3e 0a | ...<h2.id="memcpy">@memcpy</h2>. |
| 5bb60 | 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 |
| 5bb80 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6d 65 6d 63 70 79 3c | pan.class="tok-builtin">@memcpy< |
| 5bba0 | 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 6e 6f 61 6c | /span>(<span.class="tok-kw">noal |
| 5bbc0 | 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 63 6c 61 73 73 3d | ias</span>.dest:.[*]<span.class= |
| 5bbe0 | 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 |
| 5bc00 | 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 73 6f 75 72 63 65 | s="tok-kw">noalias</span>.source |
| 5bc20 | 3a 20 5b 2a 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c | :.[*]<span.class="tok-kw">const< |
| 5bc40 | 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 |
| 5bc60 | 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 20 63 6c 61 73 73 | </span>,.byte_count:.<span.class |
| 5bc80 | 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 2f 63 6f 64 65 3e | ="tok-type">usize</span>)</code> |
| 5bca0 | 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 | </pre>.......<p>.......This.func |
| 5bcc0 | 74 69 6f 6e 20 63 6f 70 69 65 73 20 62 79 74 65 73 20 66 72 6f 6d 20 6f 6e 65 20 72 65 67 69 6f | tion.copies.bytes.from.one.regio |
| 5bce0 | 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 6f 64 65 20 63 6c | n.of.memory.to.another..<code.cl |
| 5bd00 | 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 20 20 20 20 20 20 | ass="zig">dest</code>.and....... |
| 5bd20 | 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 63 65 3c 2f 63 6f | ....<code.class="zig">source</co |
| 5bd40 | 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 6d 75 73 74 20 6e | de>.are.both.pointers.and.must.n |
| 5bd60 | 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 20 20 20 3c 70 3e | ot.overlap........</p>.......<p> |
| 5bd80 | 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 61 20 6c 6f 77 20 6c 65 | .......This.function.is.a.low.le |
| 5bda0 | 76 65 6c 20 69 6e 74 72 69 6e 73 69 63 20 77 69 74 68 20 6e 6f 20 73 61 66 65 74 79 20 6d 65 63 | vel.intrinsic.with.no.safety.mec |
| 5bdc0 | 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 68 6f 75 6c 64 20 | hanisms..Most.code.......should. |
| 5bde0 | 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 61 64 20 75 | not.use.this.function,.instead.u |
| 5be00 | 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 20 20 20 20 | sing.something.like.this:....... |
| 5be20 | 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 |
| 5be40 | 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 |
| 5be60 | 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 2d 6e 75 6d 62 65 | >.(source[<span.class="tok-numbe |
| 5be80 | 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 2e 62 79 74 65 5f 63 6f 75 6e 74 5d 29 20 7c 62 2c 20 69 | r">0</span>...byte_count]).|b,.i |
| 5bea0 | 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 0a 20 20 20 20 | |.dest[i].=.b;</code></pre>..... |
| 5bec0 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 6f 70 74 69 6d 69 7a 65 72 20 69 73 20 69 6e 74 | ..<p>.......The.optimizer.is.int |
| 5bee0 | 65 6c 6c 69 67 65 6e 74 20 65 6e 6f 75 67 68 20 74 6f 20 74 75 72 6e 20 74 68 65 20 61 62 6f 76 | elligent.enough.to.turn.the.abov |
| 5bf00 | 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 20 20 20 20 3c | e.snippet.into.a.memcpy........< |
| 5bf20 | 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 68 65 72 65 20 69 73 20 61 6c 73 6f 20 61 20 73 74 61 | /p>.......<p>There.is.also.a.sta |
| 5bf40 | 6e 64 61 72 64 20 6c 69 62 72 61 72 79 20 66 75 6e 63 74 69 6f 6e 20 66 6f 72 20 74 68 69 73 3a | ndard.library.function.for.this: |
| 5bf60 | 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 |
| 5bf80 | 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 |
| 5bfa0 | 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 |
| 5bfc0 | 69 6e 22 3e 40 69 6d 70 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=" |
| 5bfe0 | 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>) |
| 5c000 | 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 22 74 6f 6b 2d | .mem;.mem.copy(<span.class="tok- |
| 5c020 | 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 20 63 6c 61 73 | type">u8</span>,.dest[<span.clas |
| 5c040 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 2e 62 79 74 65 5f 63 | s="tok-number">0</span>...byte_c |
| 5c060 | 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 6f 6b 2d 6e | ount],.source[<span.class="tok-n |
| 5c080 | 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 2e 62 79 74 65 5f 63 6f 75 6e 74 5d 29 3b 3c | umber">0</span>...byte_count]);< |
| 5c0a0 | 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 64 | /code></pre>..............<h2.id |
| 5c0c0 | 3d 22 6d 65 6d 73 65 74 22 3e 40 6d 65 6d 73 65 74 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 | ="memset">@memset</h2>........<p |
| 5c0e0 | 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 |
| 5c100 | 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 28 64 65 | ="tok-builtin">@memset</span>(de |
| 5c120 | 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 3e 75 38 | st:.[*]<span.class="tok-type">u8 |
| 5c140 | 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 74 79 70 | </span>,.c:.<span.class="tok-typ |
| 5c160 | 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 20 | e">u8</span>,.byte_count:.<span. |
| 5c180 | 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 2f | class="tok-type">usize</span>)</ |
| 5c1a0 | 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 |
| 5c1c0 | 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 6d 6f 72 | .function.sets.a.region.of.memor |
| 5c1e0 | 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 65 3e 2e | y.to.<code.class="zig">c</code>. |
| 5c200 | 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 3e 20 69 | .<code.class="zig">dest</code>.i |
| 5c220 | 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 20 3c 70 | s.a.pointer........</p>.......<p |
| 5c240 | 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 61 20 6c 6f 77 20 6c | >.......This.function.is.a.low.l |
| 5c260 | 65 76 65 6c 20 69 6e 74 72 69 6e 73 69 63 20 77 69 74 68 20 6e 6f 20 73 61 66 65 74 79 20 6d 65 | evel.intrinsic.with.no.safety.me |
| 5c280 | 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 75 6c 64 | chanisms..Most.......code.should |
| 5c2a0 | 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 61 64 20 | .not.use.this.function,.instead. |
| 5c2c0 | 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 20 20 20 | using.something.like.this:...... |
| 5c2e0 | 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 |
| 5c300 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6f 72 3c 2f 73 70 61 | g"><span.class="tok-kw">for</spa |
| 5c320 | 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 62 65 72 | n>.(dest[<span.class="tok-number |
| 5c340 | 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 2e 62 79 74 65 5f 63 6f 75 6e 74 5d 29 20 7c 2a 62 7c 20 62 | ">0</span>...byte_count]).|*b|.b |
| 5c360 | 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 0a 20 | .*.=.c;</code></pre>.......<p>.. |
| 5c380 | 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 65 6e | .....The.optimizer.is.intelligen |
| 5c3a0 | 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 70 70 | t.enough.to.turn.the.above.snipp |
| 5c3c0 | 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 20 20 | et.into.a.memset........</p>.... |
| 5c3e0 | 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 20 6c | ...<p>There.is.also.a.standard.l |
| 5c400 | 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 20 20 | ibrary.function.for.this:</p>... |
| 5c420 | 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 |
| 5c440 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 65 6d | .class="tok-kw">const</span>.mem |
| 5c460 | 20 3d 20 3c 73 70 61 6e 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 |
| 5c480 | 70 6f 72 74 3c 2f 73 70 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 |
| 5c4a0 | 22 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 6d | ">"std"</span>).mem;.m |
| 5c4c0 | 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 75 38 | em.set(<span.class="tok-type">u8 |
| 5c4e0 | 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 3e 0a | </span>,.dest,.c);</code></pre>. |
| 5c500 | 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 6d 69 6e 56 61 6c 75 65 22 3e 40 | .............<h2.id="minValue">@ |
| 5c520 | 6d 69 6e 56 61 6c 75 65 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 | minValue</h2>........<pre><code. |
| 5c540 | 63 6c 61 73 73 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 |
| 5c560 | 6c 74 69 6e 22 3e 40 6d 69 6e 56 61 6c 75 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 | ltin">@minValue</span>(<span.cla |
| 5c580 | 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:.< |
| 5c5a0 | 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 |
| 5c5c0 | 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 74 69 | >).<span.class="tok-type">compti |
| 5c5e0 | 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 20 20 | me_int</span></code></pre>...... |
| 5c600 | 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 | .<p>.......This.function.returns |
| 5c620 | 20 74 68 65 20 6d 69 6e 69 6d 75 6d 20 76 61 6c 75 65 20 6f 66 20 74 68 65 20 69 6e 74 65 67 65 | .the.minimum.value.of.the.intege |
| 5c640 | 72 20 74 79 70 65 20 54 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | r.type.T........</p>.......<p>.. |
| 5c660 | 20 20 20 20 20 54 68 65 20 72 65 73 75 6c 74 20 69 73 20 61 20 63 6f 6d 70 69 6c 65 20 74 69 6d | .....The.result.is.a.compile.tim |
| 5c680 | 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 0a 20 20 | e.constant........</p>.......... |
| 5c6a0 | 20 20 20 20 3c 68 32 20 69 64 3d 22 6d 6f 64 22 3e 40 6d 6f 64 3c 2f 68 32 3e 0a 0a 20 20 20 20 | ....<h2.id="mod">@mod</h2>...... |
| 5c6c0 | 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 |
| 5c6e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6d 6f 64 3c 2f 73 70 61 6e 3e 28 6e | lass="tok-builtin">@mod</span>(n |
| 5c700 | 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 2f | umerator:.T,.denominator:.T).T</ |
| 5c720 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 4d 6f 64 75 | code></pre>.......<p>.......Modu |
| 5c740 | 6c 75 73 20 64 69 76 69 73 69 6f 6e 2e 20 46 6f 72 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 | lus.division..For.unsigned.integ |
| 5c760 | 65 72 73 20 74 68 69 73 20 69 73 20 74 68 65 20 73 61 6d 65 20 61 73 0a 20 20 20 20 20 20 3c 63 | ers.this.is.the.same.as.......<c |
| 5c780 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6e 75 6d 65 72 61 74 6f 72 20 25 20 64 65 6e 6f | ode.class="zig">numerator.%.deno |
| 5c7a0 | 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 |
| 5c7c0 | 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. |
| 5c7e0 | 26 61 6d 70 3b 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 | &gt;.<span.class="tok-number |
| 5c800 | 22 3e 30 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | ">0</span></code>........</p>... |
| 5c820 | 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 | ....<ul>...........<li><code.cla |
| 5c840 | 73 73 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 |
| 5c860 | 6e 22 3e 40 6d 6f 64 3c 2f 73 70 61 6e 3e 28 2d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | n">@mod</span>(-<span.class="tok |
| 5c880 | 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | -number">5</span>,.<span.class=" |
| 5c8a0 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 | tok-number">3</span>).==.<span.c |
| 5c8c0 | 6c 61 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 | lass="tok-number">1</span></code |
| 5c8e0 | 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 73 | ></li>...........<li><code.class |
| 5c900 | 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" |
| 5c920 | 3e 40 64 69 76 46 6c 6f 6f 72 3c 2f 73 70 61 6e 3e 28 61 2c 20 62 29 20 2b 20 3c 73 70 61 6e 20 | >@divFloor</span>(a,.b).+.<span. |
| 5c940 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6d 6f 64 3c 2f 73 70 61 6e 3e 28 | class="tok-builtin">@mod</span>( |
| 5c960 | 61 2c 20 62 29 20 3d 3d 20 61 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 | a,.b).==.a</code></li>.......</u |
| 5c980 | 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 46 6f 72 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 68 61 74 20 | l>.......<p>For.a.function.that. |
| 5c9a0 | 72 65 74 75 72 6e 73 20 61 6e 20 65 72 72 6f 72 20 63 6f 64 65 2c 20 73 65 65 20 3c 63 6f 64 65 | returns.an.error.code,.see.<code |
| 5c9c0 | 20 63 6c 61 73 73 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 |
| 5c9e0 | 69 6c 74 69 6e 22 3e 40 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 |
| 5ca00 | 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 |
| 5ca20 | 6e 3e 29 2e 6d 61 74 68 2e 6d 6f 64 3c 2f 63 6f 64 65 3e 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | n>).math.mod</code>.</p>.......< |
| 5ca40 | 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= |
| 5ca60 | 22 23 72 65 6d 22 3e 40 72 65 6d 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 | "#rem">@rem</a></li>.</ul>...... |
| 5ca80 | 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 6d 75 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 | .........<h2.id="mulWithOverflow |
| 5caa0 | 22 3e 40 6d 75 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c | ">@mulWithOverflow</h2>........< |
| 5cac0 | 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 |
| 5cae0 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6d 75 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 | s="tok-builtin">@mulWithOverflow |
| 5cb00 | 3c 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 |
| 5cb20 | 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ptime</span>.T:.<span.class="tok |
| 5cb40 | 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 61 3a 20 54 2c 20 62 3a 20 54 2c 20 | -type">type</span>,.a:.T,.b:.T,. |
| 5cb60 | 72 65 73 75 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 | result:.*T).<span.class="tok-typ |
| 5cb80 | 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 | e">bool</span></code></pre>..... |
| 5cba0 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 50 65 72 66 6f 72 6d 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 | ..<p>.......Performs.<code.class |
| 5cbc0 | 3d 22 7a 69 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 | ="zig">result.*.=.a.*.b</code>.. |
| 5cbe0 | 49 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 | If.overflow.or.underflow.occurs, |
| 5cc00 | 0a 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 66 6c 6f 77 65 64 | ...........stores.the.overflowed |
| 5cc20 | 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 3e 72 65 73 75 6c | .bits.in.<code.class="zig">resul |
| 5cc40 | 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 20 63 6c 61 73 73 | t</code>.and.returns.<code.class |
| 5cc60 | 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 |
| 5cc80 | 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ue</span></code>................ |
| 5cca0 | 20 20 20 20 49 66 20 6e 6f 20 6f 76 65 72 66 6c 6f 77 20 6f 72 20 75 6e 64 65 72 66 6c 6f 77 20 | ....If.no.overflow.or.underflow. |
| 5ccc0 | 6f 63 63 75 72 73 2c 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | occurs,.returns.<code.class="zig |
| 5cce0 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f | "><span.class="tok-null">false</ |
| 5cd00 | 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>........ |
| 5cd20 | 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 6e 65 77 53 74 61 63 6b 43 61 6c 6c 22 3e 40 6e 65 77 | ......<h2.id="newStackCall">@new |
| 5cd40 | 53 74 61 63 6b 43 61 6c 6c 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 | StackCall</h2>........<pre><code |
| 5cd60 | 20 63 6c 61 73 73 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 |
| 5cd80 | 69 6c 74 69 6e 22 3e 40 6e 65 77 53 74 61 63 6b 43 61 6c 6c 3c 2f 73 70 61 6e 3e 28 6e 65 77 5f | iltin">@newStackCall</span>(new_ |
| 5cda0 | 73 74 61 63 6b 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 | stack:.[]<span.class="tok-type"> |
| 5cdc0 | 75 38 3c 2f 73 70 61 6e 3e 2c 20 66 75 6e 63 74 69 6f 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | u8</span>,.function:.<span.class |
| 5cde0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 2c 20 61 72 67 73 3a 20 2e 2e 2e 29 | ="tok-kw">var</span>,.args:....) |
| 5ce00 | 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> |
| 5ce20 | 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 |
| 5ce40 | 69 73 20 63 61 6c 6c 73 20 61 20 66 75 6e 63 74 69 6f 6e 2c 20 69 6e 20 74 68 65 20 73 61 6d 65 | is.calls.a.function,.in.the.same |
| 5ce60 | 20 77 61 79 20 74 68 61 74 20 69 6e 76 6f 6b 69 6e 67 20 61 6e 20 65 78 70 72 65 73 73 69 6f 6e | .way.that.invoking.an.expression |
| 5ce80 | 20 77 69 74 68 20 70 61 72 65 6e 74 68 65 73 65 73 20 64 6f 65 73 2e 20 48 6f 77 65 76 65 72 2c | .with.parentheses.does..However, |
| 5cea0 | 0a 20 20 20 20 20 20 69 6e 73 74 65 61 64 20 6f 66 20 75 73 69 6e 67 20 74 68 65 20 73 61 6d 65 | .......instead.of.using.the.same |
| 5cec0 | 20 73 74 61 63 6b 20 61 73 20 74 68 65 20 63 61 6c 6c 65 72 2c 20 74 68 65 20 66 75 6e 63 74 69 | .stack.as.the.caller,.the.functi |
| 5cee0 | 6f 6e 20 75 73 65 73 20 74 68 65 20 73 74 61 63 6b 20 70 72 6f 76 69 64 65 64 20 69 6e 20 74 68 | on.uses.the.stack.provided.in.th |
| 5cf00 | 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6e 65 77 5f 73 74 61 63 6b 3c 2f 63 | e.<code.class="zig">new_stack</c |
| 5cf20 | 6f 64 65 3e 0a 20 20 20 20 20 20 70 61 72 61 6d 65 74 65 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | ode>.......parameter........</p> |
| 5cf40 | 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< |
| 5cf60 | 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. |
| 5cf80 | 63 6c 61 73 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. |
| 5cfa0 | 3d 20 3c 73 70 61 6e 20 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 |
| 5cfc0 | 6f 72 74 3c 2f 73 70 61 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" |
| 5cfe0 | 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. |
| 5d000 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 | class="tok-kw">const</span>.asse |
| 5d020 | 72 74 20 3d 20 73 74 64 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c | rt.=.std.debug.assert;..<span.cl |
| 5d040 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6e 65 77 5f 73 74 61 63 | ass="tok-kw">var</span>.new_stac |
| 5d060 | 6b 5f 62 79 74 65 73 3a 20 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | k_bytes:.[<span.class="tok-numbe |
| 5d080 | 72 22 3e 31 30 32 34 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | r">1024</span>]<span.class="tok- |
| 5d0a0 | 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 |
| 5d0c0 | 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 |
| 5d0e0 | 6e 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 |
| 5d100 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 61 6c 6c 69 6e 67 | an.class="tok-str">"calling |
| 5d120 | 20 61 20 66 75 6e 63 74 69 6f 6e 20 77 69 74 68 20 61 20 6e 65 77 20 73 74 61 63 6b 26 71 75 6f | .a.function.with.a.new.stack&quo |
| 5d140 | 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 |
| 5d160 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 72 67 20 3d 20 3c 73 70 61 6e 20 63 6c | -kw">const</span>.arg.=.<span.cl |
| 5d180 | 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 34 3c 2f 73 70 61 6e 3e 3b 0a 0a 20 | ass="tok-number">1234</span>;... |
| 5d1a0 | 20 20 20 3c 73 70 61 6e 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 |
| 5d1c0 | 70 61 6e 3e 20 61 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | pan>.a.=.<span.class="tok-builti |
| 5d1e0 | 6e 22 3e 40 6e 65 77 53 74 61 63 6b 43 61 6c 6c 3c 2f 73 70 61 6e 3e 28 6e 65 77 5f 73 74 61 63 | n">@newStackCall</span>(new_stac |
| 5d200 | 6b 5f 62 79 74 65 73 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | k_bytes[<span.class="tok-number" |
| 5d220 | 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | >0</span>..<span.class="tok-numb |
| 5d240 | 65 72 22 3e 35 31 32 3c 2f 73 70 61 6e 3e 5d 2c 20 74 61 72 67 65 74 46 75 6e 63 74 69 6f 6e 2c | er">512</span>],.targetFunction, |
| 5d260 | 20 61 72 67 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 | .arg);.....<span.class="tok-kw"> |
| 5d280 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | const</span>.b.=.<span.class="to |
| 5d2a0 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6e 65 77 53 74 61 63 6b 43 61 6c 6c 3c 2f 73 70 61 6e 3e 28 | k-builtin">@newStackCall</span>( |
| 5d2c0 | 6e 65 77 5f 73 74 61 63 6b 5f 62 79 74 65 73 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | new_stack_bytes[<span.class="tok |
| 5d2e0 | 2d 6e 75 6d 62 65 72 22 3e 35 31 32 3c 2f 73 70 61 6e 3e 2e 2e 5d 2c 20 74 61 72 67 65 74 46 75 | -number">512</span>..],.targetFu |
| 5d300 | 6e 63 74 69 6f 6e 2c 20 61 72 67 29 3b 0a 20 20 20 20 5f 20 3d 20 74 61 72 67 65 74 46 75 6e 63 | nction,.arg);....._.=.targetFunc |
| 5d320 | 74 69 6f 6e 28 61 72 67 29 3b 0a 0a 20 20 20 20 61 73 73 65 72 74 28 61 72 67 20 3d 3d 20 3c 73 | tion(arg);......assert(arg.==.<s |
| 5d340 | 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 |
| 5d360 | 6e 3e 29 3b 0a 20 20 20 20 61 73 73 65 72 74 28 61 20 26 6c 74 3b 20 62 29 3b 0a 7d 0a 0a 3c 73 | n>);.....assert(a.<.b);.}..<s |
| 5d380 | 70 61 6e 20 63 6c 61 73 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 |
| 5d3a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 74 61 72 67 65 74 46 75 6e 63 74 69 6f 6e | an.class="tok-fn">targetFunction |
| 5d3c0 | 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 |
| 5d3e0 | 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 |
| 5d400 | 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 72 74 28 78 | ype">usize</span>.{.....assert(x |
| 5d420 | 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 33 | .==.<span.class="tok-number">123 |
| 5d440 | 34 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | 4</span>);......<span.class="tok |
| 5d460 | 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6c 6f 63 61 6c 5f 76 61 72 69 61 62 6c 65 3a 20 | -kw">var</span>.local_variable:. |
| 5d480 | 3c 73 70 61 6e 20 63 6c 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 |
| 5d4a0 | 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 32 3c | >.=.<span.class="tok-number">42< |
| 5d4c0 | 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" |
| 5d4e0 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 70 74 72 20 3d 20 26 61 6d 70 3b 6c 6f 63 61 6c 5f 76 | >const</span>.ptr.=.&local_v |
| 5d500 | 61 72 69 61 62 6c 65 3b 0a 20 20 20 20 70 74 72 2e 2a 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | ariable;.....ptr.*.+=.<span.clas |
| 5d520 | 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 61 73 | s="tok-number">1</span>;......as |
| 5d540 | 73 65 72 74 28 6c 6f 63 61 6c 5f 76 61 72 69 61 62 6c 65 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 | sert(local_variable.==.<span.cla |
| 5d560 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 33 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 | ss="tok-number">43</span>);..... |
| 5d580 | 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 |
| 5d5a0 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 74 | n>.<span.class="tok-builtin">@pt |
| 5d5c0 | 72 54 6f 49 6e 74 3c 2f 73 70 61 6e 3e 28 70 74 72 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | rToInt</span>(ptr);.}</code></pr |
| 5d5e0 | 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 |
| 5d600 | 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 31 2f 31 20 63 61 6c 6c 69 6e 67 20 | .test.test.zig.Test.1/1.calling. |
| 5d620 | 61 20 66 75 6e 63 74 69 6f 6e 20 77 69 74 68 20 61 20 6e 65 77 20 73 74 61 63 6b 2e 2e 2e 4f 4b | a.function.with.a.new.stack...OK |
| 5d640 | 0a 41 6c 6c 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 | .All.tests.passed..</code></pre> |
| 5d660 | 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 6e 6f 49 6e 6c 69 6e 65 43 | ...............<h2.id="noInlineC |
| 5d680 | 61 6c 6c 22 3e 40 6e 6f 49 6e 6c 69 6e 65 43 61 6c 6c 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c | all">@noInlineCall</h2>........< |
| 5d6a0 | 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 |
| 5d6c0 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6e 6f 49 6e 6c 69 6e 65 43 61 6c 6c 3c 2f 73 | s="tok-builtin">@noInlineCall</s |
| 5d6e0 | 70 61 6e 3e 28 66 75 6e 63 74 69 6f 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | pan>(function:.<span.class="tok- |
| 5d700 | 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 2c 20 61 72 67 73 3a 20 2e 2e 2e 29 20 3c 73 70 61 6e | kw">var</span>,.args:....).<span |
| 5d720 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | .class="tok-kw">var</span></code |
| 5d740 | 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 63 61 6c | ></pre>.......<p>.......This.cal |
| 5d760 | 6c 73 20 61 20 66 75 6e 63 74 69 6f 6e 2c 20 69 6e 20 74 68 65 20 73 61 6d 65 20 77 61 79 20 74 | ls.a.function,.in.the.same.way.t |
| 5d780 | 68 61 74 20 69 6e 76 6f 6b 69 6e 67 20 61 6e 20 65 78 70 72 65 73 73 69 6f 6e 20 77 69 74 68 20 | hat.invoking.an.expression.with. |
| 5d7a0 | 70 61 72 65 6e 74 68 65 73 65 73 20 64 6f 65 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | parentheses.does:.......</p>.... |
| 5d7c0 | 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>< |
| 5d7e0 | 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 |
| 5d800 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d | s="tok-kw">const</span>.assert.= |
| 5d820 | 20 3c 73 70 61 6e 20 63 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 |
| 5d840 | 72 74 3c 2f 73 70 61 6e 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"> |
| 5d860 | 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 61 73 | "std"</span>).debug.as |
| 5d880 | 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 73 74 | sert;..<span.class="tok-kw">test |
| 5d8a0 | 3c 2f 73 70 61 6e 3e 20 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 |
| 5d8c0 | 75 6f 74 3b 6e 6f 69 6e 6c 69 6e 65 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 26 71 75 6f 74 3b | uot;noinline.function.call" |
| 5d8e0 | 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 73 | </span>.{.....assert(<span.class |
| 5d900 | 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6e 6f 49 6e 6c 69 6e 65 43 61 6c 6c 3c 2f 73 70 | ="tok-builtin">@noInlineCall</sp |
| 5d920 | 61 6e 3e 28 61 64 64 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 | an>(add,.<span.class="tok-number |
| 5d940 | 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 |
| 5d960 | 62 65 72 22 3e 39 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ber">9</span>).==.<span.class="t |
| 5d980 | 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 | ok-number">12</span>);.}..<span. |
| 5d9a0 | 63 6c 61 73 73 3d 22 74 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 |
| 5d9c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 61 64 64 3c 2f 73 70 61 6e 3e 28 61 3a 20 3c 73 70 61 | lass="tok-fn">add</span>(a:.<spa |
| 5d9e0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 20 62 | n.class="tok-type">i32</span>,.b |
| 5da00 | 3a 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 |
| 5da20 | 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c | an>).<span.class="tok-type">i32< |
| 5da40 | 2f 73 70 61 6e 3e 20 7b 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 |
| 5da60 | 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 61 20 2b 20 62 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c | ">return</span>.a.+.b;.}</code>< |
| 5da80 | 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">$. |
| 5daa0 | 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 31 2f 31 20 6e 6f 69 6e 6c | zig.test.test.zig.Test.1/1.noinl |
| 5dac0 | 69 6e 65 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 2e 2e 2e 4f 4b 0a 41 6c 6c 20 74 65 73 74 73 | ine.function.call...OK.All.tests |
| 5dae0 | 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 |
| 5db00 | 3e 0a 20 20 20 20 20 20 55 6e 6c 69 6b 65 20 61 20 6e 6f 72 6d 61 6c 20 66 75 6e 63 74 69 6f 6e | >.......Unlike.a.normal.function |
| 5db20 | 20 63 61 6c 6c 2c 20 68 6f 77 65 76 65 72 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 | .call,.however,.<code.class="zig |
| 5db40 | 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 6e 6f 49 | "><span.class="tok-builtin">@noI |
| 5db60 | 6e 6c 69 6e 65 43 61 6c 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 67 75 61 72 61 6e 74 65 | nlineCall</span></code>.guarante |
| 5db80 | 65 73 20 74 68 61 74 20 74 68 65 20 63 61 6c 6c 0a 20 20 20 20 20 20 77 69 6c 6c 20 6e 6f 74 20 | es.that.the.call.......will.not. |
| 5dba0 | 62 65 20 69 6e 6c 69 6e 65 64 2e 20 49 66 20 74 68 65 20 63 61 6c 6c 20 6d 75 73 74 20 62 65 20 | be.inlined..If.the.call.must.be. |
| 5dbc0 | 69 6e 6c 69 6e 65 64 2c 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 69 73 20 65 6d 69 74 | inlined,.a.compile.error.is.emit |
| 5dbe0 | 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 53 65 65 20 61 6c 73 | ted........</p>.......<p>See.als |
| 5dc00 | 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 69 6e 6c 69 6e 65 43 | o:</p><ul>.<li><a.href="#inlineC |
| 5dc20 | 61 6c 6c 22 3e 40 69 6e 6c 69 6e 65 43 61 6c 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a | all">@inlineCall</a></li>.</ul>. |
| 5dc40 | 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 4f 70 61 71 75 65 54 79 70 65 | ..............<h2.id="OpaqueType |
| 5dc60 | 22 3e 40 4f 70 61 71 75 65 54 79 70 65 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c | ">@OpaqueType</h2>........<pre>< |
| 5dc80 | 63 6f 64 65 20 63 6c 61 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 |
| 5dca0 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 4f 70 61 71 75 65 54 79 70 65 3c 2f 73 70 61 6e 3e 28 29 20 | k-builtin">@OpaqueType</span>(). |
| 5dcc0 | 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 |
| 5dce0 | 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 | n></code></pre>.......<p>....... |
| 5dd00 | 43 72 65 61 74 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 | Creates.a.new.type.with.an.unkno |
| 5dd20 | 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 |
| 5dd40 | 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 20 | ment........</p>.......<p>...... |
| 5dd60 | 20 54 68 69 73 20 69 73 20 74 79 70 69 63 61 6c 6c 79 20 75 73 65 64 20 66 6f 72 20 74 79 70 65 | .This.is.typically.used.for.type |
| 5dd80 | 20 73 61 66 65 74 79 20 77 68 65 6e 20 69 6e 74 65 72 61 63 74 69 6e 67 20 77 69 74 68 20 43 20 | .safety.when.interacting.with.C. |
| 5dda0 | 63 6f 64 65 20 74 68 61 74 20 64 6f 65 73 20 6e 6f 74 20 65 78 70 6f 73 65 20 73 74 72 75 63 74 | code.that.does.not.expose.struct |
| 5ddc0 | 20 64 65 74 61 69 6c 73 2e 0a 20 20 20 20 20 20 45 78 61 6d 70 6c 65 3a 0a 20 20 20 20 20 20 3c | .details........Example:.......< |
| 5dde0 | 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 |
| 5de00 | 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 |
| 5de20 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 44 | an.class="tok-kw">const</span>.D |
| 5de40 | 65 72 70 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | erp.=.<span.class="tok-builtin"> |
| 5de60 | 40 4f 70 61 71 75 65 54 79 70 65 3c 2f 73 70 61 6e 3e 28 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 | @OpaqueType</span>();.<span.clas |
| 5de80 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 57 61 74 20 3d 20 3c 73 | s="tok-kw">const</span>.Wat.=.<s |
| 5dea0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 4f 70 61 71 75 65 54 | pan.class="tok-builtin">@OpaqueT |
| 5dec0 | 79 70 65 3c 2f 73 70 61 6e 3e 28 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ype</span>();..<span.class="tok- |
| 5dee0 | 6b 77 22 3e 65 78 74 65 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | kw">extern</span>.<span.class="t |
| 5df00 | 6f 6b 2d 6b 77 22 3e 66 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 |
| 5df20 | 6b 2d 66 6e 22 3e 62 61 72 3c 2f 73 70 61 6e 3e 28 64 3a 20 2a 44 65 72 70 29 20 3c 73 70 61 6e | k-fn">bar</span>(d:.*Derp).<span |
| 5df40 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 3b 0a 3c | .class="tok-type">void</span>;.< |
| 5df60 | 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 |
| 5df80 | 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> |
| 5dfa0 | 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> |
| 5dfc0 | 28 77 3a 20 2a 57 61 74 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | (w:.*Wat).<span.class="tok-type" |
| 5dfe0 | 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 0a 3c 73 | >void</span>.{.....bar(w);.}..<s |
| 5e000 | 70 61 6e 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>.< |
| 5e020 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 63 61 6c 6c 20 | span.class="tok-str">"call. |
| 5e040 | 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 70 61 6e | foo"</span>.{.....foo(<span |
| 5e060 | 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 |
| 5e080 | 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 |
| 5e0a0 | 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. |
| 5e0c0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 | <span.class="t0_1">/home/andy/de |
| 5e0e0 | 76 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 39 3a 20 3c | v/zig/docgen_tmp/test.zig:6:9:.< |
| 5e100 | 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: |
| 5e120 | 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 20 65 78 70 65 63 | </span><span.class="t0_1">.expec |
| 5e140 | 74 65 64 20 74 79 70 65 20 27 2a 44 65 72 70 27 2c 20 66 6f 75 6e 64 20 27 2a 57 61 74 27 3c 2f | ted.type.'*Derp',.found.'*Wat'</ |
| 5e160 | 73 70 61 6e 3e 0a 20 20 20 20 62 61 72 28 77 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | span>.....bar(w);.........<span. |
| 5e180 | 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 |
| 5e1a0 | 73 73 3d 22 74 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 | ss="t0_1">/home/andy/dev/zig/doc |
| 5e1c0 | 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 70 | gen_tmp/test.zig:6:9:.</span><sp |
| 5e1e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 3c 2f 73 70 61 6e 3e 3c 73 70 | an.class="t36_1">note:</span><sp |
| 5e200 | 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 20 70 6f 69 6e 74 65 72 20 74 79 70 65 20 63 68 | an.class="t0_1">.pointer.type.ch |
| 5e220 | 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 74 | ild.'Wat'.cannot.cast.into.point |
| 5e240 | 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 20 | er.type.child.'Derp'</span>..... |
| 5e260 | 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 32 | bar(w);.........<span.class="t32 |
| 5e280 | 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>...... |
| 5e2a0 | 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 70 61 6e 69 63 22 3e 40 70 61 6e 69 63 3c 2f | .........<h2.id="panic">@panic</ |
| 5e2c0 | 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 |
| 5e2e0 | 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 61 6e | "><span.class="tok-builtin">@pan |
| 5e300 | 69 63 3c 2f 73 70 61 6e 3e 28 6d 65 73 73 61 67 65 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 | ic</span>(message:.[]<span.class |
| 5e320 | 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 |
| 5e340 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 | ss="tok-type">u8</span>).<span.c |
| 5e360 | 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>< |
| 5e380 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 49 6e 76 | /code></pre>.......<p>.......Inv |
| 5e3a0 | 6f 6b 65 73 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 2e | okes.the.panic.handler.function. |
| 5e3c0 | 20 42 79 20 64 65 66 61 75 6c 74 20 74 68 65 20 70 61 6e 69 63 20 68 61 6e 64 6c 65 72 20 66 75 | .By.default.the.panic.handler.fu |
| 5e3e0 | 6e 63 74 69 6f 6e 0a 20 20 20 20 20 20 63 61 6c 6c 73 20 74 68 65 20 70 75 62 6c 69 63 20 3c 63 | nction.......calls.the.public.<c |
| 5e400 | 6f 64 65 20 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 66 75 6e | ode.class="zig">panic</code>.fun |
| 5e420 | 63 74 69 6f 6e 20 65 78 70 6f 73 65 64 20 69 6e 20 74 68 65 20 72 6f 6f 74 20 73 6f 75 72 63 65 | ction.exposed.in.the.root.source |
| 5e440 | 20 66 69 6c 65 2c 20 6f 72 0a 20 20 20 20 20 20 20 20 20 20 69 66 20 74 68 65 72 65 20 69 73 20 | .file,.or...........if.there.is. |
| 5e460 | 6e 6f 74 20 6f 6e 65 20 73 70 65 63 69 66 69 65 64 2c 20 69 6e 76 6f 6b 65 73 20 74 68 65 20 6f | not.one.specified,.invokes.the.o |
| 5e480 | 6e 65 20 70 72 6f 76 69 64 65 64 20 69 6e 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ne.provided.in.<code.class="zig" |
| 5e4a0 | 3e 73 74 64 2f 73 70 65 63 69 61 6c 2f 70 61 6e 69 63 2e 7a 69 67 3c 2f 63 6f 64 65 3e 2e 0a 20 | >std/special/panic.zig</code>... |
| 5e4c0 | 20 20 20 20 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 | .....</p>.......<p>Generally.it. |
| 5e4e0 | 69 73 20 62 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 | is.better.to.use.<code.class="zi |
| 5e500 | 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 |
| 5e520 | 70 6f 72 74 3c 2f 73 70 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 |
| 5e540 | 22 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. |
| 5e560 | 70 61 6e 69 63 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 48 6f 77 65 76 65 72 2c | panic</code>............However, |
| 5e580 | 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=" |
| 5e5a0 | 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 3c 2f 63 6f 64 65 | tok-builtin">@panic</span></code |
| 5e5c0 | 3e 20 63 61 6e 20 62 65 20 75 73 65 66 75 6c 20 66 6f 72 20 32 20 73 63 65 6e 61 72 69 6f 73 3a | >.can.be.useful.for.2.scenarios: |
| 5e5e0 | 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>.........< |
| 5e600 | 6c 69 3e 46 72 6f 6d 20 6c 69 62 72 61 72 79 20 63 6f 64 65 2c 20 63 61 6c 6c 69 6e 67 20 74 68 | li>From.library.code,.calling.th |
| 5e620 | 65 20 70 72 6f 67 72 61 6d 6d 65 72 27 73 20 70 61 6e 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 66 | e.programmer's.panic.function.if |
| 5e640 | 20 74 68 65 79 20 65 78 70 6f 73 65 64 20 6f 6e 65 20 69 6e 20 74 68 65 20 72 6f 6f 74 20 73 6f | .they.exposed.one.in.the.root.so |
| 5e660 | 75 72 63 65 20 66 69 6c 65 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 57 68 65 6e | urce.file.</li>.........<li>When |
| 5e680 | 20 6d 69 78 69 6e 67 20 43 20 61 6e 64 20 5a 69 67 20 63 6f 64 65 2c 20 63 61 6c 6c 69 6e 67 20 | .mixing.C.and.Zig.code,.calling. |
| 5e6a0 | 74 68 65 20 63 61 6e 6f 6e 69 63 61 6c 20 70 61 6e 69 63 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 | the.canonical.panic.implementati |
| 5e6c0 | 6f 6e 20 61 63 72 6f 73 73 20 6d 75 6c 74 69 70 6c 65 20 2e 6f 20 66 69 6c 65 73 2e 3c 2f 6c 69 | on.across.multiple..o.files.</li |
| 5e6e0 | 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a | >.......</ul>.......<p>See.also: |
| 5e700 | 3c 2f 70 3e 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 | </p><ul>.<li><a.href="#Root-Sour |
| 5e720 | 63 65 2d 46 69 6c 65 22 3e 52 6f 6f 74 20 53 6f 75 72 63 65 20 46 69 6c 65 3c 2f 61 3e 3c 2f 6c | ce-File">Root.Source.File</a></l |
| 5e740 | 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 70 | i>.</ul>...............<h2.id="p |
| 5e760 | 6f 70 43 6f 75 6e 74 22 3e 40 70 6f 70 43 6f 75 6e 74 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c | opCount">@popCount</h2>........< |
| 5e780 | 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 |
| 5e7a0 | 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> |
| 5e7c0 | 28 69 6e 74 65 67 65 72 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 | (integer:.<span.class="tok-kw">v |
| 5e7e0 | 61 72 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 | ar</span>).<span.class="tok-kw"> |
| 5e800 | 76 61 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 | var</span></code></pre>.......<p |
| 5e820 | 3e 43 6f 75 6e 74 73 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 62 69 74 73 20 73 65 74 20 69 | >Counts.the.number.of.bits.set.i |
| 5e840 | 6e 20 61 6e 20 69 6e 74 65 67 65 72 2e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 | n.an.integer.</p>.......<p>..... |
| 5e860 | 20 20 49 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 69 6e 74 65 67 65 72 3c 2f | ..If.<code.class="zig">integer</ |
| 5e880 | 63 6f 64 65 3e 20 69 73 20 6b 6e 6f 77 6e 20 61 74 20 3c 61 20 68 72 65 66 3d 22 23 63 6f 6d 70 | code>.is.known.at.<a.href="#comp |
| 5e8a0 | 74 69 6d 65 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 61 3e 2c 20 74 68 65 20 72 65 74 75 72 6e 20 74 | time">comptime</a>,.the.return.t |
| 5e8c0 | 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 |
| 5e8e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 | lass="tok-type">comptime_int</sp |
| 5e900 | 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 4f 74 68 65 72 77 69 73 65 2c 20 74 68 65 | an></code>........Otherwise,.the |
| 5e920 | 20 72 65 74 75 72 6e 20 74 79 70 65 20 69 73 20 61 6e 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 | .return.type.is.an.unsigned.inte |
| 5e940 | 67 65 72 20 77 69 74 68 20 74 68 65 20 6d 69 6e 69 6d 75 6d 20 6e 75 6d 62 65 72 0a 20 20 20 20 | ger.with.the.minimum.number..... |
| 5e960 | 20 20 6f 66 20 62 69 74 73 20 74 68 61 74 20 63 61 6e 20 72 65 70 72 65 73 65 6e 74 20 74 68 65 | ..of.bits.that.can.represent.the |
| 5e980 | 20 62 69 74 20 63 6f 75 6e 74 20 6f 66 20 74 68 65 20 69 6e 74 65 67 65 72 20 74 79 70 65 2e 0a | .bit.count.of.the.integer.type.. |
| 5e9a0 | 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 |
| 5e9c0 | 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 |
| 5e9e0 | 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 6c 7a 22 3e 40 63 6c 7a 3c 2f | ></li>.<li><a.href="#clz">@clz</ |
| 5ea00 | 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 | a></li>.</ul>...............<h2. |
| 5ea20 | 69 64 3d 22 70 74 72 43 61 73 74 22 3e 40 70 74 72 43 61 73 74 3c 2f 68 32 3e 0a 0a 20 20 20 20 | id="ptrCast">@ptrCast</h2>...... |
| 5ea40 | 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 |
| 5ea60 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 74 72 43 61 73 74 3c 2f 73 70 61 | lass="tok-builtin">@ptrCast</spa |
| 5ea80 | 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 |
| 5eaa0 | 3c 2f 73 70 61 6e 3e 20 44 65 73 74 54 79 70 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | </span>.DestType:.<span.class="t |
| 5eac0 | 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 76 61 6c 75 65 3a 20 3c 73 70 | ok-type">type</span>,.value:.<sp |
| 5eae0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 29 20 44 65 | an.class="tok-kw">var</span>).De |
| 5eb00 | 73 74 54 79 70 65 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | stType</code></pre>.......<p>... |
| 5eb20 | 20 20 20 20 43 6f 6e 76 65 72 74 73 20 61 20 70 6f 69 6e 74 65 72 20 6f 66 20 6f 6e 65 20 74 79 | ....Converts.a.pointer.of.one.ty |
| 5eb40 | 70 65 20 74 6f 20 61 20 70 6f 69 6e 74 65 72 20 6f 66 20 61 6e 6f 74 68 65 72 20 74 79 70 65 2e | pe.to.a.pointer.of.another.type. |
| 5eb60 | 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d | .......</p>..............<h2.id= |
| 5eb80 | 22 70 74 72 54 6f 49 6e 74 22 3e 40 70 74 72 54 6f 49 6e 74 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 | "ptrToInt">@ptrToInt</h2>....... |
| 5eba0 | 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 |
| 5ebc0 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 70 74 72 54 6f 49 6e 74 3c 2f 73 70 61 | ass="tok-builtin">@ptrToInt</spa |
| 5ebe0 | 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 | n>(value:.<span.class="tok-kw">v |
| 5ec00 | 61 72 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 | ar</span>).<span.class="tok-type |
| 5ec20 | 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 | ">usize</span></code></pre>..... |
| 5ec40 | 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 |
| 5ec60 | 3d 22 7a 69 67 22 3e 76 61 6c 75 65 3c 2f 63 6f 64 65 3e 20 74 6f 20 61 20 3c 63 6f 64 65 20 63 | ="zig">value</code>.to.a.<code.c |
| 5ec80 | 6c 61 73 73 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 |
| 5eca0 | 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 77 68 69 63 68 20 69 73 20 74 | ">usize</span></code>.which.is.t |
| 5ecc0 | 68 65 20 61 64 64 72 65 73 73 20 6f 66 20 74 68 65 20 70 6f 69 6e 74 65 72 2e 20 3c 63 6f 64 65 | he.address.of.the.pointer..<code |
| 5ece0 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 76 61 6c 75 65 3c 2f 63 6f 64 65 3e 20 63 61 6e 20 62 65 | .class="zig">value</code>.can.be |
| 5ed00 | 20 6f 6e 65 20 6f 66 20 74 68 65 73 65 20 74 79 70 65 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | .one.of.these.types:.......</p>. |
| 5ed20 | 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 |
| 5ed40 | 6c 61 73 73 3d 22 7a 69 67 22 3e 2a 54 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | lass="zig">*T</code></li>....... |
| 5ed60 | 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 2a 54 3c 2f 63 | ....<li><code.class="zig">?*T</c |
| 5ed80 | 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c | ode></li>...........<li><code.cl |
| 5eda0 | 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 | ass="zig"><span.class="tok-kw">f |
| 5edc0 | 6e 3c 2f 73 70 61 6e 3e 28 29 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | n</span>()</code></li>.......... |
| 5ede0 | 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3f 3c 73 70 61 6e 20 63 6c | .<li><code.class="zig">?<span.cl |
| 5ee00 | 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 3c | ass="tok-kw">fn</span>()</code>< |
| 5ee20 | 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 54 6f 20 63 6f 6e | /li>.......</ul>.......<p>To.con |
| 5ee40 | 76 65 72 74 20 74 68 65 20 6f 74 68 65 72 20 77 61 79 2c 20 75 73 65 20 3c 61 20 68 72 65 66 3d | vert.the.other.way,.use.<a.href= |
| 5ee60 | 22 23 69 6e 74 54 6f 50 74 72 22 3e 40 69 6e 74 54 6f 50 74 72 3c 2f 61 3e 3c 2f 70 3e 0a 0a 20 | "#intToPtr">@intToPtr</a></p>... |
| 5ee80 | 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 72 65 6d 22 3e 40 72 65 6d 3c 2f 68 | ............<h2.id="rem">@rem</h |
| 5eea0 | 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" |
| 5eec0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 72 65 6d 3c | ><span.class="tok-builtin">@rem< |
| 5eee0 | 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 |
| 5ef00 | 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>... |
| 5ef20 | 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 73 69 | ....Remainder.division..For.unsi |
| 5ef40 | 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 20 61 | gned.integers.this.is.the.same.a |
| 5ef60 | 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 72 61 | s.......<code.class="zig">numera |
| 5ef80 | 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 65 72 | tor.%.denominator</code>..Caller |
| 5efa0 | 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 64 65 | .guarantees.<code.class="zig">de |
| 5efc0 | 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 6b 2d | nominator.>.<span.class="tok- |
| 5efe0 | 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>........< |
| 5f000 | 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f | /p>.......<ul>...........<li><co |
| 5f020 | 64 65 20 63 6c 61 73 73 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- |
| 5f040 | 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 61 73 | builtin">@rem</span>(-<span.clas |
| 5f060 | 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 | s="tok-number">5</span>,.<span.c |
| 5f080 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 29 20 3d 3d 20 2d | lass="tok-number">3</span>).==.- |
| 5f0a0 | 3c 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 |
| 5f0c0 | 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 |
| 5f0e0 | 65 20 63 6c 61 73 73 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 |
| 5f100 | 75 69 6c 74 69 6e 22 3e 40 64 69 76 54 72 75 6e 63 3c 2f 73 70 61 6e 3e 28 61 2c 20 62 29 20 2b | uiltin">@divTrunc</span>(a,.b).+ |
| 5f120 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 72 65 6d 3c | .<span.class="tok-builtin">@rem< |
| 5f140 | 2f 73 70 61 6e 3e 28 61 2c 20 62 29 20 3d 3d 20 61 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 | /span>(a,.b).==.a</code></li>... |
| 5f160 | 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 46 6f 72 20 61 20 66 75 6e 63 74 69 6f | ....</ul>.......<p>For.a.functio |
| 5f180 | 6e 20 74 68 61 74 20 72 65 74 75 72 6e 73 20 61 6e 20 65 72 72 6f 72 20 63 6f 64 65 2c 20 73 65 | n.that.returns.an.error.code,.se |
| 5f1a0 | 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= |
| 5f1c0 | 22 74 6f 6b 2d 62 75 69 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 |
| 5f1e0 | 61 6e 20 63 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 |
| 5f200 | 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 61 74 68 2e 72 65 6d 3c 2f 63 6f 64 65 3e 2e 3c 2f 70 3e 0a | t;</span>).math.rem</code>.</p>. |
| 5f220 | 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>< |
| 5f240 | 61 20 68 72 65 66 3d 22 23 6d 6f 64 22 3e 40 6d 6f 64 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c | a.href="#mod">@mod</a></li>.</ul |
| 5f260 | 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 72 65 74 75 72 6e 41 64 | >...............<h2.id="returnAd |
| 5f280 | 64 72 65 73 73 22 3e 40 72 65 74 75 72 6e 41 64 64 72 65 73 73 3c 2f 68 32 3e 0a 0a 20 20 20 20 | dress">@returnAddress</h2>...... |
| 5f2a0 | 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 |
| 5f2c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 72 65 74 75 72 6e 41 64 64 72 65 73 | lass="tok-builtin">@returnAddres |
| 5f2e0 | 73 3c 2f 73 70 61 6e 3e 28 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 | s</span>()</code></pre>.......<p |
| 5f300 | 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 61 20 | >.......This.function.returns.a. |
| 5f320 | 70 6f 69 6e 74 65 72 20 74 6f 20 74 68 65 20 72 65 74 75 72 6e 20 61 64 64 72 65 73 73 20 6f 66 | pointer.to.the.return.address.of |
| 5f340 | 20 74 68 65 20 63 75 72 72 65 6e 74 20 73 74 61 63 6b 0a 20 20 20 20 20 20 66 72 61 6d 65 2e 0a | .the.current.stack.......frame.. |
| 5f360 | 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 69 | ......</p>.......<p>.......The.i |
| 5f380 | 6d 70 6c 69 63 61 74 69 6f 6e 73 20 6f 66 20 74 68 69 73 20 61 72 65 20 74 61 72 67 65 74 20 73 | mplications.of.this.are.target.s |
| 5f3a0 | 70 65 63 69 66 69 63 20 61 6e 64 20 6e 6f 74 20 63 6f 6e 73 69 73 74 65 6e 74 20 61 63 72 6f 73 | pecific.and.not.consistent.acros |
| 5f3c0 | 73 0a 20 20 20 20 20 20 61 6c 6c 20 70 6c 61 74 66 6f 72 6d 73 2e 0a 20 20 20 20 20 20 3c 2f 70 | s.......all.platforms........</p |
| 5f3e0 | 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. |
| 5f400 | 69 73 20 6f 6e 6c 79 20 76 61 6c 69 64 20 77 69 74 68 69 6e 20 66 75 6e 63 74 69 6f 6e 20 73 63 | is.only.valid.within.function.sc |
| 5f420 | 6f 70 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 | ope........</p>..............<h2 |
| 5f440 | 20 69 64 3d 22 73 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 | .id="setAlignStack">@setAlignSta |
| 5f460 | 63 6b 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 | ck</h2>........<pre><code.class= |
| 5f480 | 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"> |
| 5f4a0 | 40 73 65 74 41 6c 69 67 6e 53 74 61 63 6b 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 | @setAlignStack</span>(<span.clas |
| 5f4c0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 61 6c 69 67 6e | s="tok-kw">comptime</span>.align |
| 5f4e0 | 6d 65 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 32 39 | ment:.<span.class="tok-type">u29 |
| 5f500 | 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a | </span>)</code></pre>.......<p>. |
| 5f520 | 20 20 20 20 20 20 45 6e 73 75 72 65 73 20 74 68 61 74 20 61 20 66 75 6e 63 74 69 6f 6e 20 77 69 | ......Ensures.that.a.function.wi |
| 5f540 | 6c 6c 20 68 61 76 65 20 61 20 73 74 61 63 6b 20 61 6c 69 67 6e 6d 65 6e 74 20 6f 66 20 61 74 20 | ll.have.a.stack.alignment.of.at. |
| 5f560 | 6c 65 61 73 74 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 61 6c 69 67 6e 6d 65 6e | least.<code.class="zig">alignmen |
| 5f580 | 74 3c 2f 63 6f 64 65 3e 20 62 79 74 65 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | t</code>.bytes........</p>...... |
| 5f5a0 | 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 73 65 74 43 6f 6c 64 22 3e 40 73 65 74 43 6f 6c | ........<h2.id="setCold">@setCol |
| 5f5c0 | 64 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 | d</h2>........<pre><code.class=" |
| 5f5e0 | 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">@ |
| 5f600 | 73 65 74 43 6f 6c 64 3c 2f 73 70 61 6e 3e 28 69 73 5f 63 6f 6c 64 3a 20 3c 73 70 61 6e 20 63 6c | setCold</span>(is_cold:.<span.cl |
| 5f620 | 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 3c 2f 63 6f 64 | ass="tok-type">bool</span>)</cod |
| 5f640 | 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 65 6c 6c 73 20 74 | e></pre>.......<p>.......Tells.t |
| 5f660 | 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 6f 6e 20 69 73 20 | he.optimizer.that.a.function.is. |
| 5f680 | 72 61 72 65 6c 79 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 | rarely.called........</p>....... |
| 5f6a0 | 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 22 | .......<h2.id="setRuntimeSafety" |
| 5f6c0 | 3e 40 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c | >@setRuntimeSafety</h2>........< |
| 5f6e0 | 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 |
| 5f700 | 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 |
| 5f720 | 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= |
| 5f740 | 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></ |
| 5f760 | 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 |
| 5f780 | 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 6f 6e 20 66 | r.runtime.safety.checks.are.on.f |
| 5f7a0 | 6f 72 20 74 68 65 20 73 63 6f 70 65 20 74 68 61 74 20 63 6f 6e 74 61 69 6e 73 20 74 68 65 20 66 | or.the.scope.that.contains.the.f |
| 5f7c0 | 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 0a 20 20 20 20 20 20 | unction.call........</p>........ |
| 5f7e0 | 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 73 65 74 45 76 61 6c 42 72 61 6e 63 68 51 75 6f 74 | .......<h2.id="setEvalBranchQuot |
| 5f800 | 61 22 3e 40 73 65 74 45 76 61 6c 42 72 61 6e 63 68 51 75 6f 74 61 3c 2f 68 32 3e 0a 0a 20 20 20 | a">@setEvalBranchQuota</h2>..... |
| 5f820 | 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. |
| 5f840 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 65 74 45 76 61 6c 42 72 61 6e | class="tok-builtin">@setEvalBran |
| 5f860 | 63 68 51 75 6f 74 61 3c 2f 73 70 61 6e 3e 28 6e 65 77 5f 71 75 6f 74 61 3a 20 3c 73 70 61 6e 20 | chQuota</span>(new_quota:.<span. |
| 5f880 | 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 2f | class="tok-type">usize</span>)</ |
| 5f8a0 | 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 61 6e | code></pre>.......<p>.......Chan |
| 5f8c0 | 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 77 61 | ges.the.maximum.number.of.backwa |
| 5f8e0 | 72 64 73 20 62 72 61 6e 63 68 65 73 20 74 68 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 63 | rds.branches.that.compile-time.c |
| 5f900 | 6f 64 65 0a 20 20 20 20 20 20 65 78 65 63 75 74 69 6f 6e 20 63 61 6e 20 75 73 65 20 62 65 66 6f | ode.......execution.can.use.befo |
| 5f920 | 72 65 20 67 69 76 69 6e 67 20 75 70 20 61 6e 64 20 6d 61 6b 69 6e 67 20 61 20 63 6f 6d 70 69 6c | re.giving.up.and.making.a.compil |
| 5f940 | 65 20 65 72 72 6f 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | e.error........</p>.......<p>... |
| 5f960 | 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 65 77 | ....If.the.<code.class="zig">new |
| 5f980 | 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 74 68 | _quota</code>.is.smaller.than.th |
| 5f9a0 | 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 7a 69 | e.default.quota.(<code.class="zi |
| 5f9c0 | 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 30 30 | g"><span.class="tok-number">1000 |
| 5f9e0 | 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 29 20 6f 72 0a 20 20 20 20 20 20 61 20 70 72 65 76 69 | </span></code>).or.......a.previ |
| 5fa00 | 6f 75 73 6c 79 20 65 78 70 6c 69 63 69 74 6c 79 20 73 65 74 20 71 75 6f 74 61 2c 20 69 74 20 69 | ously.explicitly.set.quota,.it.i |
| 5fa20 | 73 20 69 67 6e 6f 72 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a | s.ignored........</p>.......<p>. |
| 5fa40 | 20 20 20 20 20 20 45 78 61 6d 70 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | ......Example:.......</p>....... |
| 5fa60 | 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 |
| 5fa80 | 3e 3c 63 6f 64 65 20 63 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=" |
| 5faa0 | 74 6f 6b 2d 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= |
| 5fac0 | 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 6f 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | "tok-str">"foo"</span> |
| 5fae0 | 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 | .{.....<span.class="tok-kw">comp |
| 5fb00 | 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | time</span>.{.........<span.clas |
| 5fb20 | 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. |
| 5fb40 | 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>;.... |
| 5fb60 | 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 3c | .....<span.class="tok-kw">while< |
| 5fb80 | 2f 73 70 61 6e 3e 20 28 69 20 26 6c 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | /span>.(i.<.<span.class="tok- |
| 5fba0 | 6e 75 6d 62 65 72 22 3e 31 30 30 31 3c 2f 73 70 61 6e 3e 29 20 3a 20 28 69 20 2b 3d 20 3c 73 70 | number">1001</span>).:.(i.+=.<sp |
| 5fbc0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 29 20 | an.class="tok-number">1</span>). |
| 5fbe0 | 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 6f 64 | {}.....}.}</code></pre><pre><cod |
| 5fc00 | 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. |
| 5fc20 | 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 | zig.<span.class="t0_1">/home/and |
| 5fc40 | 79 2f 64 65 76 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 | y/dev/zig/docgen_tmp/test.zig:4: |
| 5fc60 | 39 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 | 9:.</span><span.class="t31_1">er |
| 5fc80 | 72 6f 72 3a 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 20 65 | ror:</span><span.class="t0_1">.e |
| 5fca0 | 76 61 6c 75 61 74 69 6f 6e 20 65 78 63 65 65 64 65 64 20 31 30 30 30 20 62 61 63 6b 77 61 72 64 | valuation.exceeded.1000.backward |
| 5fcc0 | 73 20 62 72 61 6e 63 68 65 73 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 77 68 69 6c 65 20 | s.branches</span>.........while. |
| 5fce0 | 28 69 20 26 6c 74 3b 20 31 30 30 31 29 20 3a 20 28 69 20 2b 3d 20 31 29 20 7b 7d 0a 20 20 20 20 | (i.<.1001).:.(i.+=.1).{}..... |
| 5fd00 | 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> |
| 5fd20 | 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 4e 6f 77 20 77 65 20 | .</code></pre>........<p>Now.we. |
| 5fd40 | 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 73 | use.<code.class="zig"><span.clas |
| 5fd60 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 65 74 45 76 61 6c 42 72 61 6e 63 68 51 75 | s="tok-builtin">@setEvalBranchQu |
| 5fd80 | 6f 74 61 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 | ota</span></code>:</p>.......<p. |
| 5fda0 | 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 |
| 5fdc0 | 6f 64 65 20 63 6c 61 73 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 |
| 5fde0 | 2d 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 |
| 5fe00 | 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 66 6f 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 20 7b 0a | k-str">"foo"</span>.{. |
| 5fe20 | 20 20 20 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 |
| 5fe40 | 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | e</span>.{.........<span.class=" |
| 5fe60 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 65 74 45 76 61 6c 42 72 61 6e 63 68 51 75 6f 74 61 | tok-builtin">@setEvalBranchQuota |
| 5fe80 | 3c 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" |
| 5fea0 | 3e 31 30 30 31 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | >1001</span>);.........<span.cla |
| 5fec0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 69 20 3d 20 3c 73 70 61 6e | ss="tok-kw">var</span>.i.=.<span |
| 5fee0 | 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>;... |
| 5ff00 | 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 77 68 69 6c 65 | ......<span.class="tok-kw">while |
| 5ff20 | 3c 2f 73 70 61 6e 3e 20 28 69 20 26 6c 74 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | </span>.(i.<.<span.class="tok |
| 5ff40 | 2d 6e 75 6d 62 65 72 22 3e 31 30 30 31 3c 2f 73 70 61 6e 3e 29 20 3a 20 28 69 20 2b 3d 20 3c 73 | -number">1001</span>).:.(i.+=.<s |
| 5ff60 | 70 61 6e 20 63 6c 61 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>) |
| 5ff80 | 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 6f | .{}.....}.}</code></pre><pre><co |
| 5ffa0 | 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 |
| 5ffc0 | 2e 7a 69 67 0a 54 65 73 74 20 31 2f 31 20 66 6f 6f 2e 2e 2e 4f 4b 0a 41 6c 6c 20 74 65 73 74 73 | .zig.Test.1/1.foo...OK.All.tests |
| 5ffe0 | 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>.........< |
| 60000 | 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= |
| 60020 | 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>.</ |
| 60040 | 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 73 65 74 46 6c 6f | ul>...............<h2.id="setFlo |
| 60060 | 61 74 4d 6f 64 65 22 3e 40 73 65 74 46 6c 6f 61 74 4d 6f 64 65 3c 2f 68 32 3e 0a 0a 20 20 20 20 | atMode">@setFloatMode</h2>...... |
| 60080 | 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 |
| 600a0 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 65 74 46 6c 6f 61 74 4d 6f 64 65 | lass="tok-builtin">@setFloatMode |
| 600c0 | 3c 2f 73 70 61 6e 3e 28 6d 6f 64 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 | </span>(mode:.<span.class="tok-b |
| 600e0 | 75 69 6c 74 69 6e 22 3e 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 |
| 60100 | 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 3b | ss="tok-str">"builtin" |
| 60120 | 3c 2f 73 70 61 6e 3e 29 2e 46 6c 6f 61 74 4d 6f 64 65 29 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | </span>).FloatMode)</code></pre> |
| 60140 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 53 65 74 73 20 74 68 65 20 66 6c 6f 61 74 69 | .......<p>.......Sets.the.floati |
| 60160 | 6e 67 20 70 6f 69 6e 74 20 6d 6f 64 65 20 6f 66 20 74 68 65 20 63 75 72 72 65 6e 74 20 73 63 6f | ng.point.mode.of.the.current.sco |
| 60180 | 70 65 2e 20 50 6f 73 73 69 62 6c 65 20 76 61 6c 75 65 73 20 61 72 65 3a 0a 20 20 20 20 20 20 3c | pe..Possible.values.are:.......< |
| 601a0 | 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" |
| 601c0 | 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> |
| 601e0 | 20 3c 73 70 61 6e 20 63 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 |
| 60200 | 6e 3e 20 46 6c 6f 61 74 4d 6f 64 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | n>.FloatMode.=.<span.class="tok- |
| 60220 | 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 53 74 72 69 63 74 2c 0a 20 20 | kw">enum</span>.{.....Strict,... |
| 60240 | 20 20 4f 70 74 69 6d 69 7a 65 64 2c 0a 7d 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 | ..Optimized,.};</code></pre>.... |
| 60260 | 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | ...<ul>.........<li>............ |
| 60280 | 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 64 65 3e | .<code.class="zig">Strict</code> |
| 602a0 | 20 28 64 65 66 61 75 6c 74 29 20 2d 20 46 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6f 70 65 72 | .(default).-.Floating.point.oper |
| 602c0 | 61 74 69 6f 6e 73 20 66 6f 6c 6c 6f 77 20 73 74 72 69 63 74 20 49 45 45 45 20 63 6f 6d 70 6c 69 | ations.follow.strict.IEEE.compli |
| 602e0 | 61 6e 63 65 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 | ance..........</li>.........<li> |
| 60300 | 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 4f | .............<code.class="zig">O |
| 60320 | 70 74 69 6d 69 7a 65 64 3c 2f 63 6f 64 65 3e 20 2d 20 46 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 | ptimized</code>.-.Floating.point |
| 60340 | 20 6f 70 65 72 61 74 69 6f 6e 73 20 6d 61 79 20 64 6f 20 61 6c 6c 20 6f 66 20 74 68 65 20 66 6f | .operations.may.do.all.of.the.fo |
| 60360 | 6c 6c 6f 77 69 6e 67 3a 0a 20 20 20 20 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 | llowing:...........<ul>......... |
| 60380 | 20 20 20 20 3c 6c 69 3e 41 73 73 75 6d 65 20 74 68 65 20 61 72 67 75 6d 65 6e 74 73 20 61 6e 64 | ....<li>Assume.the.arguments.and |
| 603a0 | 20 72 65 73 75 6c 74 20 61 72 65 20 6e 6f 74 20 4e 61 4e 2e 20 4f 70 74 69 6d 69 7a 61 74 69 6f | .result.are.not.NaN..Optimizatio |
| 603c0 | 6e 73 20 61 72 65 20 72 65 71 75 69 72 65 64 20 74 6f 20 72 65 74 61 69 6e 20 64 65 66 69 6e 65 | ns.are.required.to.retain.define |
| 603e0 | 64 20 62 65 68 61 76 69 6f 72 20 6f 76 65 72 20 4e 61 4e 73 2c 20 62 75 74 20 74 68 65 20 76 61 | d.behavior.over.NaNs,.but.the.va |
| 60400 | 6c 75 65 20 6f 66 20 74 68 65 20 72 65 73 75 6c 74 20 69 73 20 75 6e 64 65 66 69 6e 65 64 2e 3c | lue.of.the.result.is.undefined.< |
| 60420 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 73 73 75 6d 65 20 74 68 65 20 | /li>.............<li>Assume.the. |
| 60440 | 61 72 67 75 6d 65 6e 74 73 20 61 6e 64 20 72 65 73 75 6c 74 20 61 72 65 20 6e 6f 74 20 2b 2f 2d | arguments.and.result.are.not.+/- |
| 60460 | 49 6e 66 2e 20 4f 70 74 69 6d 69 7a 61 74 69 6f 6e 73 20 61 72 65 20 72 65 71 75 69 72 65 64 20 | Inf..Optimizations.are.required. |
| 60480 | 74 6f 20 72 65 74 61 69 6e 20 64 65 66 69 6e 65 64 20 62 65 68 61 76 69 6f 72 20 6f 76 65 72 20 | to.retain.defined.behavior.over. |
| 604a0 | 2b 2f 2d 49 6e 66 2c 20 62 75 74 20 74 68 65 20 76 61 6c 75 65 20 6f 66 20 74 68 65 20 72 65 73 | +/-Inf,.but.the.value.of.the.res |
| 604c0 | 75 6c 74 20 69 73 20 75 6e 64 65 66 69 6e 65 64 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | ult.is.undefined.</li>.......... |
| 604e0 | 20 20 20 3c 6c 69 3e 54 72 65 61 74 20 74 68 65 20 73 69 67 6e 20 6f 66 20 61 20 7a 65 72 6f 20 | ...<li>Treat.the.sign.of.a.zero. |
| 60500 | 61 72 67 75 6d 65 6e 74 20 6f 72 20 72 65 73 75 6c 74 20 61 73 20 69 6e 73 69 67 6e 69 66 69 63 | argument.or.result.as.insignific |
| 60520 | 61 6e 74 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 55 73 65 20 74 68 | ant.</li>.............<li>Use.th |
| 60540 | 65 20 72 65 63 69 70 72 6f 63 61 6c 20 6f 66 20 61 6e 20 61 72 67 75 6d 65 6e 74 20 72 61 74 68 | e.reciprocal.of.an.argument.rath |
| 60560 | 65 72 20 74 68 61 6e 20 70 65 72 66 6f 72 6d 20 64 69 76 69 73 69 6f 6e 2e 3c 2f 6c 69 3e 0a 20 | er.than.perform.division.</li>.. |
| 60580 | 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 50 65 72 66 6f 72 6d 20 66 6c 6f 61 74 69 6e 67 2d | ...........<li>Perform.floating- |
| 605a0 | 70 6f 69 6e 74 20 63 6f 6e 74 72 61 63 74 69 6f 6e 20 28 65 2e 67 2e 20 66 75 73 69 6e 67 20 61 | point.contraction.(e.g..fusing.a |
| 605c0 | 20 6d 75 6c 74 69 70 6c 79 20 66 6f 6c 6c 6f 77 65 64 20 62 79 20 61 6e 20 61 64 64 69 74 69 6f | .multiply.followed.by.an.additio |
| 605e0 | 6e 20 69 6e 74 6f 20 61 20 66 75 73 65 64 20 6d 75 6c 74 69 70 6c 79 2d 61 6e 64 2d 61 64 64 29 | n.into.a.fused.multiply-and-add) |
| 60600 | 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 50 65 72 66 6f 72 6d 20 61 | .</li>.............<li>Perform.a |
| 60620 | 6c 67 65 62 72 61 69 63 61 6c 6c 79 20 65 71 75 69 76 61 6c 65 6e 74 20 74 72 61 6e 73 66 6f 72 | lgebraically.equivalent.transfor |
| 60640 | 6d 61 74 69 6f 6e 73 20 74 68 61 74 20 6d 61 79 20 63 68 61 6e 67 65 20 72 65 73 75 6c 74 73 20 | mations.that.may.change.results. |
| 60660 | 69 6e 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 28 65 2e 67 2e 20 72 65 61 73 73 6f 63 69 | in.floating.point.(e.g..reassoci |
| 60680 | 61 74 65 29 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 | ate).</li>...........</ul>...... |
| 606a0 | 20 20 20 20 20 54 68 69 73 20 69 73 20 65 71 75 69 76 61 6c 65 6e 74 20 74 6f 20 3c 63 6f 64 65 | .....This.is.equivalent.to.<code |
| 606c0 | 3e 2d 66 66 61 73 74 2d 6d 61 74 68 3c 2f 63 6f 64 65 3e 20 69 6e 20 47 43 43 2e 0a 20 20 20 20 | >-ffast-math</code>.in.GCC...... |
| 606e0 | 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 0a | ....</li>.......</ul>.......<p>. |
| 60700 | 20 20 20 20 20 20 54 68 65 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 6d 6f 64 65 20 69 73 | ......The.floating.point.mode.is |
| 60720 | 20 69 6e 68 65 72 69 74 65 64 20 62 79 20 63 68 69 6c 64 20 73 63 6f 70 65 73 2c 20 61 6e 64 20 | .inherited.by.child.scopes,.and. |
| 60740 | 63 61 6e 20 62 65 20 6f 76 65 72 72 69 64 64 65 6e 20 69 6e 20 61 6e 79 20 73 63 6f 70 65 2e 0a | can.be.overridden.in.any.scope.. |
| 60760 | 20 20 20 20 20 20 59 6f 75 20 63 61 6e 20 73 65 74 20 74 68 65 20 66 6c 6f 61 74 69 6e 67 20 70 | ......You.can.set.the.floating.p |
| 60780 | 6f 69 6e 74 20 6d 6f 64 65 20 69 6e 20 61 20 73 74 72 75 63 74 20 6f 72 20 6d 6f 64 75 6c 65 20 | oint.mode.in.a.struct.or.module. |
| 607a0 | 73 63 6f 70 65 20 62 79 20 75 73 69 6e 67 20 61 20 63 6f 6d 70 74 69 6d 65 20 62 6c 6f 63 6b 2e | scope.by.using.a.comptime.block. |
| 607c0 | 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:</ |
| 607e0 | 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 46 6c 6f 61 74 69 6e 67 2d 50 6f | p><ul>.<li><a.href="#Floating-Po |
| 60800 | 69 6e 74 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 46 6c 6f 61 74 69 6e 67 20 50 6f 69 6e 74 20 4f | int-Operations">Floating.Point.O |
| 60820 | 70 65 72 61 74 69 6f 6e 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 | perations</a></li>.</ul>........ |
| 60840 | 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 73 65 74 47 6c 6f 62 61 6c 4c 69 6e 6b 61 67 65 22 | .......<h2.id="setGlobalLinkage" |
| 60860 | 3e 40 73 65 74 47 6c 6f 62 61 6c 4c 69 6e 6b 61 67 65 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c | >@setGlobalLinkage</h2>........< |
| 60880 | 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 |
| 608a0 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 65 74 47 6c 6f 62 61 6c 4c 69 6e 6b 61 67 | s="tok-builtin">@setGlobalLinkag |
| 608c0 | 65 3c 2f 73 70 61 6e 3e 28 67 6c 6f 62 61 6c 5f 76 61 72 69 61 62 6c 65 5f 6e 61 6d 65 2c 20 3c | e</span>(global_variable_name,.< |
| 608e0 | 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 |
| 60900 | 61 6e 3e 20 6c 69 6e 6b 61 67 65 3a 20 47 6c 6f 62 61 6c 4c 69 6e 6b 61 67 65 29 3c 2f 63 6f 64 | an>.linkage:.GlobalLinkage)</cod |
| 60920 | 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 | e></pre>.......<p>.......<code.c |
| 60940 | 6c 61 73 73 3d 22 7a 69 67 22 3e 47 6c 6f 62 61 6c 4c 69 6e 6b 61 67 65 3c 2f 63 6f 64 65 3e 20 | lass="zig">GlobalLinkage</code>. |
| 60960 | 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 |
| 60980 | 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 |
| 609a0 | 6d 70 6f 72 74 3c 2f 73 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 |
| 609c0 | 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 47 | r">"builtin"</span>).G |
| 609e0 | 6c 6f 62 61 6c 4c 69 6e 6b 61 67 65 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a | lobalLinkage</code>........</p>. |
| 60a00 | 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>< |
| 60a20 | 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 |
| 60a40 | 69 6c 65 20 56 61 72 69 61 62 6c 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 | ile.Variables</a></li>.</ul>.... |
| 60a60 | 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 73 68 6c 45 78 61 63 74 22 3e 40 73 68 | ...........<h2.id="shlExact">@sh |
| 60a80 | 6c 45 78 61 63 74 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 | lExact</h2>........<pre><code.cl |
| 60aa0 | 61 73 73 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 |
| 60ac0 | 69 6e 22 3e 40 73 68 6c 45 78 61 63 74 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 54 2c 20 73 | in">@shlExact</span>(value:.T,.s |
| 60ae0 | 68 69 66 74 5f 61 6d 74 3a 20 4c 6f 67 32 54 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | hift_amt:.Log2T).T</code></pre>. |
| 60b00 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 50 65 72 66 6f 72 6d 73 20 74 68 65 20 6c 65 66 | ......<p>.......Performs.the.lef |
| 60b20 | 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 6c 61 73 73 3d 22 | t.shift.operation.(<code.class=" |
| 60b40 | 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 6c 6c 65 72 20 67 75 | zig"><<</code>)..Caller.gu |
| 60b60 | 61 72 61 6e 74 65 65 73 0a 20 20 20 20 20 20 74 68 61 74 20 74 68 65 20 73 68 69 66 74 20 77 69 | arantees.......that.the.shift.wi |
| 60b80 | 6c 6c 20 6e 6f 74 20 73 68 69 66 74 20 61 6e 79 20 31 20 62 69 74 73 20 6f 75 74 2e 0a 20 20 20 | ll.not.shift.any.1.bits.out..... |
| 60ba0 | 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 74 79 70 65 | ...</p>.......<p>.......The.type |
| 60bc0 | 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 74 5f 61 6d 74 3c | .of.<code.class="zig">shift_amt< |
| 60be0 | 2f 63 6f 64 65 3e 20 69 73 20 61 6e 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 20 77 69 | /code>.is.an.unsigned.integer.wi |
| 60c00 | 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 54 2e 62 69 74 5f | th.<code.class="zig">log2(T.bit_ |
| 60c20 | 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 20 20 20 20 20 20 | count)</code>.bits.............. |
| 60c40 | 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 61 73 73 3d 22 7a | ..This.is.because.<code.class="z |
| 60c60 | 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 63 6f 75 6e 74 3c | ig">shift_amt.>=.T.bit_count< |
| 60c80 | 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 6f 72 2e 0a 20 20 | /code>.is.undefined.behavior.... |
| 60ca0 | 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>< |
| 60cc0 | 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 74 22 3e 40 73 68 72 | ul>.<li><a.href="#shrExact">@shr |
| 60ce0 | 45 78 61 63 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 68 6c | Exact</a></li>.<li><a.href="#shl |
| 60d00 | 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 40 73 68 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f | WithOverflow">@shlWithOverflow</ |
| 60d20 | 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 | a></li>.</ul>...............<h2. |
| 60d40 | 69 64 3d 22 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 | id="shlWithOverflow">@shlWithOve |
| 60d60 | 72 66 6c 6f 77 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 | rflow</h2>........<pre><code.cla |
| 60d80 | 73 73 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 |
| 60da0 | 6e 22 3e 40 73 68 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e | n">@shlWithOverflow</span>(<span |
| 60dc0 | 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>. |
| 60de0 | 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</ |
| 60e00 | 73 70 61 6e 3e 2c 20 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 | span>,.a:.T,.shift_amt:.Log2T,.r |
| 60e20 | 65 73 75 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 | esult:.*T).<span.class="tok-type |
| 60e40 | 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 | ">bool</span></code></pre>...... |
| 60e60 | 20 3c 70 3e 0a 20 20 20 20 20 20 50 65 72 66 6f 72 6d 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d | .<p>.......Performs.<code.class= |
| 60e80 | 22 7a 69 67 22 3e 72 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 | "zig">result.*.=.a.<<.b</c |
| 60ea0 | 6f 64 65 3e 2e 20 49 66 20 6f 76 65 72 66 6c 6f 77 20 6f 72 20 75 6e 64 65 72 66 6c 6f 77 20 6f | ode>..If.overflow.or.underflow.o |
| 60ec0 | 63 63 75 72 73 2c 0a 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 | ccurs,..................stores.t |
| 60ee0 | 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 61 73 | he.overflowed.bits.in.<code.clas |
| 60f00 | 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 72 6e | s="zig">result</code>.and.return |
| 60f20 | 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | s.<code.class="zig"><span.class= |
| 60f40 | 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 0a 20 | "tok-null">true</span></code>... |
| 60f60 | 20 20 20 20 20 20 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 | ........................If.no.ov |
| 60f80 | 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 20 72 65 74 75 | erflow.or.underflow.occurs,.retu |
| 60fa0 | 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 |
| 60fc0 | 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e | s="tok-null">false</span></code> |
| 60fe0 | 2e 0a 20 20 20 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 |
| 61000 | 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 74 | .type.of.<code.class="zig">shift |
| 61020 | 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 67 | _amt</code>.is.an.unsigned.integ |
| 61040 | 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 54 | er.with.<code.class="zig">log2(T |
| 61060 | 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 20 | .bit_count)</code>.bits......... |
| 61080 | 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 61 | .......This.is.because.<code.cla |
| 610a0 | 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 63 | ss="zig">shift_amt.>=.T.bit_c |
| 610c0 | 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 6f | ount</code>.is.undefined.behavio |
| 610e0 | 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 3a | r........</p>.......<p>See.also: |
| 61100 | 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 22 | </p><ul>.<li><a.href="#shlExact" |
| 61120 | 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 3d | >@shlExact</a></li>.<li><a.href= |
| 61140 | 22 23 73 68 72 45 78 61 63 74 22 3e 40 73 68 72 45 78 61 63 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c | "#shrExact">@shrExact</a></li>.< |
| 61160 | 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 73 68 72 45 78 | /ul>...............<h2.id="shrEx |
| 61180 | 61 63 74 22 3e 40 73 68 72 45 78 61 63 74 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e | act">@shrExact</h2>........<pre> |
| 611a0 | 3c 63 6f 64 65 20 63 6c 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 |
| 611c0 | 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 68 72 45 78 61 63 74 3c 2f 73 70 61 6e 3e 28 76 61 6c | ok-builtin">@shrExact</span>(val |
| 611e0 | 75 65 3a 20 54 2c 20 73 68 69 66 74 5f 61 6d 74 3a 20 4c 6f 67 32 54 29 20 54 3c 2f 63 6f 64 65 | ue:.T,.shift_amt:.Log2T).T</code |
| 61200 | 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 50 65 72 66 6f 72 6d 73 | ></pre>.......<p>.......Performs |
| 61220 | 20 74 68 65 20 72 69 67 68 74 20 73 68 69 66 74 20 6f 70 65 72 61 74 69 6f 6e 20 28 3c 63 6f 64 | .the.right.shift.operation.(<cod |
| 61240 | 65 20 63 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 | e.class="zig">>></code>).. |
| 61260 | 43 61 6c 6c 65 72 20 67 75 61 72 61 6e 74 65 65 73 0a 20 20 20 20 20 20 74 68 61 74 20 74 68 65 | Caller.guarantees.......that.the |
| 61280 | 20 73 68 69 66 74 20 77 69 6c 6c 20 6e 6f 74 20 73 68 69 66 74 20 61 6e 79 20 31 20 62 69 74 73 | .shift.will.not.shift.any.1.bits |
| 612a0 | 20 6f 75 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | .out........</p>.......<p>...... |
| 612c0 | 20 54 68 65 20 74 79 70 65 20 6f 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 | .The.type.of.<code.class="zig">s |
| 612e0 | 68 69 66 74 5f 61 6d 74 3c 2f 63 6f 64 65 3e 20 69 73 20 61 6e 20 75 6e 73 69 67 6e 65 64 20 69 | hift_amt</code>.is.an.unsigned.i |
| 61300 | 6e 74 65 67 65 72 20 77 69 74 68 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 6c 6f | nteger.with.<code.class="zig">lo |
| 61320 | 67 32 28 54 2e 62 69 74 5f 63 6f 75 6e 74 29 3c 2f 63 6f 64 65 3e 20 62 69 74 73 2e 0a 20 20 20 | g2(T.bit_count)</code>.bits..... |
| 61340 | 20 20 20 20 20 20 20 20 20 20 20 54 68 69 73 20 69 73 20 62 65 63 61 75 73 65 20 3c 63 6f 64 65 | ...........This.is.because.<code |
| 61360 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 68 69 66 74 5f 61 6d 74 20 26 67 74 3b 3d 20 54 2e 62 | .class="zig">shift_amt.>=.T.b |
| 61380 | 69 74 5f 63 6f 75 6e 74 3c 2f 63 6f 64 65 3e 20 69 73 20 75 6e 64 65 66 69 6e 65 64 20 62 65 68 | it_count</code>.is.undefined.beh |
| 613a0 | 61 76 69 6f 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 | avior........</p>.......<p>See.a |
| 613c0 | 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 68 6c 45 78 | lso:</p><ul>.<li><a.href="#shlEx |
| 613e0 | 61 63 74 22 3e 40 73 68 6c 45 78 61 63 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 | act">@shlExact</a></li>.<li><a.h |
| 61400 | 72 65 66 3d 22 23 73 68 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 40 73 68 6c 57 69 74 68 4f | ref="#shlWithOverflow">@shlWithO |
| 61420 | 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 0a | verflow</a></li>.</ul>.......... |
| 61440 | 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 73 69 7a 65 4f 66 22 3e 40 73 69 7a 65 4f 66 3c 2f 68 | ......<h2.id="sizeOf">@sizeOf</h |
| 61460 | 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" |
| 61480 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 69 7a 65 | ><span.class="tok-builtin">@size |
| 614a0 | 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 |
| 614c0 | 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 |
| 614e0 | 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 | ok-type">type</span>).<span.clas |
| 61500 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 6f 6d 70 74 69 6d 65 5f 69 6e 74 3c 2f 73 70 61 6e 3e | s="tok-type">comptime_int</span> |
| 61520 | 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 |
| 61540 | 69 73 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 20 74 68 65 20 6e 75 6d 62 65 72 20 6f | is.function.returns.the.number.o |
| 61560 | 66 20 62 79 74 65 73 20 69 74 20 74 61 6b 65 73 20 74 6f 20 73 74 6f 72 65 20 3c 63 6f 64 65 20 | f.bytes.it.takes.to.store.<code. |
| 61580 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 54 3c 2f 63 6f 64 65 3e 20 69 6e 20 6d 65 6d 6f 72 79 2e 0a | class="zig">T</code>.in.memory.. |
| 615a0 | 20 20 20 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 72 | ......</p>.......<p>.......The.r |
| 615c0 | 65 73 75 6c 74 20 69 73 20 61 20 74 61 72 67 65 74 2d 73 70 65 63 69 66 69 63 20 63 6f 6d 70 69 | esult.is.a.target-specific.compi |
| 615e0 | 6c 65 20 74 69 6d 65 20 63 6f 6e 73 74 61 6e 74 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | le.time.constant........</p>.... |
| 61600 | 20 20 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 73 6c 69 63 65 54 6f 42 79 74 65 73 22 | ...........<h2.id="sliceToBytes" |
| 61620 | 3e 40 73 6c 69 63 65 54 6f 42 79 74 65 73 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e | >@sliceToBytes</h2>........<pre> |
| 61640 | 3c 63 6f 64 65 20 63 6c 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 |
| 61660 | 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 6c 69 63 65 54 6f 42 79 74 65 73 3c 2f 73 70 61 6e 3e | ok-builtin">@sliceToBytes</span> |
| 61680 | 28 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 | (value:.<span.class="tok-kw">var |
| 616a0 | 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 74 79 70 65 | </span>).[]<span.class="tok-type |
| 616c0 | 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>.......< |
| 616e0 | 70 3e 0a 20 20 20 20 20 20 43 6f 6e 76 65 72 74 73 20 61 20 73 6c 69 63 65 20 6f 72 20 61 72 72 | p>.......Converts.a.slice.or.arr |
| 61700 | 61 79 20 74 6f 20 61 20 73 6c 69 63 65 20 6f 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | ay.to.a.slice.of.<code.class="zi |
| 61720 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 | g"><span.class="tok-type">u8</sp |
| 61740 | 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 20 54 68 65 20 72 65 73 75 6c 74 69 6e 67 20 73 6c 69 63 65 20 | an></code>..The.resulting.slice. |
| 61760 | 68 61 73 20 74 68 65 20 73 61 6d 65 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 23 50 6f 69 | has.the.same.......<a.href="#Poi |
| 61780 | 6e 74 65 72 73 22 3e 70 6f 69 6e 74 65 72 3c 2f 61 3e 20 70 72 6f 70 65 72 74 69 65 73 20 61 73 | nters">pointer</a>.properties.as |
| 617a0 | 20 74 68 65 20 70 61 72 61 6d 65 74 65 72 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | .the.parameter........</p>...... |
| 617c0 | 20 0a 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 73 71 72 74 22 3e 40 73 71 72 74 3c 2f 68 32 | .........<h2.id="sqrt">@sqrt</h2 |
| 617e0 | 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"> |
| 61800 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 71 72 74 3c | <span.class="tok-builtin">@sqrt< |
| 61820 | 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 |
| 61840 | 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- |
| 61860 | 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 76 61 6c 75 65 3a 20 54 29 20 54 3c 2f | type">type</span>,.value:.T).T</ |
| 61880 | 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 |
| 618a0 | 6f 72 6d 73 20 74 68 65 20 73 71 75 61 72 65 20 72 6f 6f 74 20 6f 66 20 61 20 66 6c 6f 61 74 69 | orms.the.square.root.of.a.floati |
| 618c0 | 6e 67 20 70 6f 69 6e 74 20 6e 75 6d 62 65 72 2e 20 55 73 65 73 20 61 20 64 65 64 69 63 61 74 65 | ng.point.number..Uses.a.dedicate |
| 618e0 | 64 20 68 61 72 64 77 61 72 65 20 69 6e 73 74 72 75 63 74 69 6f 6e 0a 20 20 20 20 20 20 77 68 65 | d.hardware.instruction.......whe |
| 61900 | 6e 20 61 76 61 69 6c 61 62 6c 65 2e 20 43 75 72 72 65 6e 74 6c 79 20 6f 6e 6c 79 20 73 75 70 70 | n.available..Currently.only.supp |
| 61920 | 6f 72 74 73 20 66 33 32 20 61 6e 64 20 66 36 34 20 61 74 20 72 75 6e 74 69 6d 65 2e 20 66 31 32 | orts.f32.and.f64.at.runtime..f12 |
| 61940 | 38 20 61 74 20 72 75 6e 74 69 6d 65 20 69 73 20 54 4f 44 4f 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | 8.at.runtime.is.TODO........</p> |
| 61960 | 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 69 73 20 61 20 6c 6f 77 2d 6c | .......<p>.......This.is.a.low-l |
| 61980 | 65 76 65 6c 20 69 6e 74 72 69 6e 73 69 63 2e 20 4d 6f 73 74 20 63 6f 64 65 20 63 61 6e 20 75 73 | evel.intrinsic..Most.code.can.us |
| 619a0 | 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 73 74 64 2e 6d 61 74 68 2e 73 71 72 | e.<code.class="zig">std.math.sqr |
| 619c0 | 74 3c 2f 63 6f 64 65 3e 20 69 6e 73 74 65 61 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | t</code>.instead........</p>.... |
| 619e0 | 20 20 20 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 | ..........<h2.id="subWithOverflo |
| 61a00 | 77 22 3e 40 73 75 62 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 | w">@subWithOverflow</h2>........ |
| 61a20 | 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 |
| 61a40 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 75 62 57 69 74 68 4f 76 65 72 66 6c 6f | ss="tok-builtin">@subWithOverflo |
| 61a60 | 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 22 3e 63 6f | w</span>(<span.class="tok-kw">co |
| 61a80 | 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 |
| 61aa0 | 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 20 61 3a 20 54 2c 20 62 3a 20 54 2c | k-type">type</span>,.a:.T,.b:.T, |
| 61ac0 | 20 72 65 73 75 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 | .result:.*T).<span.class="tok-ty |
| 61ae0 | 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 | pe">bool</span></code></pre>.... |
| 61b00 | 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 50 65 72 66 6f 72 6d 73 20 3c 63 6f 64 65 20 63 6c 61 73 | ...<p>.......Performs.<code.clas |
| 61b20 | 73 3d 22 7a 69 67 22 3e 72 65 73 75 6c 74 2e 2a 20 3d 20 61 20 2d 20 62 3c 2f 63 6f 64 65 3e 2e | s="zig">result.*.=.a.-.b</code>. |
| 61b40 | 20 49 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 | .If.overflow.or.underflow.occurs |
| 61b60 | 2c 0a 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 66 6c 6f 77 65 | ,...........stores.the.overflowe |
| 61b80 | 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 3e 72 65 73 75 | d.bits.in.<code.class="zig">resu |
| 61ba0 | 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 20 63 6c 61 73 | lt</code>.and.returns.<code.clas |
| 61bc0 | 73 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 | s="zig"><span.class="tok-null">t |
| 61be0 | 72 75 65 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | rue</span></code>............... |
| 61c00 | 20 20 20 20 20 49 66 20 6e 6f 20 6f 76 65 72 66 6c 6f 77 20 6f 72 20 75 6e 64 65 72 66 6c 6f 77 | .....If.no.overflow.or.underflow |
| 61c20 | 20 6f 63 63 75 72 73 2c 20 72 65 74 75 72 6e 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | .occurs,.returns.<code.class="zi |
| 61c40 | 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c | g"><span.class="tok-null">false< |
| 61c60 | 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 | /span></code>........</p>....... |
| 61c80 | 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 74 61 67 4e 61 6d 65 22 3e 40 74 61 67 4e 61 6d 65 | .......<h2.id="tagName">@tagName |
| 61ca0 | 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 |
| 61cc0 | 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 74 | ig"><span.class="tok-builtin">@t |
| 61ce0 | 61 67 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | agName</span>(value:.<span.class |
| 61d00 | 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 29 20 5b 5d 3c 73 70 61 6e 20 63 6c | ="tok-kw">var</span>).[]<span.cl |
| 61d20 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 | ass="tok-kw">const</span>.<span. |
| 61d40 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 | class="tok-type">u8</span></code |
| 61d60 | 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 |
| 61d80 | 20 61 6e 20 65 6e 75 6d 20 76 61 6c 75 65 20 6f 72 20 75 6e 69 6f 6e 20 76 61 6c 75 65 20 74 6f | .an.enum.value.or.union.value.to |
| 61da0 | 20 61 20 73 6c 69 63 65 20 6f 66 20 62 79 74 65 73 20 72 65 70 72 65 73 65 6e 74 69 6e 67 20 74 | .a.slice.of.bytes.representing.t |
| 61dc0 | 68 65 20 6e 61 6d 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 | he.name........</p>............. |
| 61de0 | 20 3c 68 32 20 69 64 3d 22 54 61 67 54 79 70 65 22 3e 40 54 61 67 54 79 70 65 3c 2f 68 32 3e 0a | .<h2.id="TagType">@TagType</h2>. |
| 61e00 | 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 |
| 61e20 | 70 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 70 65 | pan.class="tok-builtin">@TagType |
| 61e40 | 3c 2f 73 70 61 6e 3e 28 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | </span>(T:.<span.class="tok-type |
| 61e60 | 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ">type</span>).<span.class="tok- |
| 61e80 | 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 20 | type">type</span></code></pre>.. |
| 61ea0 | 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 20 61 6e 20 65 6e 75 6d 2c 20 72 65 74 75 | .....<p>.......For.an.enum,.retu |
| 61ec0 | 72 6e 73 20 74 68 65 20 69 6e 74 65 67 65 72 20 74 79 70 65 20 74 68 61 74 20 69 73 20 75 73 65 | rns.the.integer.type.that.is.use |
| 61ee0 | 64 20 74 6f 20 73 74 6f 72 65 20 74 68 65 20 65 6e 75 6d 65 72 61 74 69 6f 6e 20 76 61 6c 75 65 | d.to.store.the.enumeration.value |
| 61f00 | 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 46 6f 72 | ........</p>.......<p>.......For |
| 61f20 | 20 61 20 75 6e 69 6f 6e 2c 20 72 65 74 75 72 6e 73 20 74 68 65 20 65 6e 75 6d 20 74 79 70 65 20 | .a.union,.returns.the.enum.type. |
| 61f40 | 74 68 61 74 20 69 73 20 75 73 65 64 20 74 6f 20 73 74 6f 72 65 20 74 68 65 20 74 61 67 20 76 61 | that.is.used.to.store.the.tag.va |
| 61f60 | 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 |
| 61f80 | 20 69 64 3d 22 54 68 69 73 22 3e 40 54 68 69 73 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 | .id="This">@This</h2>........<pr |
| 61fa0 | 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= |
| 61fc0 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 54 68 69 73 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 | "tok-builtin">@This</span>().<sp |
| 61fe0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 3c | an.class="tok-type">type</span>< |
| 62000 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 52 65 74 | /code></pre>.......<p>.......Ret |
| 62020 | 75 72 6e 73 20 74 68 65 20 69 6e 6e 65 72 6d 6f 73 74 20 73 74 72 75 63 74 20 6f 72 20 75 6e 69 | urns.the.innermost.struct.or.uni |
| 62040 | 6f 6e 20 74 68 61 74 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 20 69 73 20 69 6e | on.that.this.function.call.is.in |
| 62060 | 73 69 64 65 2e 0a 20 20 20 20 20 20 54 68 69 73 20 63 61 6e 20 62 65 20 75 73 65 66 75 6c 20 66 | side........This.can.be.useful.f |
| 62080 | 6f 72 20 61 6e 20 61 6e 6f 6e 79 6d 6f 75 73 20 73 74 72 75 63 74 20 74 68 61 74 20 6e 65 65 64 | or.an.anonymous.struct.that.need |
| 620a0 | 73 20 74 6f 20 72 65 66 65 72 20 74 6f 20 69 74 73 65 6c 66 3a 0a 20 20 20 20 20 20 3c 2f 70 3e | s.to.refer.to.itself:.......</p> |
| 620c0 | 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< |
| 620e0 | 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. |
| 62100 | 63 6c 61 73 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. |
| 62120 | 3d 20 3c 73 70 61 6e 20 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 |
| 62140 | 6f 72 74 3c 2f 73 70 61 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" |
| 62160 | 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. |
| 62180 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 | class="tok-kw">const</span>.asse |
| 621a0 | 72 74 20 3d 20 73 74 64 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 0a 3c 73 70 61 6e 20 63 6c | rt.=.std.debug.assert;..<span.cl |
| 621c0 | 61 73 73 3d 22 74 6f 6b 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 |
| 621e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 40 54 68 69 73 28 29 26 71 75 6f | lass="tok-str">"@This()&quo |
| 62200 | 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 |
| 62220 | 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 5d 3c 73 70 61 6e 20 | -kw">var</span>.items.=.[]<span. |
| 62240 | 63 6c 61 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 |
| 62260 | 61 6e 20 63 6c 61 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>,. |
| 62280 | 3c 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 |
| 622a0 | 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 |
| 622c0 | 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 |
| 622e0 | 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- |
| 62300 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6c 69 73 74 20 3d 20 4c 69 73 74 28 3c 73 70 | kw">const</span>.list.=.List(<sp |
| 62320 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 7b | an.class="tok-type">i32</span>){ |
| 62340 | 20 2e 69 74 65 6d 73 20 3d 20 69 74 65 6d 73 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ..items.=.items[<span.class="tok |
| 62360 | 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 5d 20 7d 3b 0a 20 20 20 20 61 73 73 65 | -number">0</span>..].};.....asse |
| 62380 | 72 74 28 6c 69 73 74 2e 6c 65 6e 67 74 68 28 29 20 3d 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | rt(list.length().==.<span.class= |
| 623a0 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 0a 0a 3c 73 70 61 6e | "tok-number">4</span>);.}..<span |
| 623c0 | 20 63 6c 61 73 73 3d 22 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. |
| 623e0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 4c 69 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e | class="tok-fn">List</span>(<span |
| 62400 | 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>. |
| 62420 | 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</ |
| 62440 | 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 | span>).<span.class="tok-type">ty |
| 62460 | 70 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | pe</span>.{.....<span.class="tok |
| 62480 | 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=" |
| 624a0 | 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 | tok-kw">struct</span>.{......... |
| 624c0 | 3c 73 70 61 6e 20 63 6c 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 |
| 624e0 | 3e 20 53 65 6c 66 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | >.Self.=.<span.class="tok-builti |
| 62500 | 6e 22 3e 40 54 68 69 73 3c 2f 73 70 61 6e 3e 28 29 3b 0a 0a 20 20 20 20 20 20 20 20 69 74 65 6d | n">@This</span>();..........item |
| 62520 | 73 3a 20 5b 5d 54 2c 0a 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | s:.[]T,..........<span.class="to |
| 62540 | 6b 2d 6b 77 22 3e 66 6e 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 |
| 62560 | 2d 66 6e 22 3e 6c 65 6e 67 74 68 3c 2f 73 70 61 6e 3e 28 73 65 6c 66 3a 20 53 65 6c 66 29 20 3c | -fn">length</span>(self:.Self).< |
| 62580 | 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 |
| 625a0 | 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | n>.{.............<span.class="to |
| 625c0 | 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 73 65 6c 66 2e 69 74 65 6d 73 2e 6c | k-kw">return</span>.self.items.l |
| 625e0 | 65 6e 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 | en;.........}.....};.}</code></p |
| 62600 | 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 |
| 62620 | 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 31 2f 31 20 40 54 68 69 73 28 29 | g.test.test.zig.Test.1/1.@This() |
| 62640 | 2e 2e 2e 4f 4b 0a 41 6c 6c 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.tests.passed..</code>< |
| 62660 | 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 3c 63 6f 64 | /pre>........<p>.......When.<cod |
| 62680 | 65 20 63 6c 61 73 73 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 |
| 626a0 | 75 69 6c 74 69 6e 22 3e 40 54 68 69 73 3c 2f 73 70 61 6e 3e 28 29 3c 2f 63 6f 64 65 3e 20 69 73 | uiltin">@This</span>()</code>.is |
| 626c0 | 20 75 73 65 64 20 61 74 20 67 6c 6f 62 61 6c 20 73 63 6f 70 65 2c 20 69 74 20 72 65 74 75 72 6e | .used.at.global.scope,.it.return |
| 626e0 | 73 20 61 20 72 65 66 65 72 65 6e 63 65 20 74 6f 20 74 68 65 0a 20 20 20 20 20 20 63 75 72 72 65 | s.a.reference.to.the.......curre |
| 62700 | 6e 74 20 69 6d 70 6f 72 74 2e 20 54 68 65 72 65 20 69 73 20 61 20 70 72 6f 70 6f 73 61 6c 20 74 | nt.import..There.is.a.proposal.t |
| 62720 | 6f 20 72 65 6d 6f 76 65 20 74 68 65 20 69 6d 70 6f 72 74 20 74 79 70 65 20 61 6e 64 20 75 73 65 | o.remove.the.import.type.and.use |
| 62740 | 20 61 6e 20 65 6d 70 74 79 20 73 74 72 75 63 74 0a 20 20 20 20 20 20 74 79 70 65 20 69 6e 73 74 | .an.empty.struct.......type.inst |
| 62760 | 65 61 64 2e 20 53 65 65 20 0a 20 20 20 20 20 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f | ead..See........<a.href="https:/ |
| 62780 | 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 31 | /github.com/ziglang/zig/issues/1 |
| 627a0 | 30 34 37 22 3e 23 31 30 34 37 3c 2f 61 3e 20 66 6f 72 20 64 65 74 61 69 6c 73 2e 0a 20 20 20 20 | 047">#1047</a>.for.details...... |
| 627c0 | 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 74 72 75 6e | ..</p>..............<h2.id="trun |
| 627e0 | 63 61 74 65 22 3e 40 74 72 75 6e 63 61 74 65 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 | cate">@truncate</h2>........<pre |
| 62800 | 3e 3c 63 6f 64 65 20 63 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=" |
| 62820 | 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 72 75 6e 63 61 74 65 3c 2f 73 70 61 6e 3e 28 3c 73 | tok-builtin">@truncate</span>(<s |
| 62840 | 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 |
| 62860 | 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 |
| 62880 | 65 3c 2f 73 70 61 6e 3e 2c 20 69 6e 74 65 67 65 72 29 20 54 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | e</span>,.integer).T</code></pre |
| 628a0 | 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. |
| 628c0 | 74 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 | truncates.bits.from.an.integer.t |
| 628e0 | 79 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 | ype,.resulting.in.a.smaller..... |
| 62900 | 20 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 | ..integer.type........</p>...... |
| 62920 | 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 70 72 6f 64 75 63 65 | .<p>.......The.following.produce |
| 62940 | 73 20 61 20 63 72 61 73 68 20 69 6e 20 64 65 62 75 67 20 6d 6f 64 65 20 61 6e 64 20 75 6e 64 65 | s.a.crash.in.debug.mode.and.unde |
| 62960 | 66 69 6e 65 64 20 62 65 68 61 76 69 6f 72 20 69 6e 0a 20 20 20 20 20 20 72 65 6c 65 61 73 65 20 | fined.behavior.in.......release. |
| 62980 | 6d 6f 64 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 | mode:.......</p>.......<pre><cod |
| 629a0 | 65 20 63 6c 61 73 73 3d 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 |
| 629c0 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | w">const</span>.a:.<span.class=" |
| 629e0 | 74 6f 6b 2d 74 79 70 65 22 3e 75 31 36 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | tok-type">u16</span>.=.<span.cla |
| 62a00 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 61 62 63 64 3c 2f 73 70 61 6e 3e 3b 0a 3c | ss="tok-number">0xabcd</span>;.< |
| 62a20 | 73 70 61 6e 20 63 6c 61 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> |
| 62a40 | 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 | .b:.<span.class="tok-type">u8</s |
| 62a60 | 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 | pan>.=.<span.class="tok-type">u8 |
| 62a80 | 3c 2f 73 70 61 6e 3e 28 61 29 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c | </span>(a);</code></pre>.......< |
| 62aa0 | 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 20 64 65 | p>.......However.this.is.well.de |
| 62ac0 | 66 69 6e 65 64 20 61 6e 64 20 77 6f 72 6b 69 6e 67 20 63 6f 64 65 3a 0a 20 20 20 20 20 20 3c 2f | fined.and.working.code:.......</ |
| 62ae0 | 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"> |
| 62b00 | 3c 73 70 61 6e 20 63 6c 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 |
| 62b20 | 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 31 36 3c | >.a:.<span.class="tok-type">u16< |
| 62b40 | 2f 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 |
| 62b60 | 22 3e 30 78 61 62 63 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 | ">0xabcd</span>;.<span.class="to |
| 62b80 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | k-kw">const</span>.b:.<span.clas |
| 62ba0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 | s="tok-type">u8</span>.=.<span.c |
| 62bc0 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 72 75 6e 63 61 74 65 3c 2f 73 70 | lass="tok-builtin">@truncate</sp |
| 62be0 | 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 | an>(<span.class="tok-type">u8</s |
| 62c00 | 70 61 6e 3e 2c 20 61 29 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 | pan>,.a);.<span.class="tok-comme |
| 62c20 | 6e 74 22 3e 2f 2f 20 62 20 69 73 20 6e 6f 77 20 30 78 63 64 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | nt">//.b.is.now.0xcd</span></cod |
| 62c40 | 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 69 73 20 66 75 | e></pre>.......<p>.......This.fu |
| 62c60 | 6e 63 74 69 6f 6e 20 61 6c 77 61 79 73 20 74 72 75 6e 63 61 74 65 73 20 74 68 65 20 73 69 67 6e | nction.always.truncates.the.sign |
| 62c80 | 69 66 69 63 61 6e 74 20 62 69 74 73 20 6f 66 20 74 68 65 20 69 6e 74 65 67 65 72 2c 20 72 65 67 | ificant.bits.of.the.integer,.reg |
| 62ca0 | 61 72 64 6c 65 73 73 0a 20 20 20 20 20 20 6f 66 20 65 6e 64 69 61 6e 6e 65 73 73 20 6f 6e 20 74 | ardless.......of.endianness.on.t |
| 62cc0 | 68 65 20 74 61 72 67 65 74 20 70 6c 61 74 66 6f 72 6d 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 0a | he.target.platform........</p>.. |
| 62ce0 | 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 74 79 70 65 49 64 22 3e 40 74 79 | .............<h2.id="typeId">@ty |
| 62d00 | 70 65 49 64 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 | peId</h2>........<pre><code.clas |
| 62d20 | 73 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 |
| 62d40 | 22 3e 40 74 79 70 65 49 64 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ">@typeId</span>(<span.class="to |
| 62d60 | 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 |
| 62d80 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 | lass="tok-type">type</span>).<sp |
| 62da0 | 61 6e 20 63 6c 61 73 73 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</ |
| 62dc0 | 73 70 61 6e 3e 28 3c 73 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 |
| 62de0 | 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 64 3c 2f | t;builtin"</span>).TypeId</ |
| 62e00 | 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 52 65 74 75 | code></pre>.......<p>.......Retu |
| 62e20 | 72 6e 73 20 77 68 69 63 68 20 6b 69 6e 64 20 6f 66 20 74 79 70 65 20 73 6f 6d 65 74 68 69 6e 67 | rns.which.kind.of.type.something |
| 62e40 | 20 69 73 2e 20 50 6f 73 73 69 62 6c 65 20 76 61 6c 75 65 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e | .is..Possible.values:.......</p> |
| 62e60 | 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 |
| 62e80 | 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 |
| 62ea0 | 70 61 6e 20 63 6c 61 73 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>. |
| 62ec0 | 54 79 70 65 49 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 65 6e | TypeId.=.<span.class="tok-kw">en |
| 62ee0 | 75 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 54 79 70 65 2c 0a 20 20 20 20 56 6f 69 64 2c 0a | um</span>.{.....Type,.....Void,. |
| 62f00 | 20 20 20 20 42 6f 6f 6c 2c 0a 20 20 20 20 4e 6f 52 65 74 75 72 6e 2c 0a 20 20 20 20 49 6e 74 2c | ....Bool,.....NoReturn,.....Int, |
| 62f20 | 0a 20 20 20 20 46 6c 6f 61 74 2c 0a 20 20 20 20 50 6f 69 6e 74 65 72 2c 0a 20 20 20 20 41 72 72 | .....Float,.....Pointer,.....Arr |
| 62f40 | 61 79 2c 0a 20 20 20 20 53 74 72 75 63 74 2c 0a 20 20 20 20 43 6f 6d 70 74 69 6d 65 46 6c 6f 61 | ay,.....Struct,.....ComptimeFloa |
| 62f60 | 74 2c 0a 20 20 20 20 43 6f 6d 70 74 69 6d 65 49 6e 74 2c 0a 20 20 20 20 55 6e 64 65 66 69 6e 65 | t,.....ComptimeInt,.....Undefine |
| 62f80 | 64 2c 0a 20 20 20 20 4e 75 6c 6c 2c 0a 20 20 20 20 4f 70 74 69 6f 6e 61 6c 2c 0a 20 20 20 20 45 | d,.....Null,.....Optional,.....E |
| 62fa0 | 72 72 6f 72 55 6e 69 6f 6e 2c 0a 20 20 20 20 45 72 72 6f 72 2c 0a 20 20 20 20 45 6e 75 6d 2c 0a | rrorUnion,.....Error,.....Enum,. |
| 62fc0 | 20 20 20 20 55 6e 69 6f 6e 2c 0a 20 20 20 20 46 6e 2c 0a 20 20 20 20 4e 61 6d 65 73 70 61 63 65 | ....Union,.....Fn,.....Namespace |
| 62fe0 | 2c 0a 20 20 20 20 42 6c 6f 63 6b 2c 0a 20 20 20 20 42 6f 75 6e 64 46 6e 2c 0a 20 20 20 20 41 72 | ,.....Block,.....BoundFn,.....Ar |
| 63000 | 67 54 75 70 6c 65 2c 0a 20 20 20 20 4f 70 61 71 75 65 2c 0a 7d 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 | gTuple,.....Opaque,.};</code></p |
| 63020 | 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 74 79 70 65 49 6e 66 | re>..............<h2.id="typeInf |
| 63040 | 6f 22 3e 40 74 79 70 65 49 6e 66 6f 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 | o">@typeInfo</h2>........<pre><c |
| 63060 | 6f 64 65 20 63 6c 61 73 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 |
| 63080 | 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 |
| 630a0 | 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>. |
| 630c0 | 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</ |
| 630e0 | 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | span>).<span.class="tok-builtin" |
| 63100 | 3e 40 69 6d 70 6f 72 74 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 |
| 63120 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 75 69 6c 74 69 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e | -str">"builtin"</span> |
| 63140 | 29 2e 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 | ).TypeInfo</code></pre>.......<p |
| 63160 | 3e 0a 20 20 20 20 20 20 52 65 74 75 72 6e 73 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 6f 6e 20 74 | >.......Returns.information.on.t |
| 63180 | 68 65 20 74 79 70 65 2e 20 52 65 74 75 72 6e 73 20 61 20 76 61 6c 75 65 20 6f 66 20 74 68 65 20 | he.type..Returns.a.value.of.the. |
| 631a0 | 66 6f 6c 6c 6f 77 69 6e 67 20 75 6e 69 6f 6e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 | following.union:.......</p>..... |
| 631c0 | 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 |
| 631e0 | 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 |
| 63200 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 54 79 70 65 49 | lass="tok-kw">const</span>.TypeI |
| 63220 | 6e 66 6f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e | nfo.=.<span.class="tok-kw">union |
| 63240 | 3c 2f 73 70 61 6e 3e 28 54 79 70 65 49 64 29 20 7b 0a 20 20 20 20 54 79 70 65 3a 20 3c 73 70 61 | </span>(TypeId).{.....Type:.<spa |
| 63260 | 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>,. |
| 63280 | 20 20 20 20 56 6f 69 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 | ....Void:.<span.class="tok-type" |
| 632a0 | 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 42 6f 6f 6c 3a 20 3c 73 70 61 6e 20 63 6c | >void</span>,.....Bool:.<span.cl |
| 632c0 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 | ass="tok-type">void</span>,..... |
| 632e0 | 4e 6f 52 65 74 75 72 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 | NoReturn:.<span.class="tok-type" |
| 63300 | 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 49 6e 74 3a 20 49 6e 74 2c 0a 20 20 20 20 | >void</span>,.....Int:.Int,..... |
| 63320 | 46 6c 6f 61 74 3a 20 46 6c 6f 61 74 2c 0a 20 20 20 20 50 6f 69 6e 74 65 72 3a 20 50 6f 69 6e 74 | Float:.Float,.....Pointer:.Point |
| 63340 | 65 72 2c 0a 20 20 20 20 41 72 72 61 79 3a 20 41 72 72 61 79 2c 0a 20 20 20 20 53 74 72 75 63 74 | er,.....Array:.Array,.....Struct |
| 63360 | 3a 20 53 74 72 75 63 74 2c 0a 20 20 20 20 43 6f 6d 70 74 69 6d 65 46 6c 6f 61 74 3a 20 3c 73 70 | :.Struct,.....ComptimeFloat:.<sp |
| 63380 | 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 2c | an.class="tok-type">void</span>, |
| 633a0 | 0a 20 20 20 20 43 6f 6d 70 74 69 6d 65 49 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .....ComptimeInt:.<span.class="t |
| 633c0 | 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 55 6e 64 65 66 69 | ok-type">void</span>,.....Undefi |
| 633e0 | 6e 65 64 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 | ned:.<span.class="tok-type">void |
| 63400 | 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 4e 75 6c 6c 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | </span>,.....Null:.<span.class=" |
| 63420 | 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 4f 70 74 69 6f | tok-type">void</span>,.....Optio |
| 63440 | 6e 61 6c 3a 20 4f 70 74 69 6f 6e 61 6c 2c 0a 20 20 20 20 45 72 72 6f 72 55 6e 69 6f 6e 3a 20 45 | nal:.Optional,.....ErrorUnion:.E |
| 63460 | 72 72 6f 72 55 6e 69 6f 6e 2c 0a 20 20 20 20 45 72 72 6f 72 53 65 74 3a 20 45 72 72 6f 72 53 65 | rrorUnion,.....ErrorSet:.ErrorSe |
| 63480 | 74 2c 0a 20 20 20 20 45 6e 75 6d 3a 20 45 6e 75 6d 2c 0a 20 20 20 20 55 6e 69 6f 6e 3a 20 55 6e | t,.....Enum:.Enum,.....Union:.Un |
| 634a0 | 69 6f 6e 2c 0a 20 20 20 20 46 6e 3a 20 46 6e 2c 0a 20 20 20 20 4e 61 6d 65 73 70 61 63 65 3a 20 | ion,.....Fn:.Fn,.....Namespace:. |
| 634c0 | 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 |
| 634e0 | 6e 3e 2c 0a 20 20 20 20 42 6f 75 6e 64 46 6e 3a 20 46 6e 2c 0a 20 20 20 20 41 72 67 54 75 70 6c | n>,.....BoundFn:.Fn,.....ArgTupl |
| 63500 | 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 76 6f 69 64 3c 2f | e:.<span.class="tok-type">void</ |
| 63520 | 73 70 61 6e 3e 2c 0a 20 20 20 20 4f 70 61 71 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | span>,.....Opaque:.<span.class=" |
| 63540 | 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 50 72 6f 6d 69 | tok-type">void</span>,.....Promi |
| 63560 | 73 65 3a 20 50 72 6f 6d 69 73 65 2c 0a 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | se:.Promise,.......<span.class=" |
| 63580 | 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=" |
| 635a0 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 49 6e 74 20 3d 20 3c 73 70 61 6e | tok-kw">const</span>.Int.=.<span |
| 635c0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a | .class="tok-kw">struct</span>.{. |
| 635e0 | 20 20 20 20 20 20 20 20 69 73 5f 73 69 67 6e 65 64 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ........is_signed:.<span.class=" |
| 63600 | 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 62 | tok-type">bool</span>,.........b |
| 63620 | 69 74 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 75 38 3c 2f | its:.<span.class="tok-type">u8</ |
| 63640 | 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | span>,.....};......<span.class=" |
| 63660 | 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=" |
| 63680 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 6c 6f 61 74 20 3d 20 3c 73 70 | tok-kw">const</span>.Float.=.<sp |
| 636a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 | an.class="tok-kw">struct</span>. |
| 636c0 | 7b 0a 20 20 20 20 20 20 20 20 62 69 74 73 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | {.........bits:.<span.class="tok |
| 636e0 | 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 20 3c 73 | -type">u8</span>,.....};......<s |
| 63700 | 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 |
| 63720 | 70 61 6e 20 63 6c 61 73 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>. |
| 63740 | 50 6f 69 6e 74 65 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 | Pointer.=.<span.class="tok-kw">s |
| 63760 | 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 73 69 7a 65 3a 20 53 69 7a | truct</span>.{.........size:.Siz |
| 63780 | 65 2c 0a 20 20 20 20 20 20 20 20 69 73 5f 63 6f 6e 73 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | e,.........is_const:.<span.class |
| 637a0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 | ="tok-type">bool</span>,........ |
| 637c0 | 20 69 73 5f 76 6f 6c 61 74 69 6c 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | .is_volatile:.<span.class="tok-t |
| 637e0 | 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 61 6c 69 67 6e 6d | ype">bool</span>,.........alignm |
| 63800 | 65 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c | ent:.<span.class="tok-type">u32< |
| 63820 | 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 63 68 69 6c 64 3a 20 3c 73 70 61 6e 20 63 6c 61 | /span>,.........child:.<span.cla |
| 63840 | 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 0a 0a 20 20 20 20 | ss="tok-type">type</span>,...... |
| 63860 | 20 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 | ....<span.class="tok-kw">pub</sp |
| 63880 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | an>.<span.class="tok-kw">const</ |
| 638a0 | 73 70 61 6e 3e 20 53 69 7a 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | span>.Size.=.<span.class="tok-kw |
| 638c0 | 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 4f 6e 65 2c | ">enum</span>.{.............One, |
| 638e0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 4d 61 6e 79 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 53 | .............Many,.............S |
| 63900 | 6c 69 63 65 2c 0a 20 20 20 20 20 20 20 20 7d 3b 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 | lice,.........};.....};......<sp |
| 63920 | 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 |
| 63940 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 41 | an.class="tok-kw">const</span>.A |
| 63960 | 72 72 61 79 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 | rray.=.<span.class="tok-kw">stru |
| 63980 | 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 6c 65 6e 3a 20 3c 73 70 61 6e 20 63 | ct</span>.{.........len:.<span.c |
| 639a0 | 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 | lass="tok-type">usize</span>,... |
| 639c0 | 20 20 20 20 20 20 63 68 69 6c 64 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | ......child:.<span.class="tok-ty |
| 639e0 | 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 | pe">type</span>,.....};......<sp |
| 63a00 | 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 |
| 63a20 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 43 | an.class="tok-kw">const</span>.C |
| 63a40 | 6f 6e 74 61 69 6e 65 72 4c 61 79 6f 75 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ontainerLayout.=.<span.class="to |
| 63a60 | 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 20 41 75 74 6f | k-kw">enum</span>.{.........Auto |
| 63a80 | 2c 0a 20 20 20 20 20 20 20 20 45 78 74 65 72 6e 2c 0a 20 20 20 20 20 20 20 20 50 61 63 6b 65 64 | ,.........Extern,.........Packed |
| 63aa0 | 2c 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ,.....};......<span.class="tok-k |
| 63ac0 | 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 |
| 63ae0 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 53 74 72 75 63 74 46 69 65 6c 64 20 3d 20 3c 73 | w">const</span>.StructField.=.<s |
| 63b00 | 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> |
| 63b20 | 20 7b 0a 20 20 20 20 20 20 20 20 6e 61 6d 65 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .{.........name:.[]<span.class=" |
| 63b40 | 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 |
| 63b60 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 6f | ="tok-type">u8</span>,.........o |
| 63b80 | 66 66 73 65 74 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 | ffset:.?<span.class="tok-type">u |
| 63ba0 | 73 69 7a 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 66 69 65 6c 64 5f 74 79 70 65 3a | size</span>,.........field_type: |
| 63bc0 | 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 |
| 63be0 | 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | an>,.....};......<span.class="to |
| 63c00 | 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 |
| 63c20 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 53 74 72 75 63 74 20 3d 20 3c 73 70 61 | k-kw">const</span>.Struct.=.<spa |
| 63c40 | 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>.{ |
| 63c60 | 0a 20 20 20 20 20 20 20 20 6c 61 79 6f 75 74 3a 20 43 6f 6e 74 61 69 6e 65 72 4c 61 79 6f 75 74 | .........layout:.ContainerLayout |
| 63c80 | 2c 0a 20 20 20 20 20 20 20 20 66 69 65 6c 64 73 3a 20 5b 5d 53 74 72 75 63 74 46 69 65 6c 64 2c | ,.........fields:.[]StructField, |
| 63ca0 | 0a 20 20 20 20 20 20 20 20 64 65 66 73 3a 20 5b 5d 44 65 66 69 6e 69 74 69 6f 6e 2c 0a 20 20 20 | .........defs:.[]Definition,.... |
| 63cc0 | 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 | .};......<span.class="tok-kw">pu |
| 63ce0 | 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | b</span>.<span.class="tok-kw">co |
| 63d00 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 4f 70 74 69 6f 6e 61 6c 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | nst</span>.Optional.=.<span.clas |
| 63d20 | 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>.{...... |
| 63d40 | 20 20 20 63 68 69 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 | ...child:.<span.class="tok-type" |
| 63d60 | 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 | >type</span>,.....};......<span. |
| 63d80 | 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. |
| 63da0 | 63 6c 61 73 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 | class="tok-kw">const</span>.Erro |
| 63dc0 | 72 55 6e 69 6f 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 | rUnion.=.<span.class="tok-kw">st |
| 63de0 | 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 65 72 72 6f 72 5f 73 65 74 3a | ruct</span>.{.........error_set: |
| 63e00 | 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 |
| 63e20 | 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 70 61 79 6c 6f 61 64 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | an>,.........payload:.<span.clas |
| 63e40 | 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 0a 20 20 20 20 7d 3b | s="tok-type">type</span>,.....}; |
| 63e60 | 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f | ......<span.class="tok-kw">pub</ |
| 63e80 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 | span>.<span.class="tok-kw">const |
| 63ea0 | 3c 2f 73 70 61 6e 3e 20 45 72 72 6f 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | </span>.Error.=.<span.class="tok |
| 63ec0 | 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 6e 61 6d | -kw">struct</span>.{.........nam |
| 63ee0 | 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< |
| 63f00 | 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 |
| 63f20 | 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c | </span>,.........value:.<span.cl |
| 63f40 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 | ass="tok-type">usize</span>,.... |
| 63f60 | 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 | .};......<span.class="tok-kw">pu |
| 63f80 | 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | b</span>.<span.class="tok-kw">co |
| 63fa0 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 45 72 72 6f 72 53 65 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | nst</span>.ErrorSet.=.<span.clas |
| 63fc0 | 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>.{...... |
| 63fe0 | 20 20 20 65 72 72 6f 72 73 3a 20 5b 5d 45 72 72 6f 72 2c 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 20 | ...errors:.[]Error,.....};...... |
| 64000 | 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>. |
| 64020 | 3c 73 70 61 6e 20 63 6c 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 |
| 64040 | 3e 20 45 6e 75 6d 46 69 65 6c 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | >.EnumField.=.<span.class="tok-k |
| 64060 | 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 6e 61 6d 65 3a | w">struct</span>.{.........name: |
| 64080 | 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 | .[]<span.class="tok-kw">const</s |
| 640a0 | 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</ |
| 640c0 | 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | span>,.........value:.<span.clas |
| 640e0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d | s="tok-type">usize</span>,.....} |
| 64100 | 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 70 75 62 3c | ;......<span.class="tok-kw">pub< |
| 64120 | 2f 73 70 61 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 |
| 64140 | 74 3c 2f 73 70 61 6e 3e 20 45 6e 75 6d 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | t</span>.Enum.=.<span.class="tok |
| 64160 | 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 6c 61 79 | -kw">struct</span>.{.........lay |
| 64180 | 6f 75 74 3a 20 43 6f 6e 74 61 69 6e 65 72 4c 61 79 6f 75 74 2c 0a 20 20 20 20 20 20 20 20 74 61 | out:.ContainerLayout,.........ta |
| 641a0 | 67 5f 74 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 | g_type:.<span.class="tok-type">t |
| 641c0 | 79 70 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 66 69 65 6c 64 73 3a 20 5b 5d 45 6e | ype</span>,.........fields:.[]En |
| 641e0 | 75 6d 46 69 65 6c 64 2c 0a 20 20 20 20 20 20 20 20 64 65 66 73 3a 20 5b 5d 44 65 66 69 6e 69 74 | umField,.........defs:.[]Definit |
| 64200 | 69 6f 6e 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 | ion,.....};......<span.class="to |
| 64220 | 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 |
| 64240 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 55 6e 69 6f 6e 46 69 65 6c 64 20 3d 20 | k-kw">const</span>.UnionField.=. |
| 64260 | 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 |
| 64280 | 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 6e 61 6d 65 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 | n>.{.........name:.[]<span.class |
| 642a0 | 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 |
| 642c0 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 | ss="tok-type">u8</span>,........ |
| 642e0 | 20 65 6e 75 6d 5f 66 69 65 6c 64 3a 20 3f 45 6e 75 6d 46 69 65 6c 64 2c 0a 20 20 20 20 20 20 20 | .enum_field:.?EnumField,........ |
| 64300 | 20 66 69 65 6c 64 5f 74 79 70 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | .field_type:.<span.class="tok-ty |
| 64320 | 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 | pe">type</span>,.....};......<sp |
| 64340 | 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 |
| 64360 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 55 | an.class="tok-kw">const</span>.U |
| 64380 | 6e 69 6f 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 | nion.=.<span.class="tok-kw">stru |
| 643a0 | 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 6c 61 79 6f 75 74 3a 20 43 6f 6e 74 | ct</span>.{.........layout:.Cont |
| 643c0 | 61 69 6e 65 72 4c 61 79 6f 75 74 2c 0a 20 20 20 20 20 20 20 20 74 61 67 5f 74 79 70 65 3a 20 3f | ainerLayout,.........tag_type:.? |
| 643e0 | 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 |
| 64400 | 6e 3e 2c 0a 20 20 20 20 20 20 20 20 66 69 65 6c 64 73 3a 20 5b 5d 55 6e 69 6f 6e 46 69 65 6c 64 | n>,.........fields:.[]UnionField |
| 64420 | 2c 0a 20 20 20 20 20 20 20 20 64 65 66 73 3a 20 5b 5d 44 65 66 69 6e 69 74 69 6f 6e 2c 0a 20 20 | ,.........defs:.[]Definition,... |
| 64440 | 20 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 | ..};......<span.class="tok-kw">p |
| 64460 | 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | ub</span>.<span.class="tok-kw">c |
| 64480 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 43 61 6c 6c 69 6e 67 43 6f 6e 76 65 6e 74 69 6f 6e 20 3d 20 | onst</span>.CallingConvention.=. |
| 644a0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e | <span.class="tok-kw">enum</span> |
| 644c0 | 20 7b 0a 20 20 20 20 20 20 20 20 55 6e 73 70 65 63 69 66 69 65 64 2c 0a 20 20 20 20 20 20 20 20 | .{.........Unspecified,......... |
| 644e0 | 43 2c 0a 20 20 20 20 20 20 20 20 43 6f 6c 64 2c 0a 20 20 20 20 20 20 20 20 4e 61 6b 65 64 2c 0a | C,.........Cold,.........Naked,. |
| 64500 | 20 20 20 20 20 20 20 20 53 74 64 63 61 6c 6c 2c 0a 20 20 20 20 20 20 20 20 41 73 79 6e 63 2c 0a | ........Stdcall,.........Async,. |
| 64520 | 20 20 20 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | ....};......<span.class="tok-kw" |
| 64540 | 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" |
| 64560 | 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 6e 41 72 67 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | >const</span>.FnArg.=.<span.clas |
| 64580 | 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>.{...... |
| 645a0 | 20 20 20 69 73 5f 67 65 6e 65 72 69 63 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ...is_generic:.<span.class="tok- |
| 645c0 | 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 69 73 5f 6e 6f | type">bool</span>,.........is_no |
| 645e0 | 61 6c 69 61 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 62 6f | alias:.<span.class="tok-type">bo |
| 64600 | 6f 6c 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 61 72 67 5f 74 79 70 65 3a 20 3f 3c 73 | ol</span>,.........arg_type:.?<s |
| 64620 | 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> |
| 64640 | 2c 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ,.....};......<span.class="tok-k |
| 64660 | 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 |
| 64680 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | w">const</span>.Fn.=.<span.class |
| 646a0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 | ="tok-kw">struct</span>.{....... |
| 646c0 | 20 20 63 61 6c 6c 69 6e 67 5f 63 6f 6e 76 65 6e 74 69 6f 6e 3a 20 43 61 6c 6c 69 6e 67 43 6f 6e | ..calling_convention:.CallingCon |
| 646e0 | 76 65 6e 74 69 6f 6e 2c 0a 20 20 20 20 20 20 20 20 69 73 5f 67 65 6e 65 72 69 63 3a 20 3c 73 70 | vention,.........is_generic:.<sp |
| 64700 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c | an.class="tok-type">bool</span>, |
| 64720 | 0a 20 20 20 20 20 20 20 20 69 73 5f 76 61 72 5f 61 72 67 73 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | .........is_var_args:.<span.clas |
| 64740 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 | s="tok-type">bool</span>,....... |
| 64760 | 20 20 72 65 74 75 72 6e 5f 74 79 70 65 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ..return_type:.?<span.class="tok |
| 64780 | 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 61 73 79 6e | -type">type</span>,.........asyn |
| 647a0 | 63 5f 61 6c 6c 6f 63 61 74 6f 72 5f 74 79 70 65 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | c_allocator_type:.?<span.class=" |
| 647c0 | 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 61 | tok-type">type</span>,.........a |
| 647e0 | 72 67 73 3a 20 5b 5d 46 6e 41 72 67 2c 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 | rgs:.[]FnArg,.....};......<span. |
| 64800 | 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. |
| 64820 | 63 6c 61 73 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 6f 6d | class="tok-kw">const</span>.Prom |
| 64840 | 69 73 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 | ise.=.<span.class="tok-kw">struc |
| 64860 | 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 63 68 69 6c 64 3a 20 3f 3c 73 70 61 6e | t</span>.{.........child:.?<span |
| 64880 | 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 0a 20 | .class="tok-type">type</span>,.. |
| 648a0 | 20 20 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | ...};......<span.class="tok-kw"> |
| 648c0 | 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"> |
| 648e0 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 44 65 66 69 6e 69 74 69 6f 6e 20 3d 20 3c 73 70 61 6e 20 | const</span>.Definition.=.<span. |
| 64900 | 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>.{.. |
| 64920 | 20 20 20 20 20 20 20 6e 61 6d 65 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .......name:.[]<span.class="tok- |
| 64940 | 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 |
| 64960 | 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 69 73 5f 70 75 | k-type">u8</span>,.........is_pu |
| 64980 | 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f | b:.<span.class="tok-type">bool</ |
| 649a0 | 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 64 61 74 61 3a 20 44 61 74 61 2c 0a 0a 20 20 20 20 | span>,.........data:.Data,...... |
| 649c0 | 20 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 | ....<span.class="tok-kw">pub</sp |
| 649e0 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | an>.<span.class="tok-kw">const</ |
| 64a00 | 73 70 61 6e 3e 20 44 61 74 61 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | span>.Data.=.<span.class="tok-kw |
| 64a20 | 22 3e 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ">union</span>(<span.class="tok- |
| 64a40 | 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 54 | kw">enum</span>).{.............T |
| 64a60 | 79 70 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 | ype:.<span.class="tok-type">type |
| 64a80 | 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 56 61 72 3a 20 3c 73 70 61 6e 20 | </span>,.............Var:.<span. |
| 64aa0 | 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 0a 20 20 | class="tok-type">type</span>,... |
| 64ac0 | 20 20 20 20 20 20 20 20 20 20 46 6e 3a 20 46 6e 44 65 66 2c 0a 0a 20 20 20 20 20 20 20 20 20 20 | ..........Fn:.FnDef,............ |
| 64ae0 | 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e | ..<span.class="tok-kw">pub</span |
| 64b00 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 | >.<span.class="tok-kw">const</sp |
| 64b20 | 61 6e 3e 20 46 6e 44 65 66 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | an>.FnDef.=.<span.class="tok-kw" |
| 64b40 | 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 20 20 20 | >struct</span>.{................ |
| 64b60 | 20 66 6e 5f 74 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 | .fn_type:.<span.class="tok-type" |
| 64b80 | 3e 74 79 70 65 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 69 6e | >type</span>,.................in |
| 64ba0 | 6c 69 6e 65 5f 74 79 70 65 3a 20 49 6e 6c 69 6e 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | line_type:.Inline,.............. |
| 64bc0 | 20 20 20 63 61 6c 6c 69 6e 67 5f 63 6f 6e 76 65 6e 74 69 6f 6e 3a 20 43 61 6c 6c 69 6e 67 43 6f | ...calling_convention:.CallingCo |
| 64be0 | 6e 76 65 6e 74 69 6f 6e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 73 5f 76 61 72 | nvention,.................is_var |
| 64c00 | 5f 61 72 67 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 62 6f | _args:.<span.class="tok-type">bo |
| 64c20 | 6f 6c 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 69 73 5f 65 78 | ol</span>,.................is_ex |
| 64c40 | 74 65 72 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 | tern:.<span.class="tok-type">boo |
| 64c60 | 6c 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 69 73 5f 65 78 70 | l</span>,.................is_exp |
| 64c80 | 6f 72 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c | ort:.<span.class="tok-type">bool |
| 64ca0 | 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 6c 69 62 5f 6e 61 6d | </span>,.................lib_nam |
| 64cc0 | 65 3a 20 3f 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 | e:.?[]<span.class="tok-kw">const |
| 64ce0 | 3c 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 |
| 64d00 | 38 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 72 65 74 75 72 6e | 8</span>,.................return |
| 64d20 | 5f 74 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 | _type:.<span.class="tok-type">ty |
| 64d40 | 70 65 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 61 72 67 5f 6e | pe</span>,.................arg_n |
| 64d60 | 61 6d 65 73 3a 20 5b 5d 5b 5d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | ames:.[][].<span.class="tok-kw"> |
| 64d80 | 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 |
| 64da0 | 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | pe">u8</span>,.................. |
| 64dc0 | 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>. |
| 64de0 | 3c 73 70 61 6e 20 63 6c 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 |
| 64e00 | 3e 20 49 6e 6c 69 6e 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | >.Inline.=.<span.class="tok-kw"> |
| 64e20 | 65 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | enum</span>.{................... |
| 64e40 | 20 20 41 75 74 6f 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 6c 77 61 | ..Auto,.....................Alwa |
| 64e60 | 79 73 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 4e 65 76 65 72 2c 0a 20 | ys,.....................Never,.. |
| 64e80 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 3b | ...............};.............}; |
| 64ea0 | 0a 20 20 20 20 20 20 20 20 7d 3b 0a 20 20 20 20 7d 3b 0a 7d 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | .........};.....};.};</code></pr |
| 64ec0 | 65 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 74 79 70 65 4e 61 6d 65 | e>..............<h2.id="typeName |
| 64ee0 | 22 3e 40 74 79 70 65 4e 61 6d 65 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f | ">@typeName</h2>........<pre><co |
| 64f00 | 64 65 20 63 6c 61 73 73 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- |
| 64f20 | 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 3a 20 3c 73 70 | builtin">@typeName</span>(T:.<sp |
| 64f40 | 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>) |
| 64f60 | 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 |
| 64f80 | 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | an></code></pre>.......<p>...... |
| 64fa0 | 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 20 74 68 65 20 73 74 72 69 6e | .This.function.returns.the.strin |
| 64fc0 | 67 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 6f 66 20 61 20 74 79 70 65 2e 0a 20 20 20 20 | g.representation.of.a.type...... |
| 64fe0 | 20 20 3c 2f 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 74 79 70 | ..</p>...............<h2.id="typ |
| 65000 | 65 4f 66 22 3e 40 74 79 70 65 4f 66 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 | eOf">@typeOf</h2>........<pre><c |
| 65020 | 6f 64 65 20 63 6c 61 73 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 |
| 65040 | 2d 62 75 69 6c 74 69 6e 22 3e 40 74 79 70 65 4f 66 3c 2f 73 70 61 6e 3e 28 65 78 70 72 65 73 73 | -builtin">@typeOf</span>(express |
| 65060 | 69 6f 6e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 | ion).<span.class="tok-type">type |
| 65080 | 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>.. |
| 650a0 | 20 20 20 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 20 61 20 63 6f 6d | .....This.function.returns.a.com |
| 650c0 | 70 69 6c 65 2d 74 69 6d 65 20 63 6f 6e 73 74 61 6e 74 2c 20 77 68 69 63 68 20 69 73 20 74 68 65 | pile-time.constant,.which.is.the |
| 650e0 | 20 74 79 70 65 20 6f 66 20 74 68 65 0a 20 20 20 20 20 20 65 78 70 72 65 73 73 69 6f 6e 20 70 61 | .type.of.the.......expression.pa |
| 65100 | 73 73 65 64 20 61 73 20 61 6e 20 61 72 67 75 6d 65 6e 74 2e 20 54 68 65 20 65 78 70 72 65 73 73 | ssed.as.an.argument..The.express |
| 65120 | 69 6f 6e 20 69 73 20 65 76 61 6c 75 61 74 65 64 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 0a 20 20 | ion.is.evaluated........</p>.... |
| 65140 | 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 42 75 69 6c 64 2d | ..................<h1.id="Build- |
| 65160 | 4d 6f 64 65 22 3e 42 75 69 6c 64 20 4d 6f 64 65 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e | Mode">Build.Mode</h1>........<p> |
| 65180 | 0a 20 20 20 20 20 20 5a 69 67 20 68 61 73 20 66 6f 75 72 20 62 75 69 6c 64 20 6d 6f 64 65 73 3a | .......Zig.has.four.build.modes: |
| 651a0 | 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>.........< |
| 651c0 | 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 44 65 62 75 67 22 3e 44 65 62 75 67 3c 2f 61 3e 20 28 64 | li><a.href="#Debug">Debug</a>.(d |
| 651e0 | 65 66 61 75 6c 74 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 | efault)</li>.........<li><a.href |
| 65200 | 3d 22 23 52 65 6c 65 61 73 65 46 61 73 74 22 3e 52 65 6c 65 61 73 65 46 61 73 74 3c 2f 61 3e 3c | ="#ReleaseFast">ReleaseFast</a>< |
| 65220 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 52 65 6c 65 61 | /li>.........<li><a.href="#Relea |
| 65240 | 73 65 53 61 66 65 22 3e 52 65 6c 65 61 73 65 53 61 66 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 | seSafe">ReleaseSafe</a></li>.... |
| 65260 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 52 65 6c 65 61 73 65 53 6d 61 6c 6c 22 | .....<li><a.href="#ReleaseSmall" |
| 65280 | 3e 52 65 6c 65 61 73 65 53 6d 61 6c 6c 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 | >ReleaseSmall</a></li>.......</u |
| 652a0 | 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 6f 20 61 64 64 20 73 74 61 6e 64 61 | l>.......<p>.......To.add.standa |
| 652c0 | 72 64 20 62 75 69 6c 64 20 6f 70 74 69 6f 6e 73 20 74 6f 20 61 20 3c 63 6f 64 65 3e 62 75 69 6c | rd.build.options.to.a.<code>buil |
| 652e0 | 64 2e 7a 69 67 3c 2f 63 6f 64 65 3e 20 66 69 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 | d.zig</code>.file:.......</p>... |
| 65300 | 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 |
| 65320 | 20 63 6c 61 73 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 | .class="tok-kw">const</span>.Bui |
| 65340 | 6c 64 65 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | lder.=.<span.class="tok-builtin" |
| 65360 | 3e 40 69 6d 70 6f 72 74 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 |
| 65380 | 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 62 75 | -str">"std"</span>).bu |
| 653a0 | 69 6c 64 2e 42 75 69 6c 64 65 72 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ild.Builder;..<span.class="tok-k |
| 653c0 | 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 |
| 653e0 | 77 22 3e 66 6e 3c 2f 73 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 |
| 65400 | 22 3e 62 75 69 6c 64 3c 2f 73 70 61 6e 3e 28 62 3a 20 2a 42 75 69 6c 64 65 72 29 20 3c 73 70 61 | ">build</span>(b:.*Builder).<spa |
| 65420 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b | n.class="tok-type">void</span>.{ |
| 65440 | 0a 20 20 20 20 3c 73 70 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< |
| 65460 | 2f 73 70 61 6e 3e 20 65 78 65 20 3d 20 62 2e 61 64 64 45 78 65 63 75 74 61 62 6c 65 28 3c 73 70 | /span>.exe.=.b.addExecutable(<sp |
| 65480 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 65 78 61 6d 70 6c 65 | an.class="tok-str">"example |
| 654a0 | 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 2d | "</span>,.<span.class="tok- |
| 654c0 | 73 74 72 22 3e 26 71 75 6f 74 3b 65 78 61 6d 70 6c 65 2e 7a 69 67 26 71 75 6f 74 3b 3c 2f 73 70 | str">"example.zig"</sp |
| 654e0 | 61 6e 3e 29 3b 0a 20 20 20 20 65 78 65 2e 73 65 74 42 75 69 6c 64 4d 6f 64 65 28 62 2e 73 74 61 | an>);.....exe.setBuildMode(b.sta |
| 65500 | 6e 64 61 72 64 52 65 6c 65 61 73 65 4f 70 74 69 6f 6e 73 28 29 29 3b 0a 20 20 20 20 62 2e 64 65 | ndardReleaseOptions());.....b.de |
| 65520 | 66 61 75 6c 74 5f 73 74 65 70 2e 64 65 70 65 6e 64 4f 6e 28 26 61 6d 70 3b 65 78 65 2e 73 74 65 | fault_step.dependOn(&exe.ste |
| 65540 | 70 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | p);.}</code></pre>.......<p>.... |
| 65560 | 20 20 20 54 68 69 73 20 63 61 75 73 65 73 20 74 68 65 73 65 20 6f 70 74 69 6f 6e 73 20 74 6f 20 | ...This.causes.these.options.to. |
| 65580 | 62 65 20 61 76 61 69 6c 61 62 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | be.available:.......</p>.......< |
| 655a0 | 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 20 20 2d 44 72 65 6c 65 | pre><code.class="shell">..-Drele |
| 655c0 | 61 73 65 2d 73 61 66 65 3d 5b 62 6f 6f 6c 5d 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 73 20 6f 6e | ase-safe=[bool].optimizations.on |
| 655e0 | 20 61 6e 64 20 73 61 66 65 74 79 20 6f 6e 0a 20 20 2d 44 72 65 6c 65 61 73 65 2d 66 61 73 74 3d | .and.safety.on...-Drelease-fast= |
| 65600 | 5b 62 6f 6f 6c 5d 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 73 20 6f 6e 20 61 6e 64 20 73 61 66 65 | [bool].optimizations.on.and.safe |
| 65620 | 74 79 20 6f 66 66 0a 20 20 2d 44 72 65 6c 65 61 73 65 2d 73 6d 61 6c 6c 3d 5b 62 6f 6f 6c 5d 20 | ty.off...-Drelease-small=[bool]. |
| 65640 | 73 69 7a 65 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 73 20 6f 6e 20 61 6e 64 20 73 61 66 65 74 79 | size.optimizations.on.and.safety |
| 65660 | 20 6f 66 66 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 | .off</code></pre>.......<h2.id=" |
| 65680 | 44 65 62 75 67 22 3e 44 65 62 75 67 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 | Debug">Debug</h2>........<pre><c |
| 656a0 | 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 |
| 656c0 | 65 20 65 78 61 6d 70 6c 65 2e 7a 69 67 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 | e.example.zig</code></pre>...... |
| 656e0 | 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 46 61 73 74 20 63 6f 6d 70 69 6c 61 74 69 | .<ul>.........<li>Fast.compilati |
| 65700 | 6f 6e 20 73 70 65 65 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 61 66 65 74 79 | on.speed</li>.........<li>Safety |
| 65720 | 20 63 68 65 63 6b 73 20 65 6e 61 62 6c 65 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 | .checks.enabled</li>.........<li |
| 65740 | 3e 53 6c 6f 77 20 72 75 6e 74 69 6d 65 20 70 65 72 66 6f 72 6d 61 6e 63 65 3c 2f 6c 69 3e 0a 20 | >Slow.runtime.performance</li>.. |
| 65760 | 20 20 20 20 20 20 20 3c 6c 69 3e 4c 61 72 67 65 20 62 69 6e 61 72 79 20 73 69 7a 65 3c 2f 6c 69 | .......<li>Large.binary.size</li |
| 65780 | 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 4e 6f 20 72 65 70 72 6f 64 75 63 69 62 6c 65 20 62 75 | >.........<li>No.reproducible.bu |
| 657a0 | 69 6c 64 20 72 65 71 75 69 72 65 6d 65 6e 74 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e | ild.requirement</li>.......</ul> |
| 657c0 | 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 52 65 6c 65 61 73 65 46 61 73 | ..............<h2.id="ReleaseFas |
| 657e0 | 74 22 3e 52 65 6c 65 61 73 65 46 61 73 74 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 72 65 3e | t">ReleaseFast</h2>........<pre> |
| 65800 | 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- |
| 65820 | 65 78 65 20 65 78 61 6d 70 6c 65 2e 7a 69 67 20 2d 2d 72 65 6c 65 61 73 65 2d 66 61 73 74 3c 2f | exe.example.zig.--release-fast</ |
| 65840 | 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 3c | code></pre>.......<ul>.........< |
| 65860 | 6c 69 3e 46 61 73 74 20 72 75 6e 74 69 6d 65 20 70 65 72 66 6f 72 6d 61 6e 63 65 3c 2f 6c 69 3e | li>Fast.runtime.performance</li> |
| 65880 | 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 61 66 65 74 79 20 63 68 65 63 6b 73 20 64 69 73 61 62 | .........<li>Safety.checks.disab |
| 658a0 | 6c 65 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 6c 6f 77 20 63 6f 6d 70 69 6c | led</li>.........<li>Slow.compil |
| 658c0 | 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 61 72 | ation.speed</li>.........<li>Lar |
| 658e0 | 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 69 3e | ge.binary.size</li>.........<li> |
| 65900 | 52 65 70 72 6f 64 75 63 69 62 6c 65 20 62 75 69 6c 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f | Reproducible.build</li>.......</ |
| 65920 | 75 6c 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 52 65 6c 65 61 73 65 | ul>..............<h2.id="Release |
| 65940 | 53 61 66 65 22 3e 52 65 6c 65 61 73 65 53 61 66 65 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 | Safe">ReleaseSafe</h2>........<p |
| 65960 | 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 |
| 65980 | 6c 64 2d 65 78 65 20 65 78 61 6d 70 6c 65 2e 7a 69 67 20 2d 2d 72 65 6c 65 61 73 65 2d 73 61 66 | ld-exe.example.zig.--release-saf |
| 659a0 | 65 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 | e</code></pre>.......<ul>....... |
| 659c0 | 20 20 3c 6c 69 3e 4d 65 64 69 75 6d 20 72 75 6e 74 69 6d 65 20 70 65 72 66 6f 72 6d 61 6e 63 65 | ..<li>Medium.runtime.performance |
| 659e0 | 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 61 66 65 74 79 20 63 68 65 63 6b 73 20 | </li>.........<li>Safety.checks. |
| 65a00 | 65 6e 61 62 6c 65 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 6c 6f 77 20 63 6f | enabled</li>.........<li>Slow.co |
| 65a20 | 6d 70 69 6c 61 74 69 6f 6e 20 73 70 65 65 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 | mpilation.speed</li>.........<li |
| 65a40 | 3e 4c 61 72 67 65 20 62 69 6e 61 72 79 20 73 69 7a 65 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | >Large.binary.size</li>......... |
| 65a60 | 3c 6c 69 3e 52 65 70 72 6f 64 75 63 69 62 6c 65 20 62 75 69 6c 64 3c 2f 6c 69 3e 0a 20 20 20 20 | <li>Reproducible.build</li>..... |
| 65a80 | 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 3d 22 52 65 6c | ..</ul>..............<h2.id="Rel |
| 65aa0 | 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 68 32 3e 0a 0a 20 20 | easeSmall">ReleaseSmall</h2>.... |
| 65ac0 | 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 65 6c 6c 22 3e 24 20 7a | ....<pre><code.class="shell">$.z |
| 65ae0 | 69 67 20 62 75 69 6c 64 2d 65 78 65 20 65 78 61 6d 70 6c 65 2e 7a 69 67 20 2d 2d 72 65 6c 65 61 | ig.build-exe.example.zig.--relea |
| 65b00 | 73 65 2d 73 6d 61 6c 6c 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 75 6c 3e | se-small</code></pre>.......<ul> |
| 65b20 | 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 4d 65 64 69 75 6d 20 72 75 6e 74 69 6d 65 20 70 65 72 66 | .........<li>Medium.runtime.perf |
| 65b40 | 6f 72 6d 61 6e 63 65 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 53 61 66 65 74 79 20 | ormance</li>.........<li>Safety. |
| 65b60 | 63 68 65 63 6b 73 20 64 69 73 61 62 6c 65 64 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 | checks.disabled</li>.........<li |
| 65b80 | 3e 53 6c 6f 77 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 73 70 65 65 64 3c 2f 6c 69 3e 0a 20 20 20 | >Slow.compilation.speed</li>.... |
| 65ba0 | 20 20 20 20 20 3c 6c 69 3e 53 6d 61 6c 6c 20 62 69 6e 61 72 79 20 73 69 7a 65 3c 2f 6c 69 3e 0a | .....<li>Small.binary.size</li>. |
| 65bc0 | 20 20 20 20 20 20 20 20 3c 6c 69 3e 52 65 70 72 6f 64 75 63 69 62 6c 65 20 62 75 69 6c 64 3c 2f | ........<li>Reproducible.build</ |
| 65be0 | 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 70 3e | li>.......</ul>..............<p> |
| 65c00 | 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="# |
| 65c20 | 43 6f 6d 70 69 6c 65 2d 56 61 72 69 61 62 6c 65 73 22 3e 43 6f 6d 70 69 6c 65 20 56 61 72 69 61 | Compile-Variables">Compile.Varia |
| 65c40 | 62 6c 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 5a 69 67 2d | bles</a></li>.<li><a.href="#Zig- |
| 65c60 | 42 75 69 6c 64 2d 53 79 73 74 65 6d 22 3e 5a 69 67 20 42 75 69 6c 64 20 53 79 73 74 65 6d 3c 2f | Build-System">Zig.Build.System</ |
| 65c80 | 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 55 6e 64 65 66 69 6e 65 64 2d | a></li>.<li><a.href="#Undefined- |
| 65ca0 | 42 65 68 61 76 69 6f 72 22 3e 55 6e 64 65 66 69 6e 65 64 20 42 65 68 61 76 69 6f 72 3c 2f 61 3e | Behavior">Undefined.Behavior</a> |
| 65cc0 | 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 |
| 65ce0 | 3d 22 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. |
| 65d00 | 42 65 68 61 76 69 6f 72 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 5a | Behavior</h1>........<p>.......Z |
| 65d20 | 69 67 20 68 61 73 20 6d 61 6e 79 20 69 6e 73 74 61 6e 63 65 73 20 6f 66 20 75 6e 64 65 66 69 6e | ig.has.many.instances.of.undefin |
| 65d40 | 65 64 20 62 65 68 61 76 69 6f 72 2e 20 49 66 20 75 6e 64 65 66 69 6e 65 64 20 62 65 68 61 76 69 | ed.behavior..If.undefined.behavi |
| 65d60 | 6f 72 20 69 73 0a 20 20 20 20 20 20 64 65 74 65 63 74 65 64 20 61 74 20 63 6f 6d 70 69 6c 65 2d | or.is.......detected.at.compile- |
| 65d80 | 74 69 6d 65 2c 20 5a 69 67 20 65 6d 69 74 73 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 20 | time,.Zig.emits.a.compile.error. |
| 65da0 | 61 6e 64 20 72 65 66 75 73 65 73 20 74 6f 20 63 6f 6e 74 69 6e 75 65 2e 0a 20 20 20 20 20 20 4d | and.refuses.to.continue........M |
| 65dc0 | 6f 73 74 20 75 6e 64 65 66 69 6e 65 64 20 62 65 68 61 76 69 6f 72 20 74 68 61 74 20 63 61 6e 6e | ost.undefined.behavior.that.cann |
| 65de0 | 6f 74 20 62 65 20 64 65 74 65 63 74 65 64 20 61 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 63 | ot.be.detected.at.compile-time.c |
| 65e00 | 61 6e 20 62 65 20 64 65 74 65 63 74 65 64 0a 20 20 20 20 20 20 61 74 20 72 75 6e 74 69 6d 65 2e | an.be.detected.......at.runtime. |
| 65e20 | 20 49 6e 20 74 68 65 73 65 20 63 61 73 65 73 2c 20 5a 69 67 20 68 61 73 20 73 61 66 65 74 79 20 | .In.these.cases,.Zig.has.safety. |
| 65e40 | 63 68 65 63 6b 73 2e 20 53 61 66 65 74 79 20 63 68 65 63 6b 73 20 63 61 6e 20 62 65 20 64 69 73 | checks..Safety.checks.can.be.dis |
| 65e60 | 61 62 6c 65 64 0a 20 20 20 20 20 20 6f 6e 20 61 20 70 65 72 2d 62 6c 6f 63 6b 20 62 61 73 69 73 | abled.......on.a.per-block.basis |
| 65e80 | 20 77 69 74 68 20 3c 61 20 68 72 65 66 3d 22 23 73 65 74 52 75 6e 74 69 6d 65 53 61 66 65 74 79 | .with.<a.href="#setRuntimeSafety |
| 65ea0 | 22 3e 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 |
| 65ec0 | 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</ |
| 65ee0 | 61 3e 0a 20 20 20 20 20 20 62 75 69 6c 64 20 6d 6f 64 65 20 64 69 73 61 62 6c 65 73 20 61 6c 6c | a>.......build.mode.disables.all |
| 65f00 | 20 73 61 66 65 74 79 20 63 68 65 63 6b 73 20 69 6e 20 6f 72 64 65 72 20 74 6f 20 66 61 63 69 6c | .safety.checks.in.order.to.facil |
| 65f20 | 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 3e 0a | itate.optimizations........</p>. |
| 65f40 | 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 63 68 | ......<p>.......When.a.safety.ch |
| 65f60 | 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 73 74 | eck.fails,.Zig.crashes.with.a.st |
| 65f80 | 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 70 3e | ack.trace,.like.this:.......</p> |
| 65fa0 | 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< |
| 65fc0 | 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. |
| 65fe0 | 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 |
| 66000 | 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 63 68 | .class="tok-str">"safety.ch |
| 66020 | 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 6c 61 | eck"</span>.{.....<span.cla |
| 66040 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a | ss="tok-kw">unreachable</span>;. |
| 66060 | 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=" |
| 66080 | 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 | shell">$.zig.test.test.zig.Test. |
| 660a0 | 31 2f 31 20 73 61 66 65 74 79 20 63 68 65 63 6b 2e 2e 2e 72 65 61 63 68 65 64 20 75 6e 72 65 61 | 1/1.safety.check...reached.unrea |
| 660c0 | 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 74 33 37 5f 31 22 3e | chable.code.<span.class="t37_1"> |
| 660e0 | 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 | /home/andy/dev/zig/docgen_tmp/te |
| 66100 | 73 74 2e 7a 69 67 3a 32 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | st.zig:2:5</span>:.<span.class=" |
| 66120 | 74 32 5f 30 22 3e 30 78 32 30 35 30 35 34 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 | t2_0">0x205054.in.???.(test)</sp |
| 66140 | 61 6e 3e 0a 20 20 20 20 75 6e 72 65 61 63 68 61 62 6c 65 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | an>.....unreachable;.....<span.c |
| 66160 | 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 |
| 66180 | 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 | s="t37_1">/home/andy/dev/zig/bui |
| 661a0 | 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 74 65 73 74 5f 72 75 6e 6e | ld/lib/zig/std/special/test_runn |
| 661c0 | 65 72 2e 7a 69 67 3a 31 33 3a 32 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | er.zig:13:25</span>:.<span.class |
| 661e0 | 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 39 34 61 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f | ="t2_0">0x22294a.in.???.(test)</ |
| 66200 | 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 69 66 20 28 74 65 73 74 5f 66 6e 2e 66 75 6e 63 28 29 | span>.........if.(test_fn.func() |
| 66220 | 29 20 7c 5f 7c 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ).|_|.{......................... |
| 66240 | 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 |
| 66260 | 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 64 65 76 2f | an.class="t37_1">/home/andy/dev/ |
| 66280 | 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f | zig/build/lib/zig/std/special/bo |
| 662a0 | 6f 74 73 74 72 61 70 2e 7a 69 67 3a 39 36 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 | otstrap.zig:96:22</span>:.<span. |
| 662c0 | 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 36 66 62 20 69 6e 20 3f 3f 3f 20 28 74 65 | class="t2_0">0x2226fb.in.???.(te |
| 662e0 | 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 6f 74 2e 6d 61 69 6e | st)</span>.............root.main |
| 66300 | 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 20 | ().catch.|err|.{................ |
| 66320 | 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 |
| 66340 | 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 |
| 66360 | 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 | y/dev/zig/build/lib/zig/std/spec |
| 66380 | 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 37 30 3a 32 30 3c 2f 73 70 61 6e 3e 3a 20 | ial/bootstrap.zig:70:20</span>:. |
| 663a0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 36 37 35 20 69 6e 20 3f | <span.class="t2_0">0x222675.in.? |
| 663c0 | 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 63 61 6c 6c | ??.(test)</span>.....return.call |
| 663e0 | 4d 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 3c 73 70 61 6e | Main();....................<span |
| 66400 | 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 |
| 66420 | 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 | ass="t37_1">/home/andy/dev/zig/b |
| 66440 | 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 | uild/lib/zig/std/special/bootstr |
| 66460 | 61 70 2e 7a 69 67 3a 36 34 3a 33 39 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ap.zig:64:39</span>:.<span.class |
| 66480 | 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 34 64 38 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f | ="t2_0">0x2224d8.in.???.(test)</ |
| 664a0 | 73 70 61 6e 3e 0a 20 20 20 20 73 74 64 2e 6f 73 2e 70 6f 73 69 78 2e 65 78 69 74 28 63 61 6c 6c | span>.....std.os.posix.exit(call |
| 664c0 | 4d 61 69 6e 57 69 74 68 41 72 67 73 28 61 72 67 63 2c 20 61 72 67 76 2c 20 65 6e 76 70 29 29 3b | MainWithArgs(argc,.argv,.envp)); |
| 664e0 | 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 | ................................ |
| 66500 | 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 |
| 66520 | 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 |
| 66540 | 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 | dy/dev/zig/build/lib/zig/std/spe |
| 66560 | 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 33 37 3a 35 3c 2f 73 70 61 6e 3e 3a 20 | cial/bootstrap.zig:37:5</span>:. |
| 66580 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 33 39 30 20 69 6e 20 3f | <span.class="t2_0">0x222390.in.? |
| 665a0 | 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 6e 6f 49 6e 6c 69 6e 65 43 61 | ??.(test)</span>.....@noInlineCa |
| 665c0 | 6c 6c 28 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 29 3b 0a 20 20 20 20 3c 73 | ll(posixCallMainAndExit);.....<s |
| 665e0 | 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 0a 54 65 73 74 | pan.class="t32_1">^</span>..Test |
| 66600 | 73 20 66 61 69 6c 65 64 2e 20 55 73 65 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 6d 6d | s.failed..Use.the.following.comm |
| 66620 | 61 6e 64 20 74 6f 20 72 65 70 72 6f 64 75 63 65 20 74 68 65 20 66 61 69 6c 75 72 65 3a 0a 2f 68 | and.to.reproduce.the.failure:./h |
| 66640 | 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 | ome/andy/dev/zig/docgen_tmp/test |
| 66660 | 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 52 65 | .</code></pre>........<h2.id="Re |
| 66680 | 61 63 68 69 6e 67 2d 55 6e 72 65 61 63 68 61 62 6c 65 2d 43 6f 64 65 22 3e 52 65 61 63 68 69 6e | aching-Unreachable-Code">Reachin |
| 666a0 | 67 20 55 6e 72 65 61 63 68 61 62 6c 65 20 43 6f 64 65 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c | g.Unreachable.Code</h2>........< |
| 666c0 | 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. |
| 666e0 | 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 |
| 66700 | 6f 64 65 20 63 6c 61 73 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 |
| 66720 | 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 61 73 73 65 72 | -kw">comptime</span>.{.....asser |
| 66740 | 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f | t(<span.class="tok-null">false</ |
| 66760 | 73 70 61 6e 3e 29 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 | span>);.}.<span.class="tok-kw">f |
| 66780 | 6e 3c 2f 73 70 61 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 | n</span>.<span.class="tok-fn">as |
| 667a0 | 73 65 72 74 3c 2f 73 70 61 6e 3e 28 6f 6b 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | sert</span>(ok:.<span.class="tok |
| 667c0 | 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= |
| 667e0 | 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 |
| 66800 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 21 6f 6b | an.class="tok-kw">if</span>.(!ok |
| 66820 | 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 | ).<span.class="tok-kw">unreachab |
| 66840 | 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 6f 6d 6d | le</span>;.<span.class="tok-comm |
| 66860 | 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 61 6e 3e | ent">//.assertion.failure</span> |
| 66880 | 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= |
| 668a0 | 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 |
| 668c0 | 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 | n.class="t0_1">/home/andy/dev/zi |
| 668e0 | 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 34 3a 20 3c 2f 73 70 | g/docgen_tmp/test.zig:5:14:.</sp |
| 66900 | 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 3c 2f 73 | an><span.class="t31_1">error:</s |
| 66920 | 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 20 75 6e 61 62 6c 65 20 74 | pan><span.class="t0_1">.unable.t |
| 66940 | 6f 20 65 76 61 6c 75 61 74 65 20 63 6f 6e 73 74 61 6e 74 20 65 78 70 72 65 73 73 69 6f 6e 3c 2f | o.evaluate.constant.expression</ |
| 66960 | 73 70 61 6e 3e 0a 20 20 20 20 69 66 20 28 21 6f 6b 29 20 75 6e 72 65 61 63 68 61 62 6c 65 3b 20 | span>.....if.(!ok).unreachable;. |
| 66980 | 2f 2f 20 61 73 73 65 72 74 69 6f 6e 20 66 61 69 6c 75 72 65 0a 20 20 20 20 20 20 20 20 20 20 20 | //.assertion.failure............ |
| 669a0 | 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>.< |
| 669c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 | span.class="t0_1">/home/andy/dev |
| 669e0 | 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 31 3a 20 3c | /zig/docgen_tmp/test.zig:2:11:.< |
| 66a00 | 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 3c | /span><span.class="t36_1">note:< |
| 66a20 | 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 20 63 61 6c 6c 65 64 | /span><span.class="t0_1">.called |
| 66a40 | 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 61 73 73 65 72 74 28 66 61 6c | .from.here</span>.....assert(fal |
| 66a60 | 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 5f | se);...........<span.class="t32_ |
| 66a80 | 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 3e 2f | 1">^</span>.<span.class="t0_1">/ |
| 66aa0 | 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 | home/andy/dev/zig/docgen_tmp/tes |
| 66ac0 | 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 3d 22 | t.zig:1:10:.</span><span.class=" |
| 66ae0 | 74 33 36 5f 31 22 3e 6e 6f 74 65 3a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | t36_1">note:</span><span.class=" |
| 66b00 | 74 30 5f 31 22 3e 20 63 61 6c 6c 65 64 20 66 72 6f 6d 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 63 | t0_1">.called.from.here</span>.c |
| 66b20 | 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 3d 22 | omptime.{..........<span.class=" |
| 66b40 | 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>... |
| 66b60 | 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 |
| 66b80 | 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>< |
| 66ba0 | 63 6f 64 65 20 63 6c 61 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 |
| 66bc0 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 74 64 20 3d 20 3c 73 70 61 6e 20 63 | k-kw">const</span>.std.=.<span.c |
| 66be0 | 6c 61 73 73 3d 22 74 6f 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 |
| 66c00 | 3e 28 3c 73 70 61 6e 20 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 |
| 66c20 | 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | d"</span>);..<span.class="t |
| 66c40 | 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 |
| 66c60 | 6f 6b 2d 6b 77 22 3e 66 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 |
| 66c80 | 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= |
| 66ca0 | 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 73 74 64 | "tok-type">void</span>.{.....std |
| 66cc0 | 2e 64 65 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 | .debug.assert(<span.class="tok-n |
| 66ce0 | 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | ull">false</span>);.}</code></pr |
| 66d00 | 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 |
| 66d20 | 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 72 65 61 | .build-exe.test.zig.$../test.rea |
| 66d40 | 63 68 65 64 20 75 6e 72 65 61 63 68 61 62 6c 65 20 63 6f 64 65 0a 3c 73 70 61 6e 20 63 6c 61 73 | ched.unreachable.code.<span.clas |
| 66d60 | 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 | s="t37_1">/home/andy/dev/zig/bui |
| 66d80 | 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 64 65 62 75 67 2f 69 6e 64 65 78 2e 7a 69 67 3a 31 | ld/lib/zig/std/debug/index.zig:1 |
| 66da0 | 32 30 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 22 | 20:13</span>:.<span.class="t2_0" |
| 66dc0 | 3e 30 78 32 30 35 30 32 39 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 | >0x205029.in.???.(test)</span>.. |
| 66de0 | 20 20 20 20 20 20 20 20 20 20 20 75 6e 72 65 61 63 68 61 62 6c 65 3b 20 2f 2f 20 61 73 73 65 72 | ...........unreachable;.//.asser |
| 66e00 | 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 3c 73 70 61 6e 20 63 | tion.failure.............<span.c |
| 66e20 | 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 |
| 66e40 | 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 | s="t37_1">/home/andy/dev/zig/doc |
| 66e60 | 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 34 3a 32 31 3c 2f 73 70 61 6e 3e 3a 20 3c 73 | gen_tmp/test.zig:4:21</span>:.<s |
| 66e80 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 36 63 62 20 69 6e 20 3f 3f 3f | pan.class="t2_0">0x2226cb.in.??? |
| 66ea0 | 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 61 73 73 | .(test)</span>.....std.debug.ass |
| 66ec0 | 65 72 74 28 66 61 6c 73 65 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ert(false);..................... |
| 66ee0 | 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 |
| 66f00 | 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 64 65 76 2f | an.class="t37_1">/home/andy/dev/ |
| 66f20 | 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f | zig/build/lib/zig/std/special/bo |
| 66f40 | 6f 74 73 74 72 61 70 2e 7a 69 67 3a 38 36 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 | otstrap.zig:86:22</span>:.<span. |
| 66f60 | 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 36 61 39 20 69 6e 20 3f 3f 3f 20 28 74 65 | class="t2_0">0x2226a9.in.???.(te |
| 66f80 | 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 6f 74 2e 6d 61 69 6e | st)</span>.............root.main |
| 66fa0 | 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | ();......................<span.c |
| 66fc0 | 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 |
| 66fe0 | 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 | s="t37_1">/home/andy/dev/zig/bui |
| 67000 | 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 | ld/lib/zig/std/special/bootstrap |
| 67020 | 2e 7a 69 67 3a 37 30 3a 32 30 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .zig:70:20</span>:.<span.class=" |
| 67040 | 74 32 5f 30 22 3e 30 78 32 32 32 36 35 35 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 | t2_0">0x222655.in.???.(test)</sp |
| 67060 | 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 63 61 6c 6c 4d 61 69 6e 28 29 3b 0a 20 20 20 20 20 | an>.....return.callMain();...... |
| 67080 | 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 |
| 670a0 | 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">/ |
| 670c0 | 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f | home/andy/dev/zig/build/lib/zig/ |
| 670e0 | 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 36 34 3a 33 39 3c | std/special/bootstrap.zig:64:39< |
| 67100 | 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 | /span>:.<span.class="t2_0">0x222 |
| 67120 | 34 62 38 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 74 64 | 4b8.in.???.(test)</span>.....std |
| 67140 | 2e 6f 73 2e 70 6f 73 69 78 2e 65 78 69 74 28 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 28 | .os.posix.exit(callMainWithArgs( |
| 67160 | 61 72 67 63 2c 20 61 72 67 76 2c 20 65 6e 76 70 29 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 | argc,.argv,.envp));............. |
| 67180 | 20 20 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. |
| 671a0 | 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 |
| 671c0 | 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 | ss="t37_1">/home/andy/dev/zig/bu |
| 671e0 | 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 | ild/lib/zig/std/special/bootstra |
| 67200 | 70 2e 7a 69 67 3a 33 37 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | p.zig:37:5</span>:.<span.class=" |
| 67220 | 74 32 5f 30 22 3e 30 78 32 32 32 33 37 30 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 | t2_0">0x222370.in.???.(test)</sp |
| 67240 | 61 6e 3e 0a 20 20 20 20 40 6e 6f 49 6e 6c 69 6e 65 43 61 6c 6c 28 70 6f 73 69 78 43 61 6c 6c 4d | an>.....@noInlineCall(posixCallM |
| 67260 | 61 69 6e 41 6e 64 45 78 69 74 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 | ainAndExit);.....<span.class="t3 |
| 67280 | 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>..... |
| 672a0 | 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 49 6e 64 65 78 2d 6f 75 74 2d 6f 66 2d 42 | ..........<h2.id="Index-out-of-B |
| 672c0 | 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 68 32 3e 0a | ounds">Index.out.of.Bounds</h2>. |
| 672e0 | 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>.. |
| 67300 | 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 |
| 67320 | 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 |
| 67340 | 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>.{.. |
| 67360 | 20 20 20 3c 73 70 61 6e 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 |
| 67380 | 70 61 6e 3e 20 61 72 72 61 79 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | pan>.array.=.<span.class="tok-st |
| 673a0 | 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 | r">"hello"</span>;.... |
| 673c0 | 20 3c 73 70 61 6e 20 63 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 |
| 673e0 | 6e 3e 20 67 61 72 62 61 67 65 20 3d 20 61 72 72 61 79 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | n>.garbage.=.array[<span.class=" |
| 67400 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 5d 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c | tok-number">5</span>];.}</code>< |
| 67420 | 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">$. |
| 67440 | 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 |
| 67460 | 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 | 0_1">/home/andy/dev/zig/docgen_t |
| 67480 | 6d 70 2f 74 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 | mp/test.zig:3:26:.</span><span.c |
| 674a0 | 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 | lass="t31_1">error:</span><span. |
| 674c0 | 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 20 69 6e 64 65 78 20 35 20 6f 75 74 73 69 64 65 20 61 72 | class="t0_1">.index.5.outside.ar |
| 674e0 | 72 61 79 20 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 | ray.of.size.5</span>.....const.g |
| 67500 | 61 72 62 61 67 65 20 3d 20 61 72 72 61 79 5b 35 5d 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | arbage.=.array[5];.............. |
| 67520 | 20 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"> |
| 67540 | 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 |
| 67560 | 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 3d | >At.runtime:</p>.......<p.class= |
| 67580 | 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 |
| 675a0 | 61 73 73 3d 22 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 | ass="zig"><span.class="tok-kw">p |
| 675c0 | 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 |
| 675e0 | 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 | n</span>.<span.class="tok-fn">ma |
| 67600 | 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | in</span>().<span.class="tok-typ |
| 67620 | 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 |
| 67640 | 3d 22 74 6f 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 | ="tok-kw">var</span>.x.=.foo(<sp |
| 67660 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 | an.class="tok-str">"hello&q |
| 67680 | 75 6f 74 3b 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 | uot;</span>);.}..<span.class="to |
| 676a0 | 6b 2d 6b 77 22 3e 66 6e 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 |
| 676c0 | 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 78 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 | -fn">foo</span>(x:.[]<span.class |
| 676e0 | 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 |
| 67700 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 | ss="tok-type">u8</span>).<span.c |
| 67720 | 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>.{..... |
| 67740 | 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 |
| 67760 | 6e 3e 20 78 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c | n>.x[<span.class="tok-number">5< |
| 67780 | 2f 73 70 61 6e 3e 5d 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 | /span>];.}</code></pre><pre><cod |
| 677a0 | 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. |
| 677c0 | 74 65 73 74 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 | test.zig.$../test.index.out.of.b |
| 677e0 | 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 68 6f 6d 65 2f | ounds.<span.class="t37_1">/home/ |
| 67800 | 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 | andy/dev/zig/docgen_tmp/test.zig |
| 67820 | 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 30 22 | :6:13</span>:.<span.class="t2_0" |
| 67840 | 3e 30 78 32 32 32 37 30 39 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 | >0x222709.in.???.(test)</span>.. |
| 67860 | 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 70 61 | ...return.x[5];.............<spa |
| 67880 | 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 |
| 678a0 | 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f | lass="t37_1">/home/andy/dev/zig/ |
| 678c0 | 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 32 3a 31 36 3c 2f 73 70 61 6e 3e 3a | docgen_tmp/test.zig:2:16</span>: |
| 678e0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 36 64 34 20 69 6e 20 | .<span.class="t2_0">0x2226d4.in. |
| 67900 | 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 76 61 72 20 78 20 3d 20 66 6f | ???.(test)</span>.....var.x.=.fo |
| 67920 | 6f 28 26 71 75 6f 74 3b 68 65 6c 6c 6f 26 71 75 6f 74 3b 29 3b 0a 20 20 20 20 20 20 20 20 20 20 | o("hello");........... |
| 67940 | 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 |
| 67960 | 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 |
| 67980 | 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 | /dev/zig/build/lib/zig/std/speci |
| 679a0 | 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 38 36 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c | al/bootstrap.zig:86:22</span>:.< |
| 679c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 36 61 39 20 69 6e 20 3f 3f | span.class="t2_0">0x2226a9.in.?? |
| 679e0 | 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 6f 74 | ?.(test)</span>.............root |
| 67a00 | 2e 6d 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 | .main();......................<s |
| 67a20 | 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 |
| 67a40 | 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 64 65 76 2f 7a 69 | .class="t37_1">/home/andy/dev/zi |
| 67a60 | 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 | g/build/lib/zig/std/special/boot |
| 67a80 | 73 74 72 61 70 2e 7a 69 67 3a 37 30 3a 32 30 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c | strap.zig:70:20</span>:.<span.cl |
| 67aa0 | 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 36 35 35 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 | ass="t2_0">0x222655.in.???.(test |
| 67ac0 | 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 63 61 6c 6c 4d 61 69 6e 28 29 3b 0a | )</span>.....return.callMain();. |
| 67ae0 | 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=" |
| 67b00 | 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 |
| 67b20 | 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 | _1">/home/andy/dev/zig/build/lib |
| 67b40 | 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 36 | /zig/std/special/bootstrap.zig:6 |
| 67b60 | 34 3a 33 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 | 4:39</span>:.<span.class="t2_0"> |
| 67b80 | 30 78 32 32 32 34 62 38 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 | 0x2224b8.in.???.(test)</span>... |
| 67ba0 | 20 20 73 74 64 2e 6f 73 2e 70 6f 73 69 78 2e 65 78 69 74 28 63 61 6c 6c 4d 61 69 6e 57 69 74 68 | ..std.os.posix.exit(callMainWith |
| 67bc0 | 41 72 67 73 28 61 72 67 63 2c 20 61 72 67 76 2c 20 65 6e 76 70 29 29 3b 0a 20 20 20 20 20 20 20 | Args(argc,.argv,.envp));........ |
| 67be0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c | ...............................< |
| 67c00 | 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 |
| 67c20 | 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 64 65 76 2f 7a | n.class="t37_1">/home/andy/dev/z |
| 67c40 | 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f | ig/build/lib/zig/std/special/boo |
| 67c60 | 74 73 74 72 61 70 2e 7a 69 67 3a 33 37 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c | tstrap.zig:37:5</span>:.<span.cl |
| 67c80 | 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 33 37 30 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 | ass="t2_0">0x222370.in.???.(test |
| 67ca0 | 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 6e 6f 49 6e 6c 69 6e 65 43 61 6c 6c 28 70 6f 73 69 78 | )</span>.....@noInlineCall(posix |
| 67cc0 | 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | CallMainAndExit);.....<span.clas |
| 67ce0 | 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> |
| 67d00 | 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 43 61 73 74 2d 4e 65 67 61 | ...............<h2.id="Cast-Nega |
| 67d20 | 74 69 76 65 2d 4e 75 6d 62 65 72 2d 74 6f 2d 55 6e 73 69 67 6e 65 64 2d 49 6e 74 65 67 65 72 22 | tive-Number-to-Unsigned-Integer" |
| 67d40 | 3e 43 61 73 74 20 4e 65 67 61 74 69 76 65 20 4e 75 6d 62 65 72 20 74 6f 20 55 6e 73 69 67 6e 65 | >Cast.Negative.Number.to.Unsigne |
| 67d60 | 64 20 49 6e 74 65 67 65 72 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 63 6f 6d 70 | d.Integer</h2>........<p>At.comp |
| 67d80 | 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 | ile-time:</p>.......<p.class="fi |
| 67da0 | 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 |
| 67dc0 | 3d 22 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 |
| 67de0 | 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | time</span>.{.....<span.class="t |
| 67e00 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 76 61 6c 75 65 3a 20 3c 73 70 61 6e | ok-kw">const</span>.value:.<span |
| 67e20 | 20 63 6c 61 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 2d | .class="tok-type">i32</span>.=.- |
| 67e40 | 3c 73 70 61 6e 20 63 6c 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 |
| 67e60 | 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 |
| 67e80 | 74 3c 2f 73 70 61 6e 3e 20 75 6e 73 69 67 6e 65 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | t</span>.unsigned.=.<span.class= |
| 67ea0 | 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 |
| 67ec0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c | pan.class="tok-type">u32</span>, |
| 67ee0 | 20 76 61 6c 75 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 | .value);.}</code></pre><pre><cod |
| 67f00 | 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. |
| 67f20 | 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 | zig.<span.class="t0_1">/home/and |
| 67f40 | 79 2f 64 65 76 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 | y/dev/zig/docgen_tmp/test.zig:3: |
| 67f60 | 32 32 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 | 22:.</span><span.class="t31_1">e |
| 67f80 | 72 72 6f 72 3a 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 20 | rror:</span><span.class="t0_1">. |
| 67fa0 | 61 74 74 65 6d 70 74 20 74 6f 20 63 61 73 74 20 6e 65 67 61 74 69 76 65 20 76 61 6c 75 65 20 74 | attempt.to.cast.negative.value.t |
| 67fc0 | 6f 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f | o.unsigned.integer</span>.....co |
| 67fe0 | 6e 73 74 20 75 6e 73 69 67 6e 65 64 20 3d 20 40 69 6e 74 43 61 73 74 28 75 33 32 2c 20 76 61 6c | nst.unsigned.=.@intCast(u32,.val |
| 68000 | 75 65 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 | ue);......................<span. |
| 68020 | 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></ |
| 68040 | 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 72 75 6e 74 69 6d 65 3a 3c 2f 70 3e 0a 20 | pre>........<p>At.runtime:</p>.. |
| 68060 | 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 |
| 68080 | 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 |
| 680a0 | 61 73 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.=. |
| 680c0 | 3c 73 70 61 6e 20 63 6c 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 |
| 680e0 | 74 3c 2f 73 70 61 6e 3e 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">& |
| 68100 | 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 | quot;std"</span>);..<span.c |
| 68120 | 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 |
| 68140 | 6c 61 73 73 3d 22 74 6f 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 |
| 68160 | 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e | ass="tok-fn">main</span>().<span |
| 68180 | 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>.{. |
| 681a0 | 20 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 |
| 681c0 | 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 |
| 681e0 | 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 |
| 68200 | 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 |
| 68220 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 75 6e 73 69 67 6e 65 64 20 | ss="tok-kw">var</span>.unsigned. |
| 68240 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 | =.<span.class="tok-builtin">@int |
| 68260 | 43 61 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | Cast</span>(<span.class="tok-typ |
| 68280 | 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 76 61 6c 75 65 29 3b 0a 20 20 20 20 73 74 64 2e 64 | e">u32</span>,.value);.....std.d |
| 682a0 | 65 62 75 67 2e 77 61 72 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e | ebug.warn(<span.class="tok-str"> |
| 682c0 | 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>,. |
| 682e0 | 75 6e 73 69 67 6e 65 64 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 | unsigned);.}</code></pre><pre><c |
| 68300 | 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 |
| 68320 | 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 63 | e.test.zig.$../test.attempt.to.c |
| 68340 | 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 64 20 69 | ast.negative.value.to.unsigned.i |
| 68360 | 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 6f 6d 65 | nteger.<span.class="t37_1">/home |
| 68380 | 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 | /andy/dev/zig/docgen_tmp/test.zi |
| 683a0 | 67 3a 35 3a 32 30 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 | g:5:20</span>:.<span.class="t2_0 |
| 683c0 | 22 3e 30 78 32 32 32 36 66 65 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a | ">0x2226fe.in.???.(test)</span>. |
| 683e0 | 20 20 20 20 76 61 72 20 75 6e 73 69 67 6e 65 64 20 3d 20 40 69 6e 74 43 61 73 74 28 75 33 32 2c | ....var.unsigned.=.@intCast(u32, |
| 68400 | 20 76 61 6c 75 65 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 | .value);....................<spa |
| 68420 | 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 |
| 68440 | 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f | lass="t37_1">/home/andy/dev/zig/ |
| 68460 | 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 | build/lib/zig/std/special/bootst |
| 68480 | 72 61 70 2e 7a 69 67 3a 38 36 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | rap.zig:86:22</span>:.<span.clas |
| 684a0 | 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 36 61 39 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c | s="t2_0">0x2226a9.in.???.(test)< |
| 684c0 | 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();. |
| 684e0 | 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 |
| 68500 | 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 |
| 68520 | 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c | 37_1">/home/andy/dev/zig/build/l |
| 68540 | 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 | ib/zig/std/special/bootstrap.zig |
| 68560 | 3a 37 30 3a 32 30 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 | :70:20</span>:.<span.class="t2_0 |
| 68580 | 22 3e 30 78 32 32 32 36 35 35 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a | ">0x222655.in.???.(test)</span>. |
| 685a0 | 20 20 20 20 72 65 74 75 72 6e 20 63 61 6c 6c 4d 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 20 | ....return.callMain();.......... |
| 685c0 | 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">^< |
| 685e0 | 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 |
| 68600 | 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f | /andy/dev/zig/build/lib/zig/std/ |
| 68620 | 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 36 34 3a 33 39 3c 2f 73 70 61 | special/bootstrap.zig:64:39</spa |
| 68640 | 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 34 62 38 20 | n>:.<span.class="t2_0">0x2224b8. |
| 68660 | 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 74 64 2e 6f 73 2e | in.???.(test)</span>.....std.os. |
| 68680 | 70 6f 73 69 78 2e 65 78 69 74 28 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 28 61 72 67 63 | posix.exit(callMainWithArgs(argc |
| 686a0 | 2c 20 61 72 67 76 2c 20 65 6e 76 70 29 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ,.argv,.envp));................. |
| 686c0 | 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 |
| 686e0 | 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=" |
| 68700 | 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f | t37_1">/home/andy/dev/zig/build/ |
| 68720 | 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 | lib/zig/std/special/bootstrap.zi |
| 68740 | 67 3a 33 37 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 | g:37:5</span>:.<span.class="t2_0 |
| 68760 | 22 3e 30 78 32 32 32 33 37 30 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a | ">0x222370.in.???.(test)</span>. |
| 68780 | 20 20 20 20 40 6e 6f 49 6e 6c 69 6e 65 43 61 6c 6c 28 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 | ....@noInlineCall(posixCallMainA |
| 687a0 | 6e 64 45 78 69 74 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 | ndExit);.....<span.class="t32_1" |
| 687c0 | 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>........< |
| 687e0 | 70 3e 0a 20 20 20 20 20 20 54 6f 20 6f 62 74 61 69 6e 20 74 68 65 20 6d 61 78 69 6d 75 6d 20 76 | p>.......To.obtain.the.maximum.v |
| 68800 | 61 6c 75 65 20 6f 66 20 61 6e 20 75 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 2c 20 75 73 65 | alue.of.an.unsigned.integer,.use |
| 68820 | 20 3c 61 20 68 72 65 66 3d 22 23 6d 61 78 56 61 6c 75 65 22 3e 40 6d 61 78 56 61 6c 75 65 3c 2f | .<a.href="#maxValue">@maxValue</ |
| 68840 | 61 3e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 | a>........</p>..............<h2. |
| 68860 | 69 64 3d 22 43 61 73 74 2d 54 72 75 6e 63 61 74 65 73 2d 44 61 74 61 22 3e 43 61 73 74 20 54 72 | id="Cast-Truncates-Data">Cast.Tr |
| 68880 | 75 6e 63 61 74 65 73 20 44 61 74 61 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 63 | uncates.Data</h2>........<p>At.c |
| 688a0 | 6f 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d | ompile-time:</p>.......<p.class= |
| 688c0 | 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 |
| 688e0 | 61 73 73 3d 22 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 |
| 68900 | 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | omptime</span>.{.....<span.class |
| 68920 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 70 61 72 74 61 6e 5f 63 | ="tok-kw">const</span>.spartan_c |
| 68940 | 6f 75 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 31 36 | ount:.<span.class="tok-type">u16 |
| 68960 | 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 |
| 68980 | 72 22 3e 33 30 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | r">300</span>;.....<span.class=" |
| 689a0 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 79 74 65 20 3d 20 3c 73 70 61 | tok-kw">const</span>.byte.=.<spa |
| 689c0 | 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</ |
| 689e0 | 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c | span>(<span.class="tok-type">u8< |
| 68a00 | 2f 73 70 61 6e 3e 2c 20 73 70 61 72 74 61 6e 5f 63 6f 75 6e 74 29 3b 0a 7d 3c 2f 63 6f 64 65 3e | /span>,.spartan_count);.}</code> |
| 68a20 | 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">$ |
| 68a40 | 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=" |
| 68a60 | 74 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f | t0_1">/home/andy/dev/zig/docgen_ |
| 68a80 | 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 3c 73 70 61 6e 20 | tmp/test.zig:3:18:.</span><span. |
| 68aa0 | 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e | class="t31_1">error:</span><span |
| 68ac0 | 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 20 63 61 73 74 20 66 72 6f 6d 20 27 75 31 36 27 20 74 | .class="t0_1">.cast.from.'u16'.t |
| 68ae0 | 6f 20 27 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 | o.'u8'.truncates.bits</span>.... |
| 68b00 | 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 |
| 68b20 | 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 |
| 68b40 | 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> |
| 68b60 | 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 72 75 6e 74 69 6d 65 3a 3c 2f 70 3e | </pre>........<p>At.runtime:</p> |
| 68b80 | 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< |
| 68ba0 | 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. |
| 68bc0 | 63 6c 61 73 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. |
| 68be0 | 3d 20 3c 73 70 61 6e 20 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 |
| 68c00 | 6f 72 74 3c 2f 73 70 61 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" |
| 68c20 | 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e | >"std"</span>);..<span |
| 68c40 | 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 |
| 68c60 | 20 63 6c 61 73 73 3d 22 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. |
| 68c80 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 | class="tok-fn">main</span>().<sp |
| 68ca0 | 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>. |
| 68cc0 | 7b 0a 20 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</ |
| 68ce0 | 73 70 61 6e 3e 20 73 70 61 72 74 61 6e 5f 63 6f 75 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | span>.spartan_count:.<span.class |
| 68d00 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 31 36 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 | ="tok-type">u16</span>.=.<span.c |
| 68d20 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 30 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 | lass="tok-number">300</span>;... |
| 68d40 | 20 20 3c 73 70 61 6e 20 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 |
| 68d60 | 61 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 | an>.byte.=.<span.class="tok-buil |
| 68d80 | 74 69 6e 22 3e 40 69 6e 74 43 61 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | tin">@intCast</span>(<span.class |
| 68da0 | 3d 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 | ="tok-type">u8</span>,.spartan_c |
| 68dc0 | 6f 75 6e 74 29 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 77 61 72 6e 28 3c 73 70 61 6e 20 | ount);.....std.debug.warn(<span. |
| 68de0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 61 6c 75 65 3a 20 7b 7d 5c | class="tok-str">"value:.{}\ |
| 68e00 | 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 62 79 74 65 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c | n"</span>,.byte);.}</code>< |
| 68e20 | 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">$. |
| 68e40 | 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 0a | zig.build-exe.test.zig.$../test. |
| 68e60 | 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 61 | integer.cast.truncated.bits.<spa |
| 68e80 | 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 64 65 76 2f 7a | n.class="t37_1">/home/andy/dev/z |
| 68ea0 | 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 38 3c 2f 73 70 61 | ig/docgen_tmp/test.zig:5:18</spa |
| 68ec0 | 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 37 30 37 20 | n>:.<span.class="t2_0">0x222707. |
| 68ee0 | 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 62 | in.???.(test)</span>.....const.b |
| 68f00 | 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 63 6f 75 6e 74 | yte.=.@intCast(u8,.spartan_count |
| 68f20 | 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 6c 61 73 73 3d | );..................<span.class= |
| 68f40 | 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 |
| 68f60 | 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 | 7_1">/home/andy/dev/zig/build/li |
| 68f80 | 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a | b/zig/std/special/bootstrap.zig: |
| 68fa0 | 38 36 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 | 86:22</span>:.<span.class="t2_0" |
| 68fc0 | 3e 30 78 32 32 32 36 61 39 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 | >0x2226a9.in.???.(test)</span>.. |
| 68fe0 | 20 20 20 20 20 20 20 20 20 20 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 | ...........root.main();......... |
| 69000 | 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" |
| 69020 | 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 |
| 69040 | 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 | ome/andy/dev/zig/build/lib/zig/s |
| 69060 | 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 37 30 3a 32 30 3c 2f | td/special/bootstrap.zig:70:20</ |
| 69080 | 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 36 | span>:.<span.class="t2_0">0x2226 |
| 690a0 | 35 35 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 | 55.in.???.(test)</span>.....retu |
| 690c0 | 72 6e 20 63 61 6c 6c 4d 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | rn.callMain();.................. |
| 690e0 | 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>.< |
| 69100 | 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 64 65 | span.class="t37_1">/home/andy/de |
| 69120 | 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f | v/zig/build/lib/zig/std/special/ |
| 69140 | 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 36 34 3a 33 39 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 | bootstrap.zig:64:39</span>:.<spa |
| 69160 | 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 34 62 38 20 69 6e 20 3f 3f 3f 20 28 | n.class="t2_0">0x2224b8.in.???.( |
| 69180 | 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 74 64 2e 6f 73 2e 70 6f 73 69 78 2e 65 78 | test)</span>.....std.os.posix.ex |
| 691a0 | 69 74 28 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 28 61 72 67 63 2c 20 61 72 67 76 2c 20 | it(callMainWithArgs(argc,.argv,. |
| 691c0 | 65 6e 76 70 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 | envp));......................... |
| 691e0 | 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 |
| 69200 | 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">/ |
| 69220 | 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f | home/andy/dev/zig/build/lib/zig/ |
| 69240 | 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 33 37 3a 35 3c 2f | std/special/bootstrap.zig:37:5</ |
| 69260 | 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 33 | span>:.<span.class="t2_0">0x2223 |
| 69280 | 37 30 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 6e 6f 49 | 70.in.???.(test)</span>.....@noI |
| 692a0 | 6e 6c 69 6e 65 43 61 6c 6c 28 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 29 3b | nlineCall(posixCallMainAndExit); |
| 692c0 | 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 |
| 692e0 | 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | >.</code></pre>........<p>...... |
| 69300 | 20 54 6f 20 74 72 75 6e 63 61 74 65 20 62 69 74 73 2c 20 75 73 65 20 3c 61 20 68 72 65 66 3d 22 | .To.truncate.bits,.use.<a.href=" |
| 69320 | 23 74 72 75 6e 63 61 74 65 22 3e 40 74 72 75 6e 63 61 74 65 3c 2f 61 3e 2e 0a 20 20 20 20 20 20 | #truncate">@truncate</a>........ |
| 69340 | 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 49 6e 74 65 67 65 | </p>..............<h2.id="Intege |
| 69360 | 72 2d 4f 76 65 72 66 6c 6f 77 22 3e 49 6e 74 65 67 65 72 20 4f 76 65 72 66 6c 6f 77 3c 2f 68 32 | r-Overflow">Integer.Overflow</h2 |
| 69380 | 3e 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 | >........<h3.id="Default-Operati |
| 693a0 | 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 68 33 3e 0a 0a 20 20 | ons">Default.Operations</h3>.... |
| 693c0 | 20 20 20 20 3c 70 3e 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 6f 70 65 72 61 74 6f 72 73 20 63 | ....<p>The.following.operators.c |
| 693e0 | 61 6e 20 63 61 75 73 65 20 69 6e 74 65 67 65 72 20 6f 76 65 72 66 6c 6f 77 3a 3c 2f 70 3e 0a 20 | an.cause.integer.overflow:</p>.. |
| 69400 | 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c | .....<ul>...........<li><code.cl |
| 69420 | 61 73 73 3d 22 7a 69 67 22 3e 2b 3c 2f 63 6f 64 65 3e 20 28 61 64 64 69 74 69 6f 6e 29 3c 2f 6c | ass="zig">+</code>.(addition)</l |
| 69440 | 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 |
| 69460 | 67 22 3e 2d 3c 2f 63 6f 64 65 3e 20 28 73 75 62 74 72 61 63 74 69 6f 6e 29 3c 2f 6c 69 3e 0a 20 | g">-</code>.(subtraction)</li>.. |
| 69480 | 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 2d | .........<li><code.class="zig">- |
| 694a0 | 3c 2f 63 6f 64 65 3e 20 28 6e 65 67 61 74 69 6f 6e 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | </code>.(negation)</li>......... |
| 694c0 | 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 3c 2f 63 6f 64 65 3e | ..<li><code.class="zig">*</code> |
| 694e0 | 20 28 6d 75 6c 74 69 70 6c 69 63 61 74 69 6f 6e 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | .(multiplication)</li>.......... |
| 69500 | 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2f 3c 2f 63 6f 64 65 3e 20 | .<li><code.class="zig">/</code>. |
| 69520 | 28 64 69 76 69 73 69 6f 6e 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 | (division)</li>.........<li><a.h |
| 69540 | 72 65 66 3d 22 23 64 69 76 54 72 75 6e 63 22 3e 40 64 69 76 54 72 75 6e 63 3c 2f 61 3e 20 28 64 | ref="#divTrunc">@divTrunc</a>.(d |
| 69560 | 69 76 69 73 69 6f 6e 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 | ivision)</li>.........<li><a.hre |
| 69580 | 66 3d 22 23 64 69 76 46 6c 6f 6f 72 22 3e 40 64 69 76 46 6c 6f 6f 72 3c 2f 61 3e 20 28 64 69 76 | f="#divFloor">@divFloor</a>.(div |
| 695a0 | 69 73 69 6f 6e 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d | ision)</li>.........<li><a.href= |
| 695c0 | 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 28 64 69 76 69 73 | "#divExact">@divExact</a>.(divis |
| 695e0 | 69 6f 6e 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 45 | ion)</li>.......</ul>.......<p>E |
| 69600 | 78 61 6d 70 6c 65 20 77 69 74 68 20 61 64 64 69 74 69 6f 6e 20 61 74 20 63 6f 6d 70 69 6c 65 2d | xample.with.addition.at.compile- |
| 69620 | 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e | time:</p>.......<p.class="file"> |
| 69640 | 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 |
| 69660 | 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 |
| 69680 | 3c 2f 73 70 61 6e 3e 20 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 |
| 696a0 | 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 3d | w">var</span>.byte:.<span.class= |
| 696c0 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | "tok-type">u8</span>.=.<span.cla |
| 696e0 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 35 35 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 | ss="tok-number">255</span>;..... |
| 69700 | 62 79 74 65 20 2b 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 | byte.+=.<span.class="tok-number" |
| 69720 | 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 72 65 3e 3c 63 | >1</span>;.}</code></pre><pre><c |
| 69740 | 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 |
| 69760 | 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 2f 68 6f 6d 65 2f 61 | t.zig.<span.class="t0_1">/home/a |
| 69780 | 6e 64 79 2f 64 65 76 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 | ndy/dev/zig/docgen_tmp/test.zig: |
| 697a0 | 33 3a 31 30 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 | 3:10:.</span><span.class="t31_1" |
| 697c0 | 3e 65 72 72 6f 72 3a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 | >error:</span><span.class="t0_1" |
| 697e0 | 3e 20 6f 70 65 72 61 74 69 6f 6e 20 63 61 75 73 65 64 20 6f 76 65 72 66 6c 6f 77 3c 2f 73 70 61 | >.operation.caused.overflow</spa |
| 69800 | 6e 3e 0a 20 20 20 20 62 79 74 65 20 2b 3d 20 31 3b 0a 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e | n>.....byte.+=.1;..........<span |
| 69820 | 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c | .class="t32_1">^</span>.</code>< |
| 69840 | 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 72 75 6e 74 69 6d 65 3a 3c 2f 70 3e 0a | /pre>........<p>At.runtime:</p>. |
| 69860 | 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</ |
| 69880 | 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 |
| 698a0 | 6c 61 73 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.= |
| 698c0 | 20 3c 73 70 61 6e 20 63 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 |
| 698e0 | 72 74 3c 2f 73 70 61 6e 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"> |
| 69900 | 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. |
| 69920 | 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. |
| 69940 | 63 6c 61 73 73 3d 22 74 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 |
| 69960 | 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 | lass="tok-fn">main</span>().<spa |
| 69980 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b | n.class="tok-type">void</span>.{ |
| 699a0 | 0a 20 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 |
| 699c0 | 70 61 6e 3e 20 62 79 74 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | pan>.byte:.<span.class="tok-type |
| 699e0 | 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 6e | ">u8</span>.=.<span.class="tok-n |
| 69a00 | 75 6d 62 65 72 22 3e 32 35 35 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 62 79 74 65 20 2b 3d 20 3c | umber">255</span>;.....byte.+=.< |
| 69a20 | 73 70 61 6e 20 63 6c 61 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> |
| 69a40 | 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 77 61 72 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | ;.....std.debug.warn(<span.class |
| 69a60 | 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 |
| 69a80 | 74 3b 3c 2f 73 70 61 6e 3e 2c 20 62 79 74 65 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e | t;</span>,.byte);.}</code></pre> |
| 69aa0 | 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 |
| 69ac0 | 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 0a 24 20 2e 2f 74 65 73 74 0a 69 6e 74 65 67 | uild-exe.test.zig.$../test.integ |
| 69ae0 | 65 72 20 6f 76 65 72 66 6c 6f 77 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e | er.overflow.<span.class="t37_1"> |
| 69b00 | 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 | /home/andy/dev/zig/docgen_tmp/te |
| 69b20 | 73 74 2e 7a 69 67 3a 35 3a 31 30 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | st.zig:5:10</span>:.<span.class= |
| 69b40 | 22 74 32 5f 30 22 3e 30 78 32 32 32 36 65 65 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 | "t2_0">0x2226ee.in.???.(test)</s |
| 69b60 | 70 61 6e 3e 0a 20 20 20 20 62 79 74 65 20 2b 3d 20 31 3b 0a 20 20 20 20 20 20 20 20 20 3c 73 70 | pan>.....byte.+=.1;..........<sp |
| 69b80 | 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. |
| 69ba0 | 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 64 65 76 2f 7a 69 67 | class="t37_1">/home/andy/dev/zig |
| 69bc0 | 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 | /build/lib/zig/std/special/boots |
| 69be0 | 74 72 61 70 2e 7a 69 67 3a 38 36 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 | trap.zig:86:22</span>:.<span.cla |
| 69c00 | 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 36 61 39 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 | ss="t2_0">0x2226a9.in.???.(test) |
| 69c20 | 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 3b | </span>.............root.main(); |
| 69c40 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ......................<span.clas |
| 69c60 | 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=" |
| 69c80 | 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f | t37_1">/home/andy/dev/zig/build/ |
| 69ca0 | 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 | lib/zig/std/special/bootstrap.zi |
| 69cc0 | 67 3a 37 30 3a 32 30 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f | g:70:20</span>:.<span.class="t2_ |
| 69ce0 | 30 22 3e 30 78 32 32 32 36 35 35 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e | 0">0x222655.in.???.(test)</span> |
| 69d00 | 0a 20 20 20 20 72 65 74 75 72 6e 20 63 61 6c 6c 4d 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 | .....return.callMain();......... |
| 69d20 | 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">^ |
| 69d40 | 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 |
| 69d60 | 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 | e/andy/dev/zig/build/lib/zig/std |
| 69d80 | 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 36 34 3a 33 39 3c 2f 73 70 | /special/bootstrap.zig:64:39</sp |
| 69da0 | 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 34 62 38 | an>:.<span.class="t2_0">0x2224b8 |
| 69dc0 | 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 74 64 2e 6f 73 | .in.???.(test)</span>.....std.os |
| 69de0 | 2e 70 6f 73 69 78 2e 65 78 69 74 28 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 28 61 72 67 | .posix.exit(callMainWithArgs(arg |
| 69e00 | 63 2c 20 61 72 67 76 2c 20 65 6e 76 70 29 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | c,.argv,.envp));................ |
| 69e20 | 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 |
| 69e40 | 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= |
| 69e60 | 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 | "t37_1">/home/andy/dev/zig/build |
| 69e80 | 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a | /lib/zig/std/special/bootstrap.z |
| 69ea0 | 69 67 3a 33 37 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f | ig:37:5</span>:.<span.class="t2_ |
| 69ec0 | 30 22 3e 30 78 32 32 32 33 37 30 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e | 0">0x222370.in.???.(test)</span> |
| 69ee0 | 0a 20 20 20 20 40 6e 6f 49 6e 6c 69 6e 65 43 61 6c 6c 28 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e | .....@noInlineCall(posixCallMain |
| 69f00 | 41 6e 64 45 78 69 74 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 | AndExit);.....<span.class="t32_1 |
| 69f20 | 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>........ |
| 69f40 | 0a 20 20 20 20 20 20 3c 68 33 20 69 64 3d 22 53 74 61 6e 64 61 72 64 2d 4c 69 62 72 61 72 79 2d | .......<h3.id="Standard-Library- |
| 69f60 | 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 61 72 79 | Math-Functions">Standard.Library |
| 69f80 | 20 4d 61 74 68 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 | .Math.Functions</h3>........<p>T |
| 69fa0 | 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 74 68 65 20 73 | hese.functions.provided.by.the.s |
| 69fc0 | 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 69 62 6c 65 20 | tandard.library.return.possible. |
| 69fe0 | 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 20 20 20 20 20 | errors.</p>.......<ul>.......... |
| 6a000 | 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 |
| 6a020 | 73 73 3d 22 74 6f 6b 2d 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>( |
| 6a040 | 3c 73 70 61 6e 20 63 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& |
| 6a060 | 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 65 3e 3c 2f 6c | quot;</span>).math.add</code></l |
| 6a080 | 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 |
| 6a0a0 | 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 |
| 6a0c0 | 70 6f 72 74 3c 2f 73 70 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 |
| 6a0e0 | 22 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 73 | ">"std"</span>).math.s |
| 6a100 | 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 69 3e 3c 63 6f | ub</code></li>...........<li><co |
| 6a120 | 64 65 20 63 6c 61 73 73 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- |
| 6a140 | 62 75 69 6c 74 69 6e 22 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 |
| 6a160 | 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 |
| 6a180 | 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 20 20 20 20 20 | pan>).math.mul</code></li>...... |
| 6a1a0 | 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 6e | .....<li><code.class="zig"><span |
| 6a1c0 | 20 63 6c 61 73 73 3d 22 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 |
| 6a1e0 | 61 6e 3e 28 3c 73 70 61 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">" |
| 6a200 | 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 6d 61 74 68 2e 64 69 76 54 72 75 6e 63 3c | std"</span>).math.divTrunc< |
| 6a220 | 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 20 | /code></li>...........<li><code. |
| 6a240 | 63 6c 61 73 73 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 |
| 6a260 | 6c 74 69 6e 22 3e 40 69 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 |
| 6a280 | 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 |
| 6a2a0 | 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 3e 0a 20 20 20 | >).math.divFloor</code></li>.... |
| 6a2c0 | 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 |
| 6a2e0 | 61 6e 20 63 6c 61 73 73 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</ |
| 6a300 | 73 70 61 6e 3e 28 3c 73 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 |
| 6a320 | 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 |
| 6a340 | 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 3e 3c 63 6f 64 | t</code></li>...........<li><cod |
| 6a360 | 65 20 63 6c 61 73 73 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 |
| 6a380 | 75 69 6c 74 69 6e 22 3e 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 |
| 6a3a0 | 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 |
| 6a3c0 | 61 6e 3e 29 2e 6d 61 74 68 2e 73 68 6c 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | an>).math.shl</code></li>....... |
| 6a3e0 | 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 45 78 61 6d 70 6c 65 20 6f 66 20 63 61 74 63 68 69 | </ul>.......<p>Example.of.catchi |
| 6a400 | 6e 67 20 61 6e 20 6f 76 65 72 66 6c 6f 77 20 66 6f 72 20 61 64 64 69 74 69 6f 6e 3a 3c 2f 70 3e | ng.an.overflow.for.addition:</p> |
| 6a420 | 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< |
| 6a440 | 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. |
| 6a460 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 61 74 68 | class="tok-kw">const</span>.math |
| 6a480 | 20 3d 20 3c 73 70 61 6e 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 |
| 6a4a0 | 70 6f 72 74 3c 2f 73 70 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 |
| 6a4c0 | 22 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 3b 0a | ">"std"</span>).math;. |
| 6a4e0 | 3c 73 70 61 6e 20 63 6c 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 |
| 6a500 | 3e 20 77 61 72 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | >.warn.=.<span.class="tok-builti |
| 6a520 | 6e 22 3e 40 69 6d 70 6f 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 |
| 6a540 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e | ok-str">"std"</span>). |
| 6a560 | 64 65 62 75 67 2e 77 61 72 6e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | debug.warn;.<span.class="tok-kw" |
| 6a580 | 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" |
| 6a5a0 | 3e 66 6e 3c 2f 73 70 61 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"> |
| 6a5c0 | 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 2d | main</span>().!<span.class="tok- |
| 6a5e0 | 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 |
| 6a600 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 79 74 65 3a 20 3c 73 | ass="tok-kw">var</span>.byte:.<s |
| 6a620 | 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>.= |
| 6a640 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 35 35 3c 2f 73 | .<span.class="tok-number">255</s |
| 6a660 | 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 6c 61 73 73 3d 22 74 | pan>;......byte.=.<span.class="t |
| 6a680 | 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 64 28 3c 73 70 61 6e | ok-kw">if</span>.(math.add(<span |
| 6a6a0 | 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 79 74 | .class="tok-type">u8</span>,.byt |
| 6a6c0 | 65 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 | e,.<span.class="tok-number">1</s |
| 6a6e0 | 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 70 61 6e 20 63 6c 61 | pan>)).|result|.result.<span.cla |
| 6a700 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 6e 3e 20 7c 65 72 72 7c 20 7b 0a | ss="tok-kw">else</span>.|err|.{. |
| 6a720 | 20 20 20 20 20 20 20 20 77 61 72 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 | ........warn(<span.class="tok-st |
| 6a740 | 72 22 3e 26 71 75 6f 74 3b 75 6e 61 62 6c 65 20 74 6f 20 61 64 64 20 6f 6e 65 3a 20 7b 7d 5c 6e | r">"unable.to.add.one:.{}\n |
| 6a760 | 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 2d | "</span>,.<span.class="tok- |
| 6a780 | 62 75 69 6c 74 69 6e 22 3e 40 65 72 72 6f 72 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 65 72 72 29 29 | builtin">@errorName</span>(err)) |
| 6a7a0 | 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 72 | ;.........<span.class="tok-kw">r |
| 6a7c0 | 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 65 72 72 3b 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 20 77 61 | eturn</span>.err;.....};......wa |
| 6a7e0 | 72 6e 28 3c 73 70 61 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 | rn(<span.class="tok-str">"r |
| 6a800 | 65 73 75 6c 74 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 62 79 74 65 29 3b | esult:.{}\n"</span>,.byte); |
| 6a820 | 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= |
| 6a840 | 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 | "shell">$.zig.build-exe.test.zig |
| 6a860 | 0a 24 20 2e 2f 74 65 73 74 0a 75 6e 61 62 6c 65 20 74 6f 20 61 64 64 20 6f 6e 65 3a 20 4f 76 65 | .$../test.unable.to.add.one:.Ove |
| 6a880 | 72 66 6c 6f 77 0a 65 72 72 6f 72 3a 20 4f 76 65 72 66 6c 6f 77 0a 3c 73 70 61 6e 20 63 6c 61 73 | rflow.error:.Overflow.<span.clas |
| 6a8a0 | 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 | s="t37_1">/home/andy/dev/zig/bui |
| 6a8c0 | 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 6d 61 74 68 2f 69 6e 64 65 78 2e 7a 69 67 3a 32 35 | ld/lib/zig/std/math/index.zig:25 |
| 6a8e0 | 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 |
| 6a900 | 78 32 32 32 39 66 61 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 | x2229fa.in.???.(test)</span>.... |
| 6a920 | 20 72 65 74 75 72 6e 20 69 66 20 28 40 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 28 54 2c 20 | .return.if.(@addWithOverflow(T,. |
| 6a940 | 61 2c 20 62 2c 20 26 61 6d 70 3b 61 6e 73 77 65 72 29 29 20 65 72 72 6f 72 2e 4f 76 65 72 66 6c | a,.b,.&answer)).error.Overfl |
| 6a960 | 6f 77 20 65 6c 73 65 20 61 6e 73 77 65 72 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ow.else.answer;.....<span.class= |
| 6a980 | 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 |
| 6a9a0 | 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 | 7_1">/home/andy/dev/zig/docgen_t |
| 6a9c0 | 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 38 3a 39 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c | mp/test.zig:8:9</span>:.<span.cl |
| 6a9e0 | 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 38 35 38 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 | ass="t2_0">0x222858.in.???.(test |
| 6aa00 | 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 65 72 72 3b 0a 20 20 20 | )</span>.........return.err;.... |
| 6aa20 | 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 |
| 6aa40 | 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 | >.</code></pre>...............<h |
| 6aa60 | 33 20 69 64 3d 22 42 75 69 6c 74 69 6e 2d 4f 76 65 72 66 6c 6f 77 2d 46 75 6e 63 74 69 6f 6e 73 | 3.id="Builtin-Overflow-Functions |
| 6aa80 | 22 3e 42 75 69 6c 74 69 6e 20 4f 76 65 72 66 6c 6f 77 20 46 75 6e 63 74 69 6f 6e 73 3c 2f 68 33 | ">Builtin.Overflow.Functions</h3 |
| 6aaa0 | 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 73 65 20 62 75 69 6c 74 69 6e | >........<p>.......These.builtin |
| 6aac0 | 73 20 72 65 74 75 72 6e 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 | s.return.a.<code.class="zig"><sp |
| 6aae0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 3c | an.class="tok-type">bool</span>< |
| 6ab00 | 2f 63 6f 64 65 3e 20 6f 66 20 77 68 65 74 68 65 72 20 6f 72 20 6e 6f 74 20 6f 76 65 72 66 6c 6f | /code>.of.whether.or.not.overflo |
| 6ab20 | 77 0a 20 20 20 20 20 20 6f 63 63 75 72 72 65 64 2c 20 61 73 20 77 65 6c 6c 20 61 73 20 72 65 74 | w.......occurred,.as.well.as.ret |
| 6ab40 | 75 72 6e 69 6e 67 20 74 68 65 20 6f 76 65 72 66 6c 6f 77 65 64 20 62 69 74 73 3a 0a 20 20 20 20 | urning.the.overflowed.bits:..... |
| 6ab60 | 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> |
| 6ab80 | 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 |
| 6aba0 | 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | ithOverflow</a></li>...........< |
| 6abc0 | 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 75 62 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e 40 73 | li><a.href="#subWithOverflow">@s |
| 6abe0 | 75 62 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 | ubWithOverflow</a></li>......... |
| 6ac00 | 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 6d 75 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 | ..<li><a.href="#mulWithOverflow" |
| 6ac20 | 3e 40 6d 75 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 | >@mulWithOverflow</a></li>...... |
| 6ac40 | 20 20 20 20 20 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 73 68 6c 57 69 74 68 4f 76 65 72 66 6c | .....<li><a.href="#shlWithOverfl |
| 6ac60 | 6f 77 22 3e 40 73 68 6c 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3c 2f 6c 69 3e 0a 20 20 | ow">@shlWithOverflow</a></li>... |
| 6ac80 | 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 45 78 61 6d 70 6c | ....</ul>.......<p>.......Exampl |
| 6aca0 | 65 20 6f 66 20 3c 61 20 68 72 65 66 3d 22 23 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 22 3e | e.of.<a.href="#addWithOverflow"> |
| 6acc0 | 40 61 64 64 57 69 74 68 4f 76 65 72 66 6c 6f 77 3c 2f 61 3e 3a 0a 20 20 20 20 20 20 3c 2f 70 3e | @addWithOverflow</a>:.......</p> |
| 6ace0 | 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< |
| 6ad00 | 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. |
| 6ad20 | 63 6c 61 73 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 61 72 6e | class="tok-kw">const</span>.warn |
| 6ad40 | 20 3d 20 3c 73 70 61 6e 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 |
| 6ad60 | 70 6f 72 74 3c 2f 73 70 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 |
| 6ad80 | 22 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. |
| 6ada0 | 77 61 72 6e 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 | warn;.<span.class="tok-kw">pub</ |
| 6adc0 | 73 70 61 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 |
| 6ade0 | 70 61 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</ |
| 6ae00 | 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 |
| 6ae20 | 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 |
| 6ae40 | 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 79 74 65 3a 20 3c 73 70 61 6e 20 63 6c 61 | k-kw">var</span>.byte:.<span.cla |
| 6ae60 | 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. |
| 6ae80 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 35 35 3c 2f 73 70 61 6e 3e 3b 0a 0a | class="tok-number">255</span>;.. |
| 6aea0 | 20 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 |
| 6aec0 | 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 70 | an>.result:.<span.class="tok-typ |
| 6aee0 | 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- |
| 6af00 | 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 | null">undefined</span>;.....<spa |
| 6af20 | 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 70 61 | n.class="tok-kw">if</span>.(<spa |
| 6af40 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 61 64 64 57 69 74 68 4f 76 | n.class="tok-builtin">@addWithOv |
| 6af60 | 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 6b 2d 74 | erflow</span>(<span.class="tok-t |
| 6af80 | 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 20 62 79 74 65 2c 20 3c 73 70 61 6e 20 63 6c 61 73 | ype">u8</span>,.byte,.<span.clas |
| 6afa0 | 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 26 61 6d 70 3b 72 | s="tok-number">10</span>,.&r |
| 6afc0 | 65 73 75 6c 74 29 29 20 7b 0a 20 20 20 20 20 20 20 20 77 61 72 6e 28 3c 73 70 61 6e 20 63 6c 61 | esult)).{.........warn(<span.cla |
| 6afe0 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6f 76 65 72 66 6c 6f 77 65 64 20 72 65 | ss="tok-str">"overflowed.re |
| 6b000 | 73 75 6c 74 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 72 65 73 75 6c 74 29 | sult:.{}\n"</span>,.result) |
| 6b020 | 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 |
| 6b040 | 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 77 61 72 6e 28 3c 73 70 61 6e 20 63 6c | e</span>.{.........warn(<span.cl |
| 6b060 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 72 65 73 75 6c 74 3a 20 7b 7d 5c 6e | ass="tok-str">"result:.{}\n |
| 6b080 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 72 65 73 75 6c 74 29 3b 0a 20 20 20 20 7d 0a 7d 3c | "</span>,.result);.....}.}< |
| 6b0a0 | 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 |
| 6b0c0 | 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.$. |
| 6b0e0 | 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 39 0a 3c 2f 63 6f | ./test.overflowed.result:.9.</co |
| 6b100 | 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 64 3d 22 | de></pre>...............<h3.id=" |
| 6b120 | 57 72 61 70 70 69 6e 67 2d 4f 70 65 72 61 74 69 6f 6e 73 22 3e 57 72 61 70 70 69 6e 67 20 4f 70 | Wrapping-Operations">Wrapping.Op |
| 6b140 | 65 72 61 74 69 6f 6e 73 3c 2f 68 33 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 | erations</h3>........<p>.......T |
| 6b160 | 68 65 73 65 20 6f 70 65 72 61 74 69 6f 6e 73 20 68 61 76 65 20 67 75 61 72 61 6e 74 65 65 64 20 | hese.operations.have.guaranteed. |
| 6b180 | 77 72 61 70 61 72 6f 75 6e 64 20 73 65 6d 61 6e 74 69 63 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e | wraparound.semantics........</p> |
| 6b1a0 | 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 | .......<ul>...........<li><code. |
| 6b1c0 | 63 6c 61 73 73 3d 22 7a 69 67 22 3e 2b 25 3c 2f 63 6f 64 65 3e 20 28 77 72 61 70 61 72 6f 75 6e | class="zig">+%</code>.(wraparoun |
| 6b1e0 | 64 20 61 64 64 69 74 69 6f 6e 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c | d.addition)</li>...........<li>< |
| 6b200 | 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 3e 20 28 77 72 61 70 | code.class="zig">-%</code>.(wrap |
| 6b220 | 61 72 6f 75 6e 64 20 73 75 62 74 72 61 63 74 69 6f 6e 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | around.subtraction)</li>........ |
| 6b240 | 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 25 3c 2f 63 6f 64 | ...<li><code.class="zig">-%</cod |
| 6b260 | 65 3e 20 28 77 72 61 70 61 72 6f 75 6e 64 20 6e 65 67 61 74 69 6f 6e 29 3c 2f 6c 69 3e 0a 20 20 | e>.(wraparound.negation)</li>... |
| 6b280 | 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 25 | ........<li><code.class="zig">*% |
| 6b2a0 | 3c 2f 63 6f 64 65 3e 20 28 77 72 61 70 61 72 6f 75 6e 64 20 6d 75 6c 74 69 70 6c 69 63 61 74 69 | </code>.(wraparound.multiplicati |
| 6b2c0 | 6f 6e 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c | on)</li>.......</ul>.......<p.cl |
| 6b2e0 | 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 |
| 6b300 | 65 20 63 6c 61 73 73 3d 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 |
| 6b320 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 73 73 65 72 74 20 3d 20 3c 73 70 61 6e 20 63 | w">const</span>.assert.=.<span.c |
| 6b340 | 6c 61 73 73 3d 22 74 6f 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 |
| 6b360 | 3e 28 3c 73 70 61 6e 20 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 |
| 6b380 | 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 61 73 73 65 72 74 3b 0a 0a 3c | d"</span>).debug.assert;..< |
| 6b3a0 | 73 70 61 6e 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>. |
| 6b3c0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 77 72 61 70 | <span.class="tok-str">"wrap |
| 6b3e0 | 61 72 6f 75 6e 64 20 61 64 64 69 74 69 6f 6e 20 61 6e 64 20 73 75 62 74 72 61 63 74 69 6f 6e 26 | around.addition.and.subtraction& |
| 6b400 | 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=" |
| 6b420 | 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 |
| 6b440 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 | ass="tok-type">i32</span>.=.<spa |
| 6b460 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6d 61 78 56 61 6c 75 65 3c | n.class="tok-builtin">@maxValue< |
| 6b480 | 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 | /span>(<span.class="tok-type">i3 |
| 6b4a0 | 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | 2</span>);.....<span.class="tok- |
| 6b4c0 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 69 6e 5f 76 61 6c 20 3d 20 78 20 2b 25 20 | kw">const</span>.min_val.=.x.+%. |
| 6b4e0 | 3c 73 70 61 6e 20 63 6c 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 |
| 6b500 | 3e 3b 0a 20 20 20 20 61 73 73 65 72 74 28 6d 69 6e 5f 76 61 6c 20 3d 3d 20 3c 73 70 61 6e 20 63 | >;.....assert(min_val.==.<span.c |
| 6b520 | 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6d 69 6e 56 61 6c 75 65 3c 2f 73 70 | lass="tok-builtin">@minValue</sp |
| 6b540 | 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</ |
| 6b560 | 73 70 61 6e 3e 29 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | span>));.....<span.class="tok-kw |
| 6b580 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 61 78 5f 76 61 6c 20 3d 20 6d 69 6e 5f 76 61 6c | ">const</span>.max_val.=.min_val |
| 6b5a0 | 20 2d 25 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f | .-%.<span.class="tok-number">1</ |
| 6b5c0 | 73 70 61 6e 3e 3b 0a 20 20 20 20 61 73 73 65 72 74 28 6d 61 78 5f 76 61 6c 20 3d 3d 20 3c 73 70 | span>;.....assert(max_val.==.<sp |
| 6b5e0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 6d 61 78 56 61 6c 75 65 | an.class="tok-builtin">@maxValue |
| 6b600 | 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 | </span>(<span.class="tok-type">i |
| 6b620 | 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> |
| 6b640 | 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 |
| 6b660 | 65 73 74 2e 7a 69 67 0a 54 65 73 74 20 31 2f 31 20 77 72 61 70 61 72 6f 75 6e 64 20 61 64 64 69 | est.zig.Test.1/1.wraparound.addi |
| 6b680 | 74 69 6f 6e 20 61 6e 64 20 73 75 62 74 72 61 63 74 69 6f 6e 2e 2e 2e 4f 4b 0a 41 6c 6c 20 74 65 | tion.and.subtraction...OK.All.te |
| 6b6a0 | 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>....... |
| 6b6c0 | 20 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 2d 4c 65 66 | ...............<h2.id="Exact-Lef |
| 6b6e0 | 74 2d 53 68 69 66 74 2d 4f 76 65 72 66 6c 6f 77 22 3e 45 78 61 63 74 20 4c 65 66 74 20 53 68 69 | t-Shift-Overflow">Exact.Left.Shi |
| 6b700 | 66 74 20 4f 76 65 72 66 6c 6f 77 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 63 6f | ft.Overflow</h2>........<p>At.co |
| 6b720 | 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 | mpile-time:</p>.......<p.class=" |
| 6b740 | 66 69 6c 65 22 3e 74 65 73 74 2e 7a 69 67 3c 2f 70 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 | file">test.zig</p><pre><code.cla |
| 6b760 | 73 73 3d 22 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 |
| 6b780 | 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | mptime</span>.{.....<span.class= |
| 6b7a0 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 78 20 3d 20 3c 73 70 61 6e 20 | "tok-kw">const</span>.x.=.<span. |
| 6b7c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 68 6c 45 78 61 63 74 3c 2f 73 | class="tok-builtin">@shlExact</s |
| 6b7e0 | 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f | pan>(<span.class="tok-type">u8</ |
| 6b800 | 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 | span>(<span.class="tok-number">0 |
| 6b820 | 62 30 31 30 31 30 31 30 31 3c 2f 73 70 61 6e 3e 29 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | b01010101</span>),.<span.class=" |
| 6b840 | 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c | tok-number">2</span>);.}</code>< |
| 6b860 | 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">$. |
| 6b880 | 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 |
| 6b8a0 | 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 | 0_1">/home/andy/dev/zig/docgen_t |
| 6b8c0 | 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 20 63 | mp/test.zig:2:15:.</span><span.c |
| 6b8e0 | 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 | lass="t31_1">error:</span><span. |
| 6b900 | 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 20 6f 70 65 72 61 74 69 6f 6e 20 63 61 75 73 65 64 20 6f | class="t0_1">.operation.caused.o |
| 6b920 | 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 40 73 68 | verflow</span>.....const.x.=.@sh |
| 6b940 | 6c 45 78 61 63 74 28 75 38 28 30 62 30 31 30 31 30 31 30 31 29 2c 20 32 29 3b 0a 20 20 20 20 20 | lExact(u8(0b01010101),.2);...... |
| 6b960 | 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">^</ |
| 6b980 | 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 |
| 6b9a0 | 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 |
| 6b9c0 | 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 |
| 6b9e0 | 3d 22 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 |
| 6ba00 | 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- |
| 6ba20 | 62 75 69 6c 74 69 6e 22 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 |
| 6ba40 | 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 |
| 6ba60 | 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 |
| 6ba80 | 3c 2f 73 70 61 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< |
| 6baa0 | 2f 73 70 61 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 |
| 6bac0 | 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" |
| 6bae0 | 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=" |
| 6bb00 | 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 |
| 6bb20 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 | s="tok-type">u8</span>.=.<span.c |
| 6bb40 | 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 70 | lass="tok-number">0b01010101</sp |
| 6bb60 | 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 |
| 6bb80 | 72 3c 2f 73 70 61 6e 3e 20 79 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | r</span>.y.=.<span.class="tok-bu |
| 6bba0 | 69 6c 74 69 6e 22 3e 40 73 68 6c 45 78 61 63 74 3c 2f 73 70 61 6e 3e 28 78 2c 20 3c 73 70 61 6e | iltin">@shlExact</span>(x,.<span |
| 6bbc0 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 | .class="tok-number">2</span>);.. |
| 6bbe0 | 20 20 20 73 74 64 2e 64 65 62 75 67 2e 77 61 72 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ...std.debug.warn(<span.class="t |
| 6bc00 | 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 61 6c 75 65 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c | ok-str">"value:.{}\n"< |
| 6bc20 | 2f 73 70 61 6e 3e 2c 20 79 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c | /span>,.y);.}</code></pre><pre>< |
| 6bc40 | 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 |
| 6bc60 | 78 65 20 74 65 73 74 2e 7a 69 67 0a 24 20 2e 2f 74 65 73 74 0a 6c 65 66 74 20 73 68 69 66 74 20 | xe.test.zig.$../test.left.shift. |
| 6bc80 | 6f 76 65 72 66 6c 6f 77 65 64 20 62 69 74 73 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 | overflowed.bits.<span.class="t37 |
| 6bca0 | 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d | _1">/home/andy/dev/zig/docgen_tm |
| 6bcc0 | 70 2f 74 65 73 74 2e 7a 69 67 3a 35 3a 31 33 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c | p/test.zig:5:13</span>:.<span.cl |
| 6bce0 | 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 37 30 35 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 | ass="t2_0">0x222705.in.???.(test |
| 6bd00 | 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 76 61 72 20 79 20 3d 20 40 73 68 6c 45 78 61 63 74 28 78 | )</span>.....var.y.=.@shlExact(x |
| 6bd20 | 2c 20 32 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ,.2);.............<span.class="t |
| 6bd40 | 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_ |
| 6bd60 | 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f | 1">/home/andy/dev/zig/build/lib/ |
| 6bd80 | 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 38 36 | zig/std/special/bootstrap.zig:86 |
| 6bda0 | 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 | :22</span>:.<span.class="t2_0">0 |
| 6bdc0 | 78 32 32 32 36 61 39 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 | x2226a9.in.???.(test)</span>.... |
| 6bde0 | 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();........... |
| 6be00 | 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">^ |
| 6be20 | 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 |
| 6be40 | 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 | e/andy/dev/zig/build/lib/zig/std |
| 6be60 | 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 37 30 3a 32 30 3c 2f 73 70 | /special/bootstrap.zig:70:20</sp |
| 6be80 | 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 36 35 35 | an>:.<span.class="t2_0">0x222655 |
| 6bea0 | 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e | .in.???.(test)</span>.....return |
| 6bec0 | 20 63 61 6c 6c 4d 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 | .callMain();.................... |
| 6bee0 | 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 |
| 6bf00 | 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 64 65 76 2f | an.class="t37_1">/home/andy/dev/ |
| 6bf20 | 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f | zig/build/lib/zig/std/special/bo |
| 6bf40 | 6f 74 73 74 72 61 70 2e 7a 69 67 3a 36 34 3a 33 39 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 | otstrap.zig:64:39</span>:.<span. |
| 6bf60 | 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 34 62 38 20 69 6e 20 3f 3f 3f 20 28 74 65 | class="t2_0">0x2224b8.in.???.(te |
| 6bf80 | 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 74 64 2e 6f 73 2e 70 6f 73 69 78 2e 65 78 69 74 | st)</span>.....std.os.posix.exit |
| 6bfa0 | 28 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 28 61 72 67 63 2c 20 61 72 67 76 2c 20 65 6e | (callMainWithArgs(argc,.argv,.en |
| 6bfc0 | 76 70 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 | vp));........................... |
| 6bfe0 | 20 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"> |
| 6c000 | 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 |
| 6c020 | 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 | me/andy/dev/zig/build/lib/zig/st |
| 6c040 | 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 33 37 3a 35 3c 2f 73 70 | d/special/bootstrap.zig:37:5</sp |
| 6c060 | 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 33 37 30 | an>:.<span.class="t2_0">0x222370 |
| 6c080 | 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 6e 6f 49 6e 6c | .in.???.(test)</span>.....@noInl |
| 6c0a0 | 69 6e 65 43 61 6c 6c 28 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 29 3b 0a 20 | ineCall(posixCallMainAndExit);.. |
| 6c0c0 | 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>. |
| 6c0e0 | 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. |
| 6c100 | 69 64 3d 22 45 78 61 63 74 2d 52 69 67 68 74 2d 53 68 69 66 74 2d 4f 76 65 72 66 6c 6f 77 22 3e | id="Exact-Right-Shift-Overflow"> |
| 6c120 | 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 68 32 3e 0a | Exact.Right.Shift.Overflow</h2>. |
| 6c140 | 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>.. |
| 6c160 | 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 |
| 6c180 | 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 |
| 6c1a0 | 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>.{.. |
| 6c1c0 | 20 20 20 3c 73 70 61 6e 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 |
| 6c1e0 | 70 61 6e 3e 20 78 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 | pan>.x.=.<span.class="tok-builti |
| 6c200 | 6e 22 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 | n">@shrExact</span>(<span.class= |
| 6c220 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | "tok-type">u8</span>(<span.class |
| 6c240 | 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 61 6e 3e 29 | ="tok-number">0b10101010</span>) |
| 6c260 | 2c 20 3c 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 |
| 6c280 | 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 |
| 6c2a0 | 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 |
| 6c2c0 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 | .<span.class="t0_1">/home/andy/d |
| 6c2e0 | 65 76 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 35 3a | ev/zig/docgen_tmp/test.zig:2:15: |
| 6c300 | 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 |
| 6c320 | 72 3a 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 20 65 78 61 | r:</span><span.class="t0_1">.exa |
| 6c340 | 63 74 20 73 68 69 66 74 20 73 68 69 66 74 65 64 20 6f 75 74 20 31 20 62 69 74 73 3c 2f 73 70 61 | ct.shift.shifted.out.1.bits</spa |
| 6c360 | 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 78 20 3d 20 40 73 68 72 45 78 61 63 74 28 75 38 28 30 62 | n>.....const.x.=.@shrExact(u8(0b |
| 6c380 | 31 30 31 30 31 30 31 30 29 2c 20 32 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 | 10101010),.2);...............<sp |
| 6c3a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 | an.class="t32_1">^</span>.</code |
| 6c3c0 | 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 72 75 6e 74 69 6d 65 3a 3c 2f 70 | ></pre>........<p>At.runtime:</p |
| 6c3e0 | 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 |
| 6c400 | 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 |
| 6c420 | 20 63 6c 61 73 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 |
| 6c440 | 20 3d 20 3c 73 70 61 6e 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 |
| 6c460 | 70 6f 72 74 3c 2f 73 70 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 |
| 6c480 | 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 | ">"std"</span>);..<spa |
| 6c4a0 | 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 |
| 6c4c0 | 6e 20 63 6c 61 73 73 3d 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 |
| 6c4e0 | 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 |
| 6c500 | 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> |
| 6c520 | 20 7b 0a 20 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< |
| 6c540 | 2f 73 70 61 6e 3e 20 78 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 | /span>.x:.<span.class="tok-type" |
| 6c560 | 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 |
| 6c580 | 6d 62 65 72 22 3e 30 62 31 30 31 30 31 30 31 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 | mber">0b10101010</span>;.....<sp |
| 6c5a0 | 61 6e 20 63 6c 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 20 3d | an.class="tok-kw">var</span>.y.= |
| 6c5c0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 68 72 45 | .<span.class="tok-builtin">@shrE |
| 6c5e0 | 78 61 63 74 3c 2f 73 70 61 6e 3e 28 78 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | xact</span>(x,.<span.class="tok- |
| 6c600 | 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 | number">2</span>);.....std.debug |
| 6c620 | 2e 77 61 72 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f | .warn(<span.class="tok-str">&quo |
| 6c640 | 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 79 29 3b 0a | t;value:.{}\n"</span>,.y);. |
| 6c660 | 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=" |
| 6c680 | 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 0a | shell">$.zig.build-exe.test.zig. |
| 6c6a0 | 24 20 2e 2f 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 | $../test.right.shift.overflowed. |
| 6c6c0 | 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 61 | bits.<span.class="t37_1">/home/a |
| 6c6e0 | 6e 64 79 2f 64 65 76 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 | ndy/dev/zig/docgen_tmp/test.zig: |
| 6c700 | 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 22 3e | 5:13</span>:.<span.class="t2_0"> |
| 6c720 | 30 78 32 32 32 37 30 35 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 | 0x222705.in.???.(test)</span>... |
| 6c740 | 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 20 20 20 | ..var.y.=.@shrExact(x,.2);...... |
| 6c760 | 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 |
| 6c780 | 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 |
| 6c7a0 | 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 | dy/dev/zig/build/lib/zig/std/spe |
| 6c7c0 | 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 38 36 3a 32 32 3c 2f 73 70 61 6e 3e 3a | cial/bootstrap.zig:86:22</span>: |
| 6c7e0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 36 61 39 20 69 6e 20 | .<span.class="t2_0">0x2226a9.in. |
| 6c800 | 3f 3f 3f 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 | ???.(test)</span>.............ro |
| 6c820 | 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();...................... |
| 6c840 | 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 |
| 6c860 | 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 64 65 76 2f | an.class="t37_1">/home/andy/dev/ |
| 6c880 | 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f | zig/build/lib/zig/std/special/bo |
| 6c8a0 | 6f 74 73 74 72 61 70 2e 7a 69 67 3a 37 30 3a 32 30 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 | otstrap.zig:70:20</span>:.<span. |
| 6c8c0 | 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 36 35 35 20 69 6e 20 3f 3f 3f 20 28 74 65 | class="t2_0">0x222655.in.???.(te |
| 6c8e0 | 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 63 61 6c 6c 4d 61 69 6e 28 29 | st)</span>.....return.callMain() |
| 6c900 | 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ;....................<span.class |
| 6c920 | 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 |
| 6c940 | 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c | 37_1">/home/andy/dev/zig/build/l |
| 6c960 | 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 | ib/zig/std/special/bootstrap.zig |
| 6c980 | 3a 36 34 3a 33 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 | :64:39</span>:.<span.class="t2_0 |
| 6c9a0 | 22 3e 30 78 32 32 32 34 62 38 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a | ">0x2224b8.in.???.(test)</span>. |
| 6c9c0 | 20 20 20 20 73 74 64 2e 6f 73 2e 70 6f 73 69 78 2e 65 78 69 74 28 63 61 6c 6c 4d 61 69 6e 57 69 | ....std.os.posix.exit(callMainWi |
| 6c9e0 | 74 68 41 72 67 73 28 61 72 67 63 2c 20 61 72 67 76 2c 20 65 6e 76 70 29 29 3b 0a 20 20 20 20 20 | thArgs(argc,.argv,.envp));...... |
| 6ca00 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| 6ca20 | 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 |
| 6ca40 | 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 64 65 76 | pan.class="t37_1">/home/andy/dev |
| 6ca60 | 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 | /zig/build/lib/zig/std/special/b |
| 6ca80 | 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 33 37 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 | ootstrap.zig:37:5</span>:.<span. |
| 6caa0 | 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 33 37 30 20 69 6e 20 3f 3f 3f 20 28 74 65 | class="t2_0">0x222370.in.???.(te |
| 6cac0 | 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 6e 6f 49 6e 6c 69 6e 65 43 61 6c 6c 28 70 6f 73 | st)</span>.....@noInlineCall(pos |
| 6cae0 | 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | ixCallMainAndExit);.....<span.cl |
| 6cb00 | 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 |
| 6cb20 | 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 44 69 76 69 73 69 6f | e>...............<h2.id="Divisio |
| 6cb40 | 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 68 32 3e | n-by-Zero">Division.by.Zero</h2> |
| 6cb60 | 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>. |
| 6cb80 | 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</ |
| 6cba0 | 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 |
| 6cbc0 | 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>.{. |
| 6cbe0 | 20 20 20 20 3c 73 70 61 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</ |
| 6cc00 | 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"> |
| 6cc20 | 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 |
| 6cc40 | 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= |
| 6cc60 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 3a 20 3c 73 70 61 6e 20 63 | "tok-kw">const</span>.b:.<span.c |
| 6cc80 | 6c 61 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 |
| 6cca0 | 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>;. |
| 6ccc0 | 20 20 20 20 3c 73 70 61 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</ |
| 6cce0 | 73 70 61 6e 3e 20 63 20 3d 20 61 20 2f 20 62 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c | span>.c.=.a./.b;.}</code></pre>< |
| 6cd00 | 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 |
| 6cd20 | 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 2f | st.test.zig.<span.class="t0_1">/ |
| 6cd40 | 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 | home/andy/dev/zig/docgen_tmp/tes |
| 6cd60 | 74 2e 7a 69 67 3a 34 3a 31 37 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | t.zig:4:17:.</span><span.class=" |
| 6cd80 | 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d | t31_1">error:</span><span.class= |
| 6cda0 | 22 74 30 5f 31 22 3e 20 64 69 76 69 73 69 6f 6e 20 62 79 20 7a 65 72 6f 3c 2f 73 70 61 6e 3e 0a | "t0_1">.division.by.zero</span>. |
| 6cdc0 | 20 20 20 20 63 6f 6e 73 74 20 63 20 3d 20 61 20 2f 20 62 3b 0a 20 20 20 20 20 20 20 20 20 20 20 | ....const.c.=.a./.b;............ |
| 6cde0 | 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 |
| 6ce00 | 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 72 75 6e | >.</code></pre>........<p>At.run |
| 6ce20 | 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e | time:</p>.......<p.class="file"> |
| 6ce40 | 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 |
| 6ce60 | 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 |
| 6ce80 | 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 |
| 6cea0 | 74 69 6e 22 3e 40 69 6d 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= |
| 6cec0 | 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> |
| 6cee0 | 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 | );..<span.class="tok-kw">pub</sp |
| 6cf00 | 61 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 |
| 6cf20 | 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 |
| 6cf40 | 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 |
| 6cf60 | 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- |
| 6cf80 | 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | kw">var</span>.a:.<span.class="t |
| 6cfa0 | 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | ok-type">u32</span>.=.<span.clas |
| 6cfc0 | 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 |
| 6cfe0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 3a 20 | an.class="tok-kw">var</span>.b:. |
| 6d000 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e | <span.class="tok-type">u32</span |
| 6d020 | 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</ |
| 6d040 | 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"> |
| 6d060 | 76 61 72 3c 2f 73 70 61 6e 3e 20 63 20 3d 20 61 20 2f 20 62 3b 0a 20 20 20 20 73 74 64 2e 64 65 | var</span>.c.=.a./.b;.....std.de |
| 6d080 | 62 75 67 2e 77 61 72 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 | bug.warn(<span.class="tok-str">& |
| 6d0a0 | 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 63 | quot;value:.{}\n"</span>,.c |
| 6d0c0 | 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 |
| 6d0e0 | 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 7a | s="shell">$.zig.build-exe.test.z |
| 6d100 | 69 67 0a 24 20 2e 2f 74 65 73 74 0a 64 69 76 69 73 69 6f 6e 20 62 79 20 7a 65 72 6f 0a 3c 73 70 | ig.$../test.division.by.zero.<sp |
| 6d120 | 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 64 65 76 2f | an.class="t37_1">/home/andy/dev/ |
| 6d140 | 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 31 35 3c 2f 73 70 | zig/docgen_tmp/test.zig:6:15</sp |
| 6d160 | 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 37 31 32 | an>:.<span.class="t2_0">0x222712 |
| 6d180 | 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 76 61 72 20 63 20 | .in.???.(test)</span>.....var.c. |
| 6d1a0 | 3d 20 61 20 2f 20 62 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | =.a./.b;...............<span.cla |
| 6d1c0 | 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= |
| 6d1e0 | 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 | "t37_1">/home/andy/dev/zig/build |
| 6d200 | 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a | /lib/zig/std/special/bootstrap.z |
| 6d220 | 69 67 3a 38 36 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 | ig:86:22</span>:.<span.class="t2 |
| 6d240 | 5f 30 22 3e 30 78 32 32 32 36 61 39 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e | _0">0x2226a9.in.???.(test)</span |
| 6d260 | 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();...... |
| 6d280 | 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 |
| 6d2a0 | 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" |
| 6d2c0 | 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 | >/home/andy/dev/zig/build/lib/zi |
| 6d2e0 | 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 37 30 3a 32 | g/std/special/bootstrap.zig:70:2 |
| 6d300 | 30 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 | 0</span>:.<span.class="t2_0">0x2 |
| 6d320 | 32 32 36 35 35 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 | 22655.in.???.(test)</span>.....r |
| 6d340 | 65 74 75 72 6e 20 63 61 6c 6c 4d 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | eturn.callMain();............... |
| 6d360 | 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 |
| 6d380 | 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 |
| 6d3a0 | 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 | /dev/zig/build/lib/zig/std/speci |
| 6d3c0 | 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 36 34 3a 33 39 3c 2f 73 70 61 6e 3e 3a 20 3c | al/bootstrap.zig:64:39</span>:.< |
| 6d3e0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 34 62 38 20 69 6e 20 3f 3f | span.class="t2_0">0x2224b8.in.?? |
| 6d400 | 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 74 64 2e 6f 73 2e 70 6f 73 69 78 | ?.(test)</span>.....std.os.posix |
| 6d420 | 2e 65 78 69 74 28 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 28 61 72 67 63 2c 20 61 72 67 | .exit(callMainWithArgs(argc,.arg |
| 6d440 | 76 2c 20 65 6e 76 70 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 | v,.envp));...................... |
| 6d460 | 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 |
| 6d480 | 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 |
| 6d4a0 | 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a | ">/home/andy/dev/zig/build/lib/z |
| 6d4c0 | 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 33 37 3a | ig/std/special/bootstrap.zig:37: |
| 6d4e0 | 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 |
| 6d500 | 32 32 33 37 30 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 | 22370.in.???.(test)</span>.....@ |
| 6d520 | 6e 6f 49 6e 6c 69 6e 65 43 61 6c 6c 28 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 | noInlineCall(posixCallMainAndExi |
| 6d540 | 74 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 | t);.....<span.class="t32_1">^</s |
| 6d560 | 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 | pan>.</code></pre>.............. |
| 6d580 | 20 3c 68 32 20 69 64 3d 22 52 65 6d 61 69 6e 64 65 72 2d 44 69 76 69 73 69 6f 6e 2d 62 79 2d 5a | .<h2.id="Remainder-Division-by-Z |
| 6d5a0 | 65 72 6f 22 3e 52 65 6d 61 69 6e 64 65 72 20 44 69 76 69 73 69 6f 6e 20 62 79 20 5a 65 72 6f 3c | ero">Remainder.Division.by.Zero< |
| 6d5c0 | 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 3c | /h2>........<p>At.compile-time:< |
| 6d5e0 | 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 |
| 6d600 | 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 |
| 6d620 | 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 |
| 6d640 | 3e 20 7b 0a 20 20 20 20 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 |
| 6d660 | 73 74 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | st</span>.a:.<span.class="tok-ty |
| 6d680 | 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 |
| 6d6a0 | 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | k-number">10</span>;.....<span.c |
| 6d6c0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 3a 20 3c 73 | lass="tok-kw">const</span>.b:.<s |
| 6d6e0 | 70 61 6e 20 63 6c 61 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>. |
| 6d700 | 3d 20 3c 73 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 |
| 6d720 | 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 |
| 6d740 | 6e 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 | nst</span>.c.=.a.%.b;.}</code></ |
| 6d760 | 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 |
| 6d780 | 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 30 | ig.test.test.zig.<span.class="t0 |
| 6d7a0 | 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d | _1">/home/andy/dev/zig/docgen_tm |
| 6d7c0 | 70 2f 74 65 73 74 2e 7a 69 67 3a 34 3a 31 37 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c | p/test.zig:4:17:.</span><span.cl |
| 6d7e0 | 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 | ass="t31_1">error:</span><span.c |
| 6d800 | 6c 61 73 73 3d 22 74 30 5f 31 22 3e 20 64 69 76 69 73 69 6f 6e 20 62 79 20 7a 65 72 6f 3c 2f 73 | lass="t0_1">.division.by.zero</s |
| 6d820 | 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 63 20 3d 20 61 20 25 20 62 3b 0a 20 20 20 20 20 20 | pan>.....const.c.=.a.%.b;....... |
| 6d840 | 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">^< |
| 6d860 | 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 | /span>.</code></pre>........<p>A |
| 6d880 | 74 20 72 75 6e 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 | t.runtime:</p>.......<p.class="f |
| 6d8a0 | 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 |
| 6d8c0 | 73 3d 22 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 |
| 6d8e0 | 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 |
| 6d900 | 2d 62 75 69 6c 74 69 6e 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 |
| 6d920 | 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"</ |
| 6d940 | 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 |
| 6d960 | 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 |
| 6d980 | 3c 2f 73 70 61 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 |
| 6d9a0 | 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | n</span>().<span.class="tok-type |
| 6d9c0 | 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= |
| 6d9e0 | 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 |
| 6da00 | 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 |
| 6da20 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 30 3c 2f 73 70 61 6e 3e 3b 0a 20 | .class="tok-number">10</span>;.. |
| 6da40 | 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 |
| 6da60 | 6e 3e 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 | n>.b:.<span.class="tok-type">u32 |
| 6da80 | 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 |
| 6daa0 | 72 22 3e 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | r">0</span>;.....<span.class="to |
| 6dac0 | 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 63 20 3d 20 61 20 25 20 62 3b 0a 20 20 20 20 | k-kw">var</span>.c.=.a.%.b;..... |
| 6dae0 | 73 74 64 2e 64 65 62 75 67 2e 77 61 72 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | std.debug.warn(<span.class="tok- |
| 6db00 | 73 74 72 22 3e 26 71 75 6f 74 3b 76 61 6c 75 65 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 | str">"value:.{}\n"</sp |
| 6db20 | 61 6e 3e 2c 20 63 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 | an>,.c);.}</code></pre><pre><cod |
| 6db40 | 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. |
| 6db60 | 74 65 73 74 2e 7a 69 67 0a 24 20 2e 2f 74 65 73 74 0a 72 65 6d 61 69 6e 64 65 72 20 64 69 76 69 | test.zig.$../test.remainder.divi |
| 6db80 | 73 69 6f 6e 20 62 79 20 7a 65 72 6f 20 6f 72 20 6e 65 67 61 74 69 76 65 20 76 61 6c 75 65 0a 3c | sion.by.zero.or.negative.value.< |
| 6dba0 | 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 64 65 | span.class="t37_1">/home/andy/de |
| 6dbc0 | 76 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 31 35 3c 2f | v/zig/docgen_tmp/test.zig:6:15</ |
| 6dbe0 | 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 37 | span>:.<span.class="t2_0">0x2227 |
| 6dc00 | 31 32 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 76 61 72 20 | 12.in.???.(test)</span>.....var. |
| 6dc20 | 63 20 3d 20 61 20 25 20 62 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | c.=.a.%.b;...............<span.c |
| 6dc40 | 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 |
| 6dc60 | 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 | s="t37_1">/home/andy/dev/zig/bui |
| 6dc80 | 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 | ld/lib/zig/std/special/bootstrap |
| 6dca0 | 2e 7a 69 67 3a 38 36 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .zig:86:22</span>:.<span.class=" |
| 6dcc0 | 74 32 5f 30 22 3e 30 78 32 32 32 36 61 39 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 | t2_0">0x2226a9.in.???.(test)</sp |
| 6dce0 | 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();.... |
| 6dd00 | 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 |
| 6dd20 | 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_ |
| 6dd40 | 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f | 1">/home/andy/dev/zig/build/lib/ |
| 6dd60 | 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 37 30 | zig/std/special/bootstrap.zig:70 |
| 6dd80 | 3a 32 30 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 | :20</span>:.<span.class="t2_0">0 |
| 6dda0 | 78 32 32 32 36 35 35 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 | x222655.in.???.(test)</span>.... |
| 6ddc0 | 20 72 65 74 75 72 6e 20 63 61 6c 6c 4d 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 | .return.callMain();............. |
| 6dde0 | 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 |
| 6de00 | 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 |
| 6de20 | 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 | dy/dev/zig/build/lib/zig/std/spe |
| 6de40 | 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 36 34 3a 33 39 3c 2f 73 70 61 6e 3e 3a | cial/bootstrap.zig:64:39</span>: |
| 6de60 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 34 62 38 20 69 6e 20 | .<span.class="t2_0">0x2224b8.in. |
| 6de80 | 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 74 64 2e 6f 73 2e 70 6f 73 | ???.(test)</span>.....std.os.pos |
| 6dea0 | 69 78 2e 65 78 69 74 28 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 28 61 72 67 63 2c 20 61 | ix.exit(callMainWithArgs(argc,.a |
| 6dec0 | 72 67 76 2c 20 65 6e 76 70 29 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | rgv,.envp));.................... |
| 6dee0 | 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=" |
| 6df00 | 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 |
| 6df20 | 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 | _1">/home/andy/dev/zig/build/lib |
| 6df40 | 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 33 | /zig/std/special/bootstrap.zig:3 |
| 6df60 | 37 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 | 7:5</span>:.<span.class="t2_0">0 |
| 6df80 | 78 32 32 32 33 37 30 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 | x222370.in.???.(test)</span>.... |
| 6dfa0 | 20 40 6e 6f 49 6e 6c 69 6e 65 43 61 6c 6c 28 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 | .@noInlineCall(posixCallMainAndE |
| 6dfc0 | 78 69 74 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 | xit);.....<span.class="t32_1">^< |
| 6dfe0 | 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 | /span>.</code></pre>............ |
| 6e000 | 20 20 20 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 | ...<h2.id="Exact-Division-Remain |
| 6e020 | 64 65 72 22 3e 45 78 61 63 74 20 44 69 76 69 73 69 6f 6e 20 52 65 6d 61 69 6e 64 65 72 3c 2f 68 | der">Exact.Division.Remainder</h |
| 6e040 | 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 |
| 6e060 | 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 |
| 6e080 | 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 |
| 6e0a0 | 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>. |
| 6e0c0 | 7b 0a 20 20 20 20 3c 73 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 |
| 6e0e0 | 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 |
| 6e100 | 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- |
| 6e120 | 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 |
| 6e140 | 73 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 |
| 6e160 | 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>.=. |
| 6e180 | 3c 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 |
| 6e1a0 | 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 |
| 6e1c0 | 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 |
| 6e1e0 | 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);.} |
| 6e200 | 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 |
| 6e220 | 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. |
| 6e240 | 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f | class="t0_1">/home/andy/dev/zig/ |
| 6e260 | 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 34 3a 31 35 3a 20 3c 2f 73 70 61 6e | docgen_tmp/test.zig:4:15:.</span |
| 6e280 | 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 3c 2f 73 70 61 | ><span.class="t31_1">error:</spa |
| 6e2a0 | 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 20 65 78 61 63 74 20 64 69 76 69 | n><span.class="t0_1">.exact.divi |
| 6e2c0 | 73 69 6f 6e 20 68 61 64 20 61 20 72 65 6d 61 69 6e 64 65 72 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 | sion.had.a.remainder</span>..... |
| 6e2e0 | 63 6f 6e 73 74 20 63 20 3d 20 40 64 69 76 45 78 61 63 74 28 61 2c 20 62 29 3b 0a 20 20 20 20 20 | const.c.=.@divExact(a,.b);...... |
| 6e300 | 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">^</ |
| 6e320 | 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 |
| 6e340 | 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 |
| 6e360 | 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 |
| 6e380 | 3d 22 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 |
| 6e3a0 | 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- |
| 6e3c0 | 62 75 69 6c 74 69 6e 22 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 |
| 6e3e0 | 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 |
| 6e400 | 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 |
| 6e420 | 3c 2f 73 70 61 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< |
| 6e440 | 2f 73 70 61 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 |
| 6e460 | 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" |
| 6e480 | 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=" |
| 6e4a0 | 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | tok-kw">var</span>.a:.<span.clas |
| 6e4c0 | 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. |
| 6e4e0 | 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>;... |
| 6e500 | 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 |
| 6e520 | 3e 20 62 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c | >.b:.<span.class="tok-type">u32< |
| 6e540 | 2f 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 |
| 6e560 | 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 |
| 6e580 | 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 63 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | -kw">var</span>.c.=.<span.class= |
| 6e5a0 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 64 69 76 45 78 61 63 74 3c 2f 73 70 61 6e 3e 28 61 | "tok-builtin">@divExact</span>(a |
| 6e5c0 | 2c 20 62 29 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 77 61 72 6e 28 3c 73 70 61 6e 20 63 | ,.b);.....std.debug.warn(<span.c |
| 6e5e0 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 61 6c 75 65 3a 20 7b 7d 5c 6e | lass="tok-str">"value:.{}\n |
| 6e600 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 63 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | "</span>,.c);.}</code></pre |
| 6e620 | 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. |
| 6e640 | 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 78 61 63 | build-exe.test.zig.$../test.exac |
| 6e660 | 74 20 64 69 76 69 73 69 6f 6e 20 70 72 6f 64 75 63 65 64 20 72 65 6d 61 69 6e 64 65 72 0a 3c 73 | t.division.produced.remainder.<s |
| 6e680 | 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 64 65 76 | pan.class="t37_1">/home/andy/dev |
| 6e6a0 | 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 31 33 3c 2f 73 | /zig/docgen_tmp/test.zig:6:13</s |
| 6e6c0 | 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 37 33 | pan>:.<span.class="t2_0">0x22273 |
| 6e6e0 | 33 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 76 61 72 20 63 | 3.in.???.(test)</span>.....var.c |
| 6e700 | 20 3d 20 40 64 69 76 45 78 61 63 74 28 61 2c 20 62 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 | .=.@divExact(a,.b);............. |
| 6e720 | 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 |
| 6e740 | 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 64 65 76 2f | an.class="t37_1">/home/andy/dev/ |
| 6e760 | 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f | zig/build/lib/zig/std/special/bo |
| 6e780 | 6f 74 73 74 72 61 70 2e 7a 69 67 3a 38 36 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 | otstrap.zig:86:22</span>:.<span. |
| 6e7a0 | 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 36 61 39 20 69 6e 20 3f 3f 3f 20 28 74 65 | class="t2_0">0x2226a9.in.???.(te |
| 6e7c0 | 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 6f 74 2e 6d 61 69 6e | st)</span>.............root.main |
| 6e7e0 | 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | ();......................<span.c |
| 6e800 | 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 |
| 6e820 | 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 | s="t37_1">/home/andy/dev/zig/bui |
| 6e840 | 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 | ld/lib/zig/std/special/bootstrap |
| 6e860 | 2e 7a 69 67 3a 37 30 3a 32 30 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .zig:70:20</span>:.<span.class=" |
| 6e880 | 74 32 5f 30 22 3e 30 78 32 32 32 36 35 35 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 | t2_0">0x222655.in.???.(test)</sp |
| 6e8a0 | 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 63 61 6c 6c 4d 61 69 6e 28 29 3b 0a 20 20 20 20 20 | an>.....return.callMain();...... |
| 6e8c0 | 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 |
| 6e8e0 | 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">/ |
| 6e900 | 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f | home/andy/dev/zig/build/lib/zig/ |
| 6e920 | 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 36 34 3a 33 39 3c | std/special/bootstrap.zig:64:39< |
| 6e940 | 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 | /span>:.<span.class="t2_0">0x222 |
| 6e960 | 34 62 38 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 74 64 | 4b8.in.???.(test)</span>.....std |
| 6e980 | 2e 6f 73 2e 70 6f 73 69 78 2e 65 78 69 74 28 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 28 | .os.posix.exit(callMainWithArgs( |
| 6e9a0 | 61 72 67 63 2c 20 61 72 67 76 2c 20 65 6e 76 70 29 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 | argc,.argv,.envp));............. |
| 6e9c0 | 20 20 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. |
| 6e9e0 | 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 |
| 6ea00 | 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 | ss="t37_1">/home/andy/dev/zig/bu |
| 6ea20 | 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 | ild/lib/zig/std/special/bootstra |
| 6ea40 | 70 2e 7a 69 67 3a 33 37 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | p.zig:37:5</span>:.<span.class=" |
| 6ea60 | 74 32 5f 30 22 3e 30 78 32 32 32 33 37 30 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 | t2_0">0x222370.in.???.(test)</sp |
| 6ea80 | 61 6e 3e 0a 20 20 20 20 40 6e 6f 49 6e 6c 69 6e 65 43 61 6c 6c 28 70 6f 73 69 78 43 61 6c 6c 4d | an>.....@noInlineCall(posixCallM |
| 6eaa0 | 61 69 6e 41 6e 64 45 78 69 74 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 | ainAndExit);.....<span.class="t3 |
| 6eac0 | 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>..... |
| 6eae0 | 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 53 6c 69 63 65 2d 57 69 64 65 6e 2d 52 65 | ..........<h2.id="Slice-Widen-Re |
| 6eb00 | 6d 61 69 6e 64 65 72 22 3e 53 6c 69 63 65 20 57 69 64 65 6e 20 52 65 6d 61 69 6e 64 65 72 3c 2f | mainder">Slice.Widen.Remainder</ |
| 6eb20 | 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:</ |
| 6eb40 | 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 |
| 6eb60 | 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 |
| 6eb80 | 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> |
| 6eba0 | 20 7b 0a 20 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< |
| 6ebc0 | 2f 73 70 61 6e 3e 20 62 79 74 65 73 20 3d 20 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | /span>.bytes.=.[<span.class="tok |
| 6ebe0 | 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | -number">5</span>]<span.class="t |
| 6ec00 | 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ok-type">u8</span>{.<span.class= |
| 6ec20 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 | "tok-number">1</span>,.<span.cla |
| 6ec40 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 | ss="tok-number">2</span>,.<span. |
| 6ec60 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 | class="tok-number">3</span>,.<sp |
| 6ec80 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 | an.class="tok-number">4</span>,. |
| 6eca0 | 3c 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 |
| 6ecc0 | 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 76 61 | >.};.....<span.class="tok-kw">va |
| 6ece0 | 72 3c 2f 73 70 61 6e 3e 20 73 6c 69 63 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | r</span>.slice.=.<span.class="to |
| 6ed00 | 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 62 79 74 65 73 54 6f 53 6c 69 63 65 3c 2f 73 70 61 6e 3e 28 | k-builtin">@bytesToSlice</span>( |
| 6ed20 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e | <span.class="tok-type">u32</span |
| 6ed40 | 3e 2c 20 62 79 74 65 73 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 | >,.bytes);.}</code></pre><pre><c |
| 6ed60 | 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 |
| 6ed80 | 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 2f 68 6f 6d 65 2f 61 | t.zig.<span.class="t0_1">/home/a |
| 6eda0 | 6e 64 79 2f 64 65 76 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 | ndy/dev/zig/docgen_tmp/test.zig: |
| 6edc0 | 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 31 5f 31 22 | 3:17:.</span><span.class="t31_1" |
| 6ede0 | 3e 65 72 72 6f 72 3a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 | >error:</span><span.class="t0_1" |
| 6ee00 | 3e 20 75 6e 61 62 6c 65 20 74 6f 20 63 6f 6e 76 65 72 74 20 5b 35 5d 75 38 20 74 6f 20 5b 5d 61 | >.unable.to.convert.[5]u8.to.[]a |
| 6ee20 | 6c 69 67 6e 28 31 29 20 63 6f 6e 73 74 20 75 33 32 3a 20 73 69 7a 65 20 6d 69 73 6d 61 74 63 68 | lign(1).const.u32:.size.mismatch |
| 6ee40 | 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 76 61 72 20 73 6c 69 63 65 20 3d 20 40 62 79 74 65 73 54 6f | </span>.....var.slice.=.@bytesTo |
| 6ee60 | 53 6c 69 63 65 28 75 33 32 2c 20 62 79 74 65 73 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | Slice(u32,.bytes);.............. |
| 6ee80 | 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>. |
| 6eea0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 | <span.class="t0_1">/home/andy/de |
| 6eec0 | 76 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 33 31 3a 20 | v/zig/docgen_tmp/test.zig:3:31:. |
| 6eee0 | 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: |
| 6ef00 | 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 20 75 33 32 20 68 | </span><span.class="t0_1">.u32.h |
| 6ef20 | 61 73 20 73 69 7a 65 20 34 3b 20 72 65 6d 61 69 6e 69 6e 67 20 62 79 74 65 73 3a 20 31 3c 2f 73 | as.size.4;.remaining.bytes:.1</s |
| 6ef40 | 70 61 6e 3e 0a 20 20 20 20 76 61 72 20 73 6c 69 63 65 20 3d 20 40 62 79 74 65 73 54 6f 53 6c 69 | pan>.....var.slice.=.@bytesToSli |
| 6ef60 | 63 65 28 75 33 32 2c 20 62 79 74 65 73 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ce(u32,.bytes);................. |
| 6ef80 | 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 |
| 6efa0 | 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>........ |
| 6efc0 | 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 |
| 6efe0 | 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. |
| 6f000 | 63 6c 61 73 73 3d 22 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" |
| 6f020 | 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= |
| 6f040 | 22 74 6f 6b 2d 62 75 69 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 |
| 6f060 | 61 6e 20 63 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 |
| 6f080 | 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 |
| 6f0a0 | 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 |
| 6f0c0 | 22 3e 66 6e 3c 2f 73 70 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" |
| 6f0e0 | 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- |
| 6f100 | 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 |
| 6f120 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 79 74 65 73 20 3d 20 | ass="tok-kw">var</span>.bytes.=. |
| 6f140 | 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 |
| 6f160 | 6e 3e 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 | n>]<span.class="tok-type">u8</sp |
| 6f180 | 61 6e 3e 7b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c | an>{.<span.class="tok-number">1< |
| 6f1a0 | 2f 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" |
| 6f1c0 | 3e 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | >2</span>,.<span.class="tok-numb |
| 6f1e0 | 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e | er">3</span>,.<span.class="tok-n |
| 6f200 | 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | umber">4</span>,.<span.class="to |
| 6f220 | 6b 2d 6e 75 6d 62 65 72 22 3e 35 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | k-number">5</span>.};.....<span. |
| 6f240 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 73 6c 69 63 65 20 | class="tok-kw">var</span>.slice. |
| 6f260 | 3d 20 3c 73 70 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 | =.<span.class="tok-builtin">@byt |
| 6f280 | 65 73 54 6f 53 6c 69 63 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | esToSlice</span>(<span.class="to |
| 6f2a0 | 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 62 79 74 65 73 5b 3c 73 70 61 6e 20 | k-type">u32</span>,.bytes[<span. |
| 6f2c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e 2e 5d 29 3b | class="tok-number">0</span>..]); |
| 6f2e0 | 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 77 61 72 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .....std.debug.warn(<span.class= |
| 6f300 | 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 74 | "tok-str">"value:.{}\n" |
| 6f320 | 3b 3c 2f 73 70 61 6e 3e 2c 20 73 6c 69 63 65 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ;</span>,.slice[<span.class="tok |
| 6f340 | 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 | -number">0</span>]);.}</code></p |
| 6f360 | 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 |
| 6f380 | 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 73 6c | g.build-exe.test.zig.$../test.sl |
| 6f3a0 | 69 63 65 20 77 69 64 65 6e 69 6e 67 20 73 69 7a 65 20 6d 69 73 6d 61 74 63 68 0a 3c 73 70 61 6e | ice.widening.size.mismatch.<span |
| 6f3c0 | 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 64 65 76 2f 7a 69 | .class="t37_1">/home/andy/dev/zi |
| 6f3e0 | 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 37 3c 2f 73 70 61 6e | g/docgen_tmp/test.zig:5:17</span |
| 6f400 | 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 37 35 36 20 69 | >:.<span.class="t2_0">0x222756.i |
| 6f420 | 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 76 61 72 20 73 6c 69 63 | n.???.(test)</span>.....var.slic |
| 6f440 | 65 20 3d 20 40 62 79 74 65 73 54 6f 53 6c 69 63 65 28 75 33 32 2c 20 62 79 74 65 73 5b 30 2e 2e | e.=.@bytesToSlice(u32,.bytes[0.. |
| 6f460 | 5d 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 73 3d | ]);.................<span.class= |
| 6f480 | 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 |
| 6f4a0 | 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 | 7_1">/home/andy/dev/zig/build/li |
| 6f4c0 | 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a | b/zig/std/special/bootstrap.zig: |
| 6f4e0 | 38 36 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 | 86:22</span>:.<span.class="t2_0" |
| 6f500 | 3e 30 78 32 32 32 36 61 39 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 | >0x2226a9.in.???.(test)</span>.. |
| 6f520 | 20 20 20 20 20 20 20 20 20 20 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 | ...........root.main();......... |
| 6f540 | 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" |
| 6f560 | 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 |
| 6f580 | 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 | ome/andy/dev/zig/build/lib/zig/s |
| 6f5a0 | 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 37 30 3a 32 30 3c 2f | td/special/bootstrap.zig:70:20</ |
| 6f5c0 | 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 36 | span>:.<span.class="t2_0">0x2226 |
| 6f5e0 | 35 35 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 | 55.in.???.(test)</span>.....retu |
| 6f600 | 72 6e 20 63 61 6c 6c 4d 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | rn.callMain();.................. |
| 6f620 | 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>.< |
| 6f640 | 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 64 65 | span.class="t37_1">/home/andy/de |
| 6f660 | 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f | v/zig/build/lib/zig/std/special/ |
| 6f680 | 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 36 34 3a 33 39 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 | bootstrap.zig:64:39</span>:.<spa |
| 6f6a0 | 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 34 62 38 20 69 6e 20 3f 3f 3f 20 28 | n.class="t2_0">0x2224b8.in.???.( |
| 6f6c0 | 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 74 64 2e 6f 73 2e 70 6f 73 69 78 2e 65 78 | test)</span>.....std.os.posix.ex |
| 6f6e0 | 69 74 28 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 28 61 72 67 63 2c 20 61 72 67 76 2c 20 | it(callMainWithArgs(argc,.argv,. |
| 6f700 | 65 6e 76 70 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 | envp));......................... |
| 6f720 | 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 |
| 6f740 | 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">/ |
| 6f760 | 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f | home/andy/dev/zig/build/lib/zig/ |
| 6f780 | 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 33 37 3a 35 3c 2f | std/special/bootstrap.zig:37:5</ |
| 6f7a0 | 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 33 | span>:.<span.class="t2_0">0x2223 |
| 6f7c0 | 37 30 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 6e 6f 49 | 70.in.???.(test)</span>.....@noI |
| 6f7e0 | 6e 6c 69 6e 65 43 61 6c 6c 28 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 29 3b | nlineCall(posixCallMainAndExit); |
| 6f800 | 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 |
| 6f820 | 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 | >.</code></pre>...............<h |
| 6f840 | 32 20 69 64 3d 22 41 74 74 65 6d 70 74 2d 74 6f 2d 55 6e 77 72 61 70 2d 4e 75 6c 6c 22 3e 41 74 | 2.id="Attempt-to-Unwrap-Null">At |
| 6f860 | 74 65 6d 70 74 20 74 6f 20 55 6e 77 72 61 70 20 4e 75 6c 6c 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 | tempt.to.Unwrap.Null</h2>....... |
| 6f880 | 20 3c 70 3e 41 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | .<p>At.compile-time:</p>.......< |
| 6f8a0 | 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> |
| 6f8c0 | 3c 63 6f 64 65 20 63 6c 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 |
| 6f8e0 | 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 | ok-kw">comptime</span>.{.....<sp |
| 6f900 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6f | an.class="tok-kw">const</span>.o |
| 6f920 | 70 74 69 6f 6e 61 6c 5f 6e 75 6d 62 65 72 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ptional_number:.?<span.class="to |
| 6f940 | 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 |
| 6f960 | 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 | ="tok-null">null</span>;.....<sp |
| 6f980 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e | an.class="tok-kw">const</span>.n |
| 6f9a0 | 75 6d 62 65 72 20 3d 20 6f 70 74 69 6f 6e 61 6c 5f 6e 75 6d 62 65 72 2e 3f 3b 0a 7d 3c 2f 63 6f | umber.=.optional_number.?;.}</co |
| 6f9c0 | 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 |
| 6f9e0 | 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 61 6e 20 63 6c 61 73 | ">$.zig.test.test.zig.<span.clas |
| 6fa00 | 73 3d 22 74 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 | s="t0_1">/home/andy/dev/zig/docg |
| 6fa20 | 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 33 3a 33 35 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 | en_tmp/test.zig:3:35:.</span><sp |
| 6fa40 | 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 3c 2f 73 70 61 6e 3e 3c 73 | an.class="t31_1">error:</span><s |
| 6fa60 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 20 75 6e 61 62 6c 65 20 74 6f 20 75 6e 77 72 | pan.class="t0_1">.unable.to.unwr |
| 6fa80 | 61 70 20 6e 75 6c 6c 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 6e 75 6d 62 65 72 20 | ap.null</span>.....const.number. |
| 6faa0 | 3d 20 6f 70 74 69 6f 6e 61 6c 5f 6e 75 6d 62 65 72 2e 3f 3b 0a 20 20 20 20 20 20 20 20 20 20 20 | =.optional_number.?;............ |
| 6fac0 | 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 |
| 6fae0 | 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 |
| 6fb00 | 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 72 75 6e 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 | >........<p>At.runtime:</p>..... |
| 6fb20 | 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 |
| 6fb40 | 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 |
| 6fb60 | 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 |
| 6fb80 | 61 6e 20 63 6c 61 73 73 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</ |
| 6fba0 | 73 70 61 6e 3e 28 3c 73 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 |
| 6fbc0 | 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | t;std"</span>);..<span.clas |
| 6fbe0 | 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 |
| 6fc00 | 73 3d 22 74 6f 6b 2d 6b 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 |
| 6fc20 | 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 |
| 6fc40 | 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>.{.... |
| 6fc60 | 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> |
| 6fc80 | 20 6f 70 74 69 6f 6e 61 6c 5f 6e 75 6d 62 65 72 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .optional_number:.?<span.class=" |
| 6fca0 | 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 |
| 6fcc0 | 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 3c | ss="tok-null">null</span>;.....< |
| 6fce0 | 73 70 61 6e 20 63 6c 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 |
| 6fd00 | 75 6d 62 65 72 20 3d 20 6f 70 74 69 6f 6e 61 6c 5f 6e 75 6d 62 65 72 2e 3f 3b 0a 20 20 20 20 73 | umber.=.optional_number.?;.....s |
| 6fd20 | 74 64 2e 64 65 62 75 67 2e 77 61 72 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | td.debug.warn(<span.class="tok-s |
| 6fd40 | 74 72 22 3e 26 71 75 6f 74 3b 76 61 6c 75 65 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 | tr">"value:.{}\n"</spa |
| 6fd60 | 6e 3e 2c 20 6e 75 6d 62 65 72 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e | n>,.number);.}</code></pre><pre> |
| 6fd80 | 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- |
| 6fda0 | 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 6f | exe.test.zig.$../test.attempt.to |
| 6fdc0 | 20 75 6e 77 72 61 70 20 6e 75 6c 6c 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f 31 22 | .unwrap.null.<span.class="t37_1" |
| 6fde0 | 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 | >/home/andy/dev/zig/docgen_tmp/t |
| 6fe00 | 65 73 74 2e 7a 69 67 3a 35 3a 33 33 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | est.zig:5:33</span>:.<span.class |
| 6fe20 | 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 36 66 66 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f | ="t2_0">0x2226ff.in.???.(test)</ |
| 6fe40 | 73 70 61 6e 3e 0a 20 20 20 20 76 61 72 20 6e 75 6d 62 65 72 20 3d 20 6f 70 74 69 6f 6e 61 6c 5f | span>.....var.number.=.optional_ |
| 6fe60 | 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 20 20 20 | number.?;....................... |
| 6fe80 | 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">^< |
| 6fea0 | 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 |
| 6fec0 | 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f | /andy/dev/zig/build/lib/zig/std/ |
| 6fee0 | 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 38 36 3a 32 32 3c 2f 73 70 61 | special/bootstrap.zig:86:22</spa |
| 6ff00 | 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 36 61 39 20 | n>:.<span.class="t2_0">0x2226a9. |
| 6ff20 | 69 6e 20 3f 3f 3f 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 | in.???.(test)</span>............ |
| 6ff40 | 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .root.main();................... |
| 6ff60 | 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>. |
| 6ff80 | 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 64 | <span.class="t37_1">/home/andy/d |
| 6ffa0 | 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c | ev/zig/build/lib/zig/std/special |
| 6ffc0 | 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 37 30 3a 32 30 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 | /bootstrap.zig:70:20</span>:.<sp |
| 6ffe0 | 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 36 35 35 20 69 6e 20 3f 3f 3f 20 | an.class="t2_0">0x222655.in.???. |
| 70000 | 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 63 61 6c 6c 4d 61 69 | (test)</span>.....return.callMai |
| 70020 | 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | n();....................<span.cl |
| 70040 | 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 |
| 70060 | 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c | ="t37_1">/home/andy/dev/zig/buil |
| 70080 | 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e | d/lib/zig/std/special/bootstrap. |
| 700a0 | 7a 69 67 3a 36 34 3a 33 39 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | zig:64:39</span>:.<span.class="t |
| 700c0 | 32 5f 30 22 3e 30 78 32 32 32 34 62 38 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 | 2_0">0x2224b8.in.???.(test)</spa |
| 700e0 | 6e 3e 0a 20 20 20 20 73 74 64 2e 6f 73 2e 70 6f 73 69 78 2e 65 78 69 74 28 63 61 6c 6c 4d 61 69 | n>.....std.os.posix.exit(callMai |
| 70100 | 6e 57 69 74 68 41 72 67 73 28 61 72 67 63 2c 20 61 72 67 76 2c 20 65 6e 76 70 29 29 3b 0a 20 20 | nWithArgs(argc,.argv,.envp));... |
| 70120 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| 70140 | 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> |
| 70160 | 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/ |
| 70180 | 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 | dev/zig/build/lib/zig/std/specia |
| 701a0 | 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 33 37 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 | l/bootstrap.zig:37:5</span>:.<sp |
| 701c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 33 37 30 20 69 6e 20 3f 3f 3f 20 | an.class="t2_0">0x222370.in.???. |
| 701e0 | 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 6e 6f 49 6e 6c 69 6e 65 43 61 6c 6c 28 | (test)</span>.....@noInlineCall( |
| 70200 | 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 29 3b 0a 20 20 20 20 3c 73 70 61 6e | posixCallMainAndExit);.....<span |
| 70220 | 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c | .class="t32_1">^</span>.</code>< |
| 70240 | 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 |
| 70260 | 20 74 68 69 73 20 63 72 61 73 68 20 69 73 20 74 6f 20 74 65 73 74 20 66 6f 72 20 6e 75 6c 6c 20 | .this.crash.is.to.test.for.null. |
| 70280 | 69 6e 73 74 65 61 64 20 6f 66 20 61 73 73 75 6d 69 6e 67 20 6e 6f 6e 2d 6e 75 6c 6c 2c 20 77 69 | instead.of.assuming.non-null,.wi |
| 702a0 | 74 68 0a 20 20 20 20 20 20 74 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c | th.......the.<code.class="zig">< |
| 702c0 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 3c 2f 63 | span.class="tok-kw">if</span></c |
| 702e0 | 6f 64 65 3e 20 65 78 70 72 65 73 73 69 6f 6e 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c | ode>.expression:</p>.......<p.cl |
| 70300 | 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 |
| 70320 | 65 20 63 6c 61 73 73 3d 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 |
| 70340 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 77 61 72 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | w">const</span>.warn.=.<span.cla |
| 70360 | 73 73 3d 22 74 6f 6b 2d 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>( |
| 70380 | 3c 73 70 61 6e 20 63 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& |
| 703a0 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 75 67 2e 77 61 72 6e 3b 0a 3c 73 70 61 6e 20 | quot;</span>).debug.warn;.<span. |
| 703c0 | 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. |
| 703e0 | 63 6c 61 73 73 3d 22 74 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 |
| 70400 | 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 | lass="tok-fn">main</span>().<spa |
| 70420 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b | n.class="tok-type">void</span>.{ |
| 70440 | 0a 20 20 20 20 3c 73 70 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< |
| 70460 | 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 63 | /span>.optional_number:.?<span.c |
| 70480 | 6c 61 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 |
| 704a0 | 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>; |
| 704c0 | 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 | ......<span.class="tok-kw">if</s |
| 704e0 | 70 61 6e 3e 20 28 6f 70 74 69 6f 6e 61 6c 5f 6e 75 6d 62 65 72 29 20 7c 6e 75 6d 62 65 72 7c 20 | pan>.(optional_number).|number|. |
| 70500 | 7b 0a 20 20 20 20 20 20 20 20 77 61 72 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | {.........warn(<span.class="tok- |
| 70520 | 73 74 72 22 3e 26 71 75 6f 74 3b 67 6f 74 20 6e 75 6d 62 65 72 3a 20 7b 7d 5c 6e 26 71 75 6f 74 | str">"got.number:.{}\n" |
| 70540 | 3b 3c 2f 73 70 61 6e 3e 2c 20 6e 75 6d 62 65 72 29 3b 0a 20 20 20 20 7d 20 3c 73 70 61 6e 20 63 | ;</span>,.number);.....}.<span.c |
| 70560 | 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>.{..... |
| 70580 | 20 20 20 20 77 61 72 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 | ....warn(<span.class="tok-str">& |
| 705a0 | 71 75 6f 74 3b 69 74 27 73 20 6e 75 6c 6c 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a | quot;it's.null\n"</span>);. |
| 705c0 | 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 63 | ....}.}</code></pre><pre><code.c |
| 705e0 | 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 |
| 70600 | 74 2e 7a 69 67 0a 24 20 2e 2f 74 65 73 74 0a 69 74 27 73 20 6e 75 6c 6c 0a 3c 2f 63 6f 64 65 3e | t.zig.$../test.it's.null.</code> |
| 70620 | 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 |
| 70640 | 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 4f 70 74 69 6f 6e 61 6c 73 22 3e 4f 70 74 69 | l>.<li><a.href="#Optionals">Opti |
| 70660 | 6f 6e 61 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 | onals</a></li>.</ul>............ |
| 70680 | 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 70 2d 45 72 72 | ...<h2.id="Attempt-to-Unwrap-Err |
| 706a0 | 6f 72 22 3e 41 74 74 65 6d 70 74 20 74 6f 20 55 6e 77 72 61 70 20 45 72 72 6f 72 3c 2f 68 32 3e | or">Attempt.to.Unwrap.Error</h2> |
| 706c0 | 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>. |
| 706e0 | 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</ |
| 70700 | 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 |
| 70720 | 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>.{. |
| 70740 | 20 20 20 20 3c 73 70 61 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</ |
| 70760 | 73 70 61 6e 3e 20 6e 75 6d 62 65 72 20 3d 20 67 65 74 4e 75 6d 62 65 72 4f 72 46 61 69 6c 28 29 | span>.number.=.getNumberOrFail() |
| 70780 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 | .<span.class="tok-kw">catch</spa |
| 707a0 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 | n>.<span.class="tok-kw">unreacha |
| 707c0 | 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | ble</span>;.}..<span.class="tok- |
| 707e0 | 6b 77 22 3e 66 6e 3c 2f 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 |
| 70800 | 6e 22 3e 67 65 74 4e 75 6d 62 65 72 4f 72 46 61 69 6c 3c 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 | n">getNumberOrFail</span>().!<sp |
| 70820 | 61 6e 20 63 6c 61 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>.{ |
| 70840 | 0a 20 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 |
| 70860 | 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 | </span>.<span.class="tok-kw">err |
| 70880 | 6f 72 3c 2f 73 70 61 6e 3e 2e 55 6e 61 62 6c 65 54 6f 52 65 74 75 72 6e 4e 75 6d 62 65 72 3b 0a | or</span>.UnableToReturnNumber;. |
| 708a0 | 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=" |
| 708c0 | 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 |
| 708e0 | 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 | .class="t0_1">/home/andy/dev/zig |
| 70900 | 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 20 3c 2f 73 70 61 | /docgen_tmp/test.zig:2:38:.</spa |
| 70920 | 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 3c 2f 73 70 | n><span.class="t31_1">error:</sp |
| 70940 | 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 20 63 61 75 67 68 74 20 75 6e | an><span.class="t0_1">.caught.un |
| 70960 | 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 74 75 72 6e 4e 75 | expected.error.'UnableToReturnNu |
| 70980 | 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 62 65 72 20 3d 20 | mber'</span>.....const.number.=. |
| 709a0 | 67 65 74 4e 75 6d 62 65 72 4f 72 46 61 69 6c 28 29 20 63 61 74 63 68 20 75 6e 72 65 61 63 68 61 | getNumberOrFail().catch.unreacha |
| 709c0 | 62 6c 65 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ble;............................ |
| 709e0 | 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">^< |
| 70a00 | 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 | /span>.</code></pre>........<p>A |
| 70a20 | 74 20 72 75 6e 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 | t.runtime:</p>.......<p.class="f |
| 70a40 | 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 |
| 70a60 | 73 3d 22 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 |
| 70a80 | 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 |
| 70aa0 | 2d 62 75 69 6c 74 69 6e 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 |
| 70ac0 | 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"</ |
| 70ae0 | 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 |
| 70b00 | 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 |
| 70b20 | 3c 2f 73 70 61 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 |
| 70b40 | 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | n</span>().<span.class="tok-type |
| 70b60 | 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= |
| 70b80 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6e 75 6d 62 65 72 20 3d 20 67 | "tok-kw">const</span>.number.=.g |
| 70ba0 | 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 73 73 3d 22 74 6f | etNumberOrFail().<span.class="to |
| 70bc0 | 6b 2d 6b 77 22 3e 63 61 74 63 68 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | k-kw">catch</span>.<span.class=" |
| 70be0 | 74 6f 6b 2d 6b 77 22 3e 75 6e 72 65 61 63 68 61 62 6c 65 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 | tok-kw">unreachable</span>;..... |
| 70c00 | 73 74 64 2e 64 65 62 75 67 2e 77 61 72 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | std.debug.warn(<span.class="tok- |
| 70c20 | 73 74 72 22 3e 26 71 75 6f 74 3b 76 61 6c 75 65 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 | str">"value:.{}\n"</sp |
| 70c40 | 61 6e 3e 2c 20 6e 75 6d 62 65 72 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | an>,.number);.}..<span.class="to |
| 70c60 | 6b 2d 6b 77 22 3e 66 6e 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 |
| 70c80 | 2d 66 6e 22 3e 67 65 74 4e 75 6d 62 65 72 4f 72 46 61 69 6c 3c 2f 73 70 61 6e 3e 28 29 20 21 3c | -fn">getNumberOrFail</span>().!< |
| 70ca0 | 73 70 61 6e 20 63 6c 61 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> |
| 70cc0 | 20 7b 0a 20 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 |
| 70ce0 | 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 | rn</span>.<span.class="tok-kw">e |
| 70d00 | 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 55 6e 61 62 6c 65 54 6f 52 65 74 75 72 6e 4e 75 6d 62 65 72 | rror</span>.UnableToReturnNumber |
| 70d20 | 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 |
| 70d40 | 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 | ="shell">$.zig.build-exe.test.zi |
| 70d60 | 67 0a 24 20 2e 2f 74 65 73 74 0a 61 74 74 65 6d 70 74 20 74 6f 20 75 6e 77 72 61 70 20 65 72 72 | g.$../test.attempt.to.unwrap.err |
| 70d80 | 6f 72 3a 20 55 6e 61 62 6c 65 54 6f 52 65 74 75 72 6e 4e 75 6d 62 65 72 0a 3c 73 70 61 6e 20 63 | or:.UnableToReturnNumber.<span.c |
| 70da0 | 6c 61 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f | lass="t37_1">/home/andy/dev/zig/ |
| 70dc0 | 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 39 3a 35 3c 2f 73 70 61 6e 3e 3a 20 | docgen_tmp/test.zig:9:5</span>:. |
| 70de0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 37 36 62 20 69 6e 20 3f | <span.class="t2_0">0x22276b.in.? |
| 70e00 | 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 65 72 72 6f | ??.(test)</span>.....return.erro |
| 70e20 | 72 2e 55 6e 61 62 6c 65 54 6f 52 65 74 75 72 6e 4e 75 6d 62 65 72 3b 0a 20 20 20 20 3c 73 70 61 | r.UnableToReturnNumber;.....<spa |
| 70e40 | 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 3f 3f 3f 3a 3f 3a 3f | n.class="t32_1">^</span>.???:?:? |
| 70e60 | 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 66 61 33 65 20 69 6e | :.<span.class="t2_0">0x21fa3e.in |
| 70e80 | 20 3f 3f 3f 20 28 3f 3f 3f 29 3c 2f 73 70 61 6e 3e 0a 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | .???.(???)</span>...<span.class= |
| 70ea0 | 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 | "t37_1">/home/andy/dev/zig/docge |
| 70ec0 | 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 3a 34 3a 33 38 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 | n_tmp/test.zig:4:38</span>:.<spa |
| 70ee0 | 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 37 32 63 20 69 6e 20 3f 3f 3f 20 28 | n.class="t2_0">0x22272c.in.???.( |
| 70f00 | 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 6e 75 6d 62 65 72 20 3d 20 | test)</span>.....const.number.=. |
| 70f20 | 67 65 74 4e 75 6d 62 65 72 4f 72 46 61 69 6c 28 29 20 63 61 74 63 68 20 75 6e 72 65 61 63 68 61 | getNumberOrFail().catch.unreacha |
| 70f40 | 62 6c 65 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ble;............................ |
| 70f60 | 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">^< |
| 70f80 | 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 |
| 70fa0 | 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f | /andy/dev/zig/build/lib/zig/std/ |
| 70fc0 | 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 38 36 3a 32 32 3c 2f 73 70 61 | special/bootstrap.zig:86:22</spa |
| 70fe0 | 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 36 61 39 20 | n>:.<span.class="t2_0">0x2226a9. |
| 71000 | 69 6e 20 3f 3f 3f 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 | in.???.(test)</span>............ |
| 71020 | 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .root.main();................... |
| 71040 | 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>. |
| 71060 | 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 64 | <span.class="t37_1">/home/andy/d |
| 71080 | 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c | ev/zig/build/lib/zig/std/special |
| 710a0 | 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 37 30 3a 32 30 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 | /bootstrap.zig:70:20</span>:.<sp |
| 710c0 | 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 36 35 35 20 69 6e 20 3f 3f 3f 20 | an.class="t2_0">0x222655.in.???. |
| 710e0 | 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 63 61 6c 6c 4d 61 69 | (test)</span>.....return.callMai |
| 71100 | 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c | n();....................<span.cl |
| 71120 | 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 |
| 71140 | 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c | ="t37_1">/home/andy/dev/zig/buil |
| 71160 | 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e | d/lib/zig/std/special/bootstrap. |
| 71180 | 7a 69 67 3a 36 34 3a 33 39 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | zig:64:39</span>:.<span.class="t |
| 711a0 | 32 5f 30 22 3e 30 78 32 32 32 34 62 38 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 | 2_0">0x2224b8.in.???.(test)</spa |
| 711c0 | 6e 3e 0a 20 20 20 20 73 74 64 2e 6f 73 2e 70 6f 73 69 78 2e 65 78 69 74 28 63 61 6c 6c 4d 61 69 | n>.....std.os.posix.exit(callMai |
| 711e0 | 6e 57 69 74 68 41 72 67 73 28 61 72 67 63 2c 20 61 72 67 76 2c 20 65 6e 76 70 29 29 3b 0a 20 20 | nWithArgs(argc,.argv,.envp));... |
| 71200 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| 71220 | 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> |
| 71240 | 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/ |
| 71260 | 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 | dev/zig/build/lib/zig/std/specia |
| 71280 | 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 33 37 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 | l/bootstrap.zig:37:5</span>:.<sp |
| 712a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 33 37 30 20 69 6e 20 3f 3f 3f 20 | an.class="t2_0">0x222370.in.???. |
| 712c0 | 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 6e 6f 49 6e 6c 69 6e 65 43 61 6c 6c 28 | (test)</span>.....@noInlineCall( |
| 712e0 | 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 29 3b 0a 20 20 20 20 3c 73 70 61 6e | posixCallMainAndExit);.....<span |
| 71300 | 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c | .class="t32_1">^</span>.</code>< |
| 71320 | 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 |
| 71340 | 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 |
| 71360 | 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 |
| 71380 | 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 |
| 713a0 | 65 20 63 6c 61 73 73 3d 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 |
| 713c0 | 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:< |
| 713e0 | 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 |
| 71400 | 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 |
| 71420 | 61 6e 20 63 6c 61 73 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 | an.class="tok-kw">const</span>.w |
| 71440 | 61 72 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | arn.=.<span.class="tok-builtin"> |
| 71460 | 40 69 6d 70 6f 72 74 3c 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- |
| 71480 | 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 64 65 62 | str">"std"</span>).deb |
| 714a0 | 75 67 2e 77 61 72 6e 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 | ug.warn;..<span.class="tok-kw">p |
| 714c0 | 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 |
| 714e0 | 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 | n</span>.<span.class="tok-fn">ma |
| 71500 | 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | in</span>().<span.class="tok-typ |
| 71520 | 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 |
| 71540 | 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.=. |
| 71560 | 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 63 6c | getNumberOrFail();......<span.cl |
| 71580 | 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 29 20 | ass="tok-kw">if</span>.(result). |
| 715a0 | 7c 6e 75 6d 62 65 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 77 61 72 6e 28 3c 73 70 61 6e 20 63 6c | |number|.{.........warn(<span.cl |
| 715c0 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 67 6f 74 20 6e 75 6d 62 65 72 3a 20 | ass="tok-str">"got.number:. |
| 715e0 | 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 6e 75 6d 62 65 72 29 3b 0a 20 20 20 20 | {}\n"</span>,.number);..... |
| 71600 | 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 |
| 71620 | 6e 3e 20 7c 65 72 72 7c 20 7b 0a 20 20 20 20 20 20 20 20 77 61 72 6e 28 3c 73 70 61 6e 20 63 6c | n>.|err|.{.........warn(<span.cl |
| 71640 | 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 72 72 6f 72 3a 20 7b | ass="tok-str">"got.error:.{ |
| 71660 | 7d 5c 6e 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 | }\n"</span>,.<span.class="t |
| 71680 | 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 65 72 72 6f 72 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 65 72 | ok-builtin">@errorName</span>(er |
| 716a0 | 72 29 29 3b 0a 20 20 20 20 7d 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | r));.....}.}..<span.class="tok-k |
| 716c0 | 77 22 3e 66 6e 3c 2f 73 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 |
| 716e0 | 22 3e 67 65 74 4e 75 6d 62 65 72 4f 72 46 61 69 6c 3c 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 | ">getNumberOrFail</span>().!<spa |
| 71700 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a | n.class="tok-type">i32</span>.{. |
| 71720 | 20 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< |
| 71740 | 2f 73 70 61 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 |
| 71760 | 72 3c 2f 73 70 61 6e 3e 2e 55 6e 61 62 6c 65 54 6f 52 65 74 75 72 6e 4e 75 6d 62 65 72 3b 0a 7d | r</span>.UnableToReturnNumber;.} |
| 71780 | 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 |
| 717a0 | 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 0a 24 | hell">$.zig.build-exe.test.zig.$ |
| 717c0 | 20 2e 2f 74 65 73 74 0a 67 6f 74 20 65 72 72 6f 72 3a 20 55 6e 61 62 6c 65 54 6f 52 65 74 75 72 | ../test.got.error:.UnableToRetur |
| 717e0 | 6e 4e 75 6d 62 65 72 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 | nNumber.</code></pre>........<p> |
| 71800 | 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="# |
| 71820 | 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>... |
| 71840 | 20 20 20 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 72 72 6f | ............<h2.id="Invalid-Erro |
| 71860 | 72 2d 43 6f 64 65 22 3e 49 6e 76 61 6c 69 64 20 45 72 72 6f 72 20 43 6f 64 65 3c 2f 68 32 3e 0a | r-Code">Invalid.Error.Code</h2>. |
| 71880 | 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>.. |
| 718a0 | 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 |
| 718c0 | 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 |
| 718e0 | 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>.{.. |
| 71900 | 20 20 20 3c 73 70 61 6e 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 |
| 71920 | 70 61 6e 3e 20 65 72 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pan>.err.=.<span.class="tok-kw"> |
| 71940 | 65 72 72 6f 72 3c 2f 73 70 61 6e 3e 2e 41 6e 45 72 72 6f 72 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | error</span>.AnError;.....<span. |
| 71960 | 63 6c 61 73 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 |
| 71980 | 65 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 | er.=.<span.class="tok-builtin">@ |
| 719a0 | 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 63 | errorToInt</span>(err).+.<span.c |
| 719c0 | 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 20 | lass="tok-number">10</span>;.... |
| 719e0 | 20 3c 73 70 61 6e 20 63 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 |
| 71a00 | 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 6f | n>.invalid_err.=.<span.class="to |
| 71a20 | 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 75 | k-builtin">@intToError</span>(nu |
| 71a40 | 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 20 | mber);.}</code></pre><pre><code. |
| 71a60 | 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 |
| 71a80 | 67 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f | g.<span.class="t0_1">/home/andy/ |
| 71aa0 | 64 65 76 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 35 | dev/zig/docgen_tmp/test.zig:4:25 |
| 71ac0 | 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 |
| 71ae0 | 6f 72 3a 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 20 69 6e | or:</span><span.class="t0_1">.in |
| 71b00 | 74 65 67 65 72 20 76 61 6c 75 65 20 31 31 20 72 65 70 72 65 73 65 6e 74 73 20 6e 6f 20 65 72 72 | teger.value.11.represents.no.err |
| 71b20 | 6f 72 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 69 6e 76 61 6c 69 64 5f 65 72 72 20 | or</span>.....const.invalid_err. |
| 71b40 | 3d 20 40 69 6e 74 54 6f 45 72 72 6f 72 28 6e 75 6d 62 65 72 29 3b 0a 20 20 20 20 20 20 20 20 20 | =.@intToError(number);.......... |
| 71b60 | 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_ |
| 71b80 | 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>....... |
| 71ba0 | 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 |
| 71bc0 | 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 |
| 71be0 | 20 63 6c 61 73 73 3d 22 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 |
| 71c00 | 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 |
| 71c20 | 3d 22 74 6f 6b 2d 62 75 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 |
| 71c40 | 70 61 6e 20 63 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 |
| 71c60 | 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 |
| 71c80 | 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 |
| 71ca0 | 77 22 3e 66 6e 3c 2f 73 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 |
| 71cc0 | 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 |
| 71ce0 | 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 |
| 71d00 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 65 72 72 20 3d 20 3c | lass="tok-kw">var</span>.err.=.< |
| 71d20 | 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> |
| 71d40 | 2e 41 6e 45 72 72 6f 72 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | .AnError;.....<span.class="tok-k |
| 71d60 | 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 6e 75 6d 62 65 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | w">var</span>.number.=.<span.cla |
| 71d80 | 73 73 3d 22 74 6f 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 | ss="tok-builtin">@errorToInt</sp |
| 71da0 | 61 6e 3e 28 65 72 72 29 20 2b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 | an>(err).+.<span.class="tok-numb |
| 71dc0 | 65 72 22 3e 35 30 30 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | er">500</span>;.....<span.class= |
| 71de0 | 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 69 6e 76 61 6c 69 64 5f 65 72 72 20 | "tok-kw">var</span>.invalid_err. |
| 71e00 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 | =.<span.class="tok-builtin">@int |
| 71e20 | 54 6f 45 72 72 6f 72 3c 2f 73 70 61 6e 3e 28 6e 75 6d 62 65 72 29 3b 0a 20 20 20 20 73 74 64 2e | ToError</span>(number);.....std. |
| 71e40 | 64 65 62 75 67 2e 77 61 72 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 | debug.warn(<span.class="tok-str" |
| 71e60 | 3e 26 71 75 6f 74 3b 76 61 6c 75 65 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c | >"value:.{}\n"</span>, |
| 71e80 | 20 6e 75 6d 62 65 72 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f | .number);.}</code></pre><pre><co |
| 71ea0 | 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 |
| 71ec0 | 20 74 65 73 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 | .test.zig.$../test.invalid.error |
| 71ee0 | 20 63 6f 64 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 | .code.<span.class="t37_1">/home/ |
| 71f00 | 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 | andy/dev/zig/docgen_tmp/test.zig |
| 71f20 | 3a 36 3a 32 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 | :6:23</span>:.<span.class="t2_0" |
| 71f40 | 3e 30 78 32 32 32 37 31 61 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 | >0x22271a.in.???.(test)</span>.. |
| 71f60 | 20 20 20 76 61 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 | ...var.invalid_err.=.@intToError |
| 71f80 | 28 6e 75 6d 62 65 72 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | (number);....................... |
| 71fa0 | 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 |
| 71fc0 | 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 64 65 76 2f | an.class="t37_1">/home/andy/dev/ |
| 71fe0 | 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f | zig/build/lib/zig/std/special/bo |
| 72000 | 6f 74 73 74 72 61 70 2e 7a 69 67 3a 38 36 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 | otstrap.zig:86:22</span>:.<span. |
| 72020 | 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 36 61 39 20 69 6e 20 3f 3f 3f 20 28 74 65 | class="t2_0">0x2226a9.in.???.(te |
| 72040 | 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 6f 74 2e 6d 61 69 6e | st)</span>.............root.main |
| 72060 | 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 | ();......................<span.c |
| 72080 | 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 |
| 720a0 | 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 | s="t37_1">/home/andy/dev/zig/bui |
| 720c0 | 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 | ld/lib/zig/std/special/bootstrap |
| 720e0 | 2e 7a 69 67 3a 37 30 3a 32 30 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .zig:70:20</span>:.<span.class=" |
| 72100 | 74 32 5f 30 22 3e 30 78 32 32 32 36 35 35 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 | t2_0">0x222655.in.???.(test)</sp |
| 72120 | 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 63 61 6c 6c 4d 61 69 6e 28 29 3b 0a 20 20 20 20 20 | an>.....return.callMain();...... |
| 72140 | 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 |
| 72160 | 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">/ |
| 72180 | 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f | home/andy/dev/zig/build/lib/zig/ |
| 721a0 | 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 36 34 3a 33 39 3c | std/special/bootstrap.zig:64:39< |
| 721c0 | 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 | /span>:.<span.class="t2_0">0x222 |
| 721e0 | 34 62 38 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 74 64 | 4b8.in.???.(test)</span>.....std |
| 72200 | 2e 6f 73 2e 70 6f 73 69 78 2e 65 78 69 74 28 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 28 | .os.posix.exit(callMainWithArgs( |
| 72220 | 61 72 67 63 2c 20 61 72 67 76 2c 20 65 6e 76 70 29 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 | argc,.argv,.envp));............. |
| 72240 | 20 20 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. |
| 72260 | 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 |
| 72280 | 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 | ss="t37_1">/home/andy/dev/zig/bu |
| 722a0 | 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 | ild/lib/zig/std/special/bootstra |
| 722c0 | 70 2e 7a 69 67 3a 33 37 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | p.zig:37:5</span>:.<span.class=" |
| 722e0 | 74 32 5f 30 22 3e 30 78 32 32 32 33 37 30 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 | t2_0">0x222370.in.???.(test)</sp |
| 72300 | 61 6e 3e 0a 20 20 20 20 40 6e 6f 49 6e 6c 69 6e 65 43 61 6c 6c 28 70 6f 73 69 78 43 61 6c 6c 4d | an>.....@noInlineCall(posixCallM |
| 72320 | 61 69 6e 41 6e 64 45 78 69 74 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 | ainAndExit);.....<span.class="t3 |
| 72340 | 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>..... |
| 72360 | 20 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 | ..........<h2.id="Invalid-Enum-C |
| 72380 | 61 73 74 22 3e 49 6e 76 61 6c 69 64 20 45 6e 75 6d 20 43 61 73 74 3c 2f 68 32 3e 0a 0a 20 20 20 | ast">Invalid.Enum.Cast</h2>..... |
| 723a0 | 20 20 20 3c 70 3e 41 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 | ...<p>At.compile-time:</p>...... |
| 723c0 | 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 |
| 723e0 | 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= |
| 72400 | 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 |
| 72420 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 | n.class="tok-kw">enum</span>.{.. |
| 72440 | 20 20 20 41 2c 0a 20 20 20 20 42 2c 0a 20 20 20 20 43 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c 61 | ...A,.....B,.....C,.};.<span.cla |
| 72460 | 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>.{... |
| 72480 | 20 20 3c 73 70 61 6e 20 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 |
| 724a0 | 61 6e 3e 20 61 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 32 | an>.a:.<span.class="tok-type">u2 |
| 724c0 | 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 |
| 724e0 | 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 |
| 72500 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 20 3d 20 3c 73 70 61 6e 20 63 6c 61 | k-kw">const</span>.b.=.<span.cla |
| 72520 | 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 69 6e 74 54 6f 45 6e 75 6d 3c 2f 73 70 61 | ss="tok-builtin">@intToEnum</spa |
| 72540 | 6e 3e 28 46 6f 6f 2c 20 61 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c | n>(Foo,.a);.}</code></pre><pre>< |
| 72560 | 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 |
| 72580 | 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 2f 68 6f 6d 65 2f | st.zig.<span.class="t0_1">/home/ |
| 725a0 | 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 67 | andy/dev/zig/docgen_tmp/test.zig |
| 725c0 | 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 31 5f 31 | :8:15:.</span><span.class="t31_1 |
| 725e0 | 22 3e 65 72 72 6f 72 3a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 | ">error:</span><span.class="t0_1 |
| 72600 | 22 3e 20 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 68 69 6e | ">.enum.'Foo'.has.no.tag.matchin |
| 72620 | 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 63 6f 6e | g.integer.value.3</span>.....con |
| 72640 | 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 20 20 20 | st.b.=.@intToEnum(Foo,.a);...... |
| 72660 | 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">^</ |
| 72680 | 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 2f 68 6f 6d 65 2f 61 | span>.<span.class="t0_1">/home/a |
| 726a0 | 6e 64 79 2f 64 65 76 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 | ndy/dev/zig/docgen_tmp/test.zig: |
| 726c0 | 31 3a 31 33 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 36 5f 31 22 | 1:13:.</span><span.class="t36_1" |
| 726e0 | 3e 6e 6f 74 65 3a 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"> |
| 72700 | 20 27 46 6f 6f 27 20 64 65 63 6c 61 72 65 64 20 68 65 72 65 3c 2f 73 70 61 6e 3e 0a 63 6f 6e 73 | .'Foo'.declared.here</span>.cons |
| 72720 | 74 20 46 6f 6f 20 3d 20 65 6e 75 6d 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e | t.Foo.=.enum.{.............<span |
| 72740 | 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 3e 3c | .class="t32_1">^</span>.</code>< |
| 72760 | 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 72 75 6e 74 69 6d 65 3a 3c 2f 70 3e 0a | /pre>........<p>At.runtime:</p>. |
| 72780 | 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</ |
| 727a0 | 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 |
| 727c0 | 6c 61 73 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.= |
| 727e0 | 20 3c 73 70 61 6e 20 63 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 |
| 72800 | 72 74 3c 2f 73 70 61 6e 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"> |
| 72820 | 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. |
| 72840 | 63 6c 61 73 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. |
| 72860 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 | =.<span.class="tok-kw">enum</spa |
| 72880 | 6e 3e 20 7b 0a 20 20 20 20 41 2c 0a 20 20 20 20 42 2c 0a 20 20 20 20 43 2c 0a 7d 3b 0a 0a 3c 73 | n>.{.....A,.....B,.....C,.};..<s |
| 728a0 | 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 |
| 728c0 | 70 61 6e 20 63 6c 61 73 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 |
| 728e0 | 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>(). |
| 72900 | 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 |
| 72920 | 6e 3e 20 7b 0a 20 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 |
| 72940 | 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 |
| 72960 | 65 22 3e 75 32 3c 2f 73 70 61 6e 3e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | e">u2</span>.=.<span.class="tok- |
| 72980 | 6e 75 6d 62 65 72 22 3e 33 3c 2f 73 70 61 6e 3e 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | number">3</span>;.....<span.clas |
| 729a0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 62 20 3d 20 3c 73 70 61 6e 20 | s="tok-kw">var</span>.b.=.<span. |
| 729c0 | 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 45 6e 75 6d 3c 2f | class="tok-builtin">@intToEnum</ |
| 729e0 | 73 70 61 6e 3e 28 46 6f 6f 2c 20 61 29 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 77 61 72 | span>(Foo,.a);.....std.debug.war |
| 72a00 | 6e 28 3c 73 70 61 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 | n(<span.class="tok-str">"va |
| 72a20 | 6c 75 65 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c | lue:.{}\n"</span>,.<span.cl |
| 72a40 | 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 74 61 67 4e 61 6d 65 3c 2f 73 70 61 6e | ass="tok-builtin">@tagName</span |
| 72a60 | 3e 28 62 29 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 | >(b));.}</code></pre><pre><code. |
| 72a80 | 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 |
| 72aa0 | 73 74 2e 7a 69 67 0a 24 20 2e 2f 74 65 73 74 0a 69 6e 76 61 6c 69 64 20 65 6e 75 6d 20 76 61 6c | st.zig.$../test.invalid.enum.val |
| 72ac0 | 75 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 | ue.<span.class="t37_1">/home/and |
| 72ae0 | 79 2f 64 65 76 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 | y/dev/zig/docgen_tmp/test.zig:11 |
| 72b00 | 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 22 3e 30 | :13</span>:.<span.class="t2_0">0 |
| 72b20 | 78 32 32 32 36 66 64 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 | x2226fd.in.???.(test)</span>.... |
| 72b40 | 20 76 61 72 20 62 20 3d 20 40 69 6e 74 54 6f 45 6e 75 6d 28 46 6f 6f 2c 20 61 29 3b 0a 20 20 20 | .var.b.=.@intToEnum(Foo,.a);.... |
| 72b60 | 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">^</ |
| 72b80 | 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/ |
| 72ba0 | 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 | andy/dev/zig/build/lib/zig/std/s |
| 72bc0 | 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 38 36 3a 32 32 3c 2f 73 70 61 6e | pecial/bootstrap.zig:86:22</span |
| 72be0 | 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 36 61 39 20 69 | >:.<span.class="t2_0">0x2226a9.i |
| 72c00 | 6e 20 3f 3f 3f 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 | n.???.(test)</span>............. |
| 72c20 | 72 6f 6f 74 2e 6d 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | root.main();.................... |
| 72c40 | 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>.< |
| 72c60 | 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 64 65 | span.class="t37_1">/home/andy/de |
| 72c80 | 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f | v/zig/build/lib/zig/std/special/ |
| 72ca0 | 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 37 30 3a 32 30 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 | bootstrap.zig:70:20</span>:.<spa |
| 72cc0 | 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 36 35 35 20 69 6e 20 3f 3f 3f 20 28 | n.class="t2_0">0x222655.in.???.( |
| 72ce0 | 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 63 61 6c 6c 4d 61 69 6e | test)</span>.....return.callMain |
| 72d00 | 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | ();....................<span.cla |
| 72d20 | 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= |
| 72d40 | 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 | "t37_1">/home/andy/dev/zig/build |
| 72d60 | 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a | /lib/zig/std/special/bootstrap.z |
| 72d80 | 69 67 3a 36 34 3a 33 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 | ig:64:39</span>:.<span.class="t2 |
| 72da0 | 5f 30 22 3e 30 78 32 32 32 34 62 38 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e | _0">0x2224b8.in.???.(test)</span |
| 72dc0 | 3e 0a 20 20 20 20 73 74 64 2e 6f 73 2e 70 6f 73 69 78 2e 65 78 69 74 28 63 61 6c 6c 4d 61 69 6e | >.....std.os.posix.exit(callMain |
| 72de0 | 57 69 74 68 41 72 67 73 28 61 72 67 63 2c 20 61 72 67 76 2c 20 65 6e 76 70 29 29 3b 0a 20 20 20 | WithArgs(argc,.argv,.envp));.... |
| 72e00 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| 72e20 | 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>. |
| 72e40 | 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 64 | <span.class="t37_1">/home/andy/d |
| 72e60 | 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c | ev/zig/build/lib/zig/std/special |
| 72e80 | 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 33 37 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 | /bootstrap.zig:37:5</span>:.<spa |
| 72ea0 | 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 33 37 30 20 69 6e 20 3f 3f 3f 20 28 | n.class="t2_0">0x222370.in.???.( |
| 72ec0 | 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 6e 6f 49 6e 6c 69 6e 65 43 61 6c 6c 28 70 | test)</span>.....@noInlineCall(p |
| 72ee0 | 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 | osixCallMainAndExit);.....<span. |
| 72f00 | 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></ |
| 72f20 | 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 61 | pre>................<h2.id="Inva |
| 72f40 | 6c 69 64 2d 45 72 72 6f 72 2d 53 65 74 2d 43 61 73 74 22 3e 49 6e 76 61 6c 69 64 20 45 72 72 6f | lid-Error-Set-Cast">Invalid.Erro |
| 72f60 | 72 20 53 65 74 20 43 61 73 74 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 63 6f 6d | r.Set.Cast</h2>........<p>At.com |
| 72f80 | 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 |
| 72fa0 | 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 |
| 72fc0 | 73 3d 22 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 |
| 72fe0 | 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 |
| 73000 | 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 |
| 73020 | 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< |
| 73040 | 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 |
| 73060 | 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,.} |
| 73080 | 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< |
| 730a0 | 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 |
| 730c0 | 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 |
| 730e0 | 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> |
| 73100 | 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 |
| 73120 | 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 2f 68 6f 6d 65 | est.zig.<span.class="t0_1">/home |
| 73140 | 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 74 2e 7a 69 | /andy/dev/zig/docgen_tmp/test.zi |
| 73160 | 67 3a 31 30 3a 39 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 31 5f | g:10:9:.</span><span.class="t31_ |
| 73180 | 31 22 3e 65 72 72 6f 72 3a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f | 1">error:</span><span.class="t0_ |
| 731a0 | 31 22 3e 20 65 72 72 6f 72 2e 42 20 6e 6f 74 20 61 20 6d 65 6d 62 65 72 20 6f 66 20 65 72 72 6f | 1">.error.B.not.a.member.of.erro |
| 731c0 | 72 20 73 65 74 20 27 53 65 74 32 27 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 5f 20 3d 20 40 65 72 72 | r.set.'Set2'</span>....._.=.@err |
| 731e0 | 53 65 74 43 61 73 74 28 53 65 74 32 2c 20 53 65 74 31 2e 42 29 3b 0a 20 20 20 20 20 20 20 20 3c | SetCast(Set2,.Set1.B);.........< |
| 73200 | 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 |
| 73220 | 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:< |
| 73240 | 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 |
| 73260 | 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 |
| 73280 | 61 6e 20 63 6c 61 73 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 |
| 732a0 | 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">@ |
| 732c0 | 69 6d 70 6f 72 74 3c 2f 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 |
| 732e0 | 74 72 22 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 |
| 73300 | 70 61 6e 20 63 6c 61 73 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>. |
| 73320 | 53 65 74 31 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f | Set1.=.<span.class="tok-kw">erro |
| 73340 | 72 3c 2f 73 70 61 6e 3e 7b 0a 20 20 20 20 41 2c 0a 20 20 20 20 42 2c 0a 7d 3b 0a 3c 73 70 61 6e | r</span>{.....A,.....B,.};.<span |
| 73360 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 53 65 74 | .class="tok-kw">const</span>.Set |
| 73380 | 32 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 72 72 6f 72 3c 2f | 2.=.<span.class="tok-kw">error</ |
| 733a0 | 73 70 61 6e 3e 7b 0a 20 20 20 20 41 2c 0a 20 20 20 20 43 2c 0a 7d 3b 0a 3c 73 70 61 6e 20 63 6c | span>{.....A,.....C,.};.<span.cl |
| 733c0 | 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 |
| 733e0 | 61 73 73 3d 22 74 6f 6b 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 |
| 73400 | 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. |
| 73420 | 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>.{.. |
| 73440 | 20 20 20 66 6f 6f 28 53 65 74 31 2e 42 29 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | ...foo(Set1.B);.}.<span.class="t |
| 73460 | 6f 6b 2d 6b 77 22 3e 66 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 |
| 73480 | 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 6e 3e 28 73 65 74 31 3a 20 53 65 74 31 29 20 3c 73 70 | k-fn">foo</span>(set1:.Set1).<sp |
| 734a0 | 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>. |
| 734c0 | 7b 0a 20 20 20 20 3c 73 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 |
| 734e0 | 3c 2f 73 70 61 6e 3e 20 78 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | </span>.x.=.<span.class="tok-bui |
| 73500 | 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 74 32 2c 20 73 | ltin">@errSetCast</span>(Set2,.s |
| 73520 | 65 74 31 29 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 77 61 72 6e 28 3c 73 70 61 6e 20 63 | et1);.....std.debug.warn(<span.c |
| 73540 | 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 61 6c 75 65 3a 20 7b 7d 5c 6e | lass="tok-str">"value:.{}\n |
| 73560 | 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 78 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 | "</span>,.x);.}</code></pre |
| 73580 | 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. |
| 735a0 | 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 69 6e 76 61 | build-exe.test.zig.$../test.inva |
| 735c0 | 6c 69 64 20 65 72 72 6f 72 20 63 6f 64 65 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 37 5f | lid.error.code.<span.class="t37_ |
| 735e0 | 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 | 1">/home/andy/dev/zig/docgen_tmp |
| 73600 | 2f 74 65 73 74 2e 7a 69 67 3a 31 35 3a 31 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c | /test.zig:15:15</span>:.<span.cl |
| 73620 | 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 37 32 34 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 | ass="t2_0">0x222724.in.???.(test |
| 73640 | 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 63 6f 6e 73 74 20 78 20 3d 20 40 65 72 72 53 65 74 43 61 | )</span>.....const.x.=.@errSetCa |
| 73660 | 73 74 28 53 65 74 32 2c 20 73 65 74 31 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c 73 | st(Set2,.set1);...............<s |
| 73680 | 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 |
| 736a0 | 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 64 65 76 2f 7a 69 | .class="t37_1">/home/andy/dev/zi |
| 736c0 | 67 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 | g/docgen_tmp/test.zig:12:8</span |
| 736e0 | 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 36 63 65 20 69 | >:.<span.class="t2_0">0x2226ce.i |
| 73700 | 6e 20 3f 3f 3f 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 | n.???.(test)</span>.....foo(Set1 |
| 73720 | 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"> |
| 73740 | 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 |
| 73760 | 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 | me/andy/dev/zig/build/lib/zig/st |
| 73780 | 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 38 36 3a 32 32 3c 2f 73 | d/special/bootstrap.zig:86:22</s |
| 737a0 | 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 36 61 | pan>:.<span.class="t2_0">0x2226a |
| 737c0 | 39 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 | 9.in.???.(test)</span>.......... |
| 737e0 | 20 20 20 72 6f 6f 74 2e 6d 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ...root.main();................. |
| 73800 | 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 |
| 73820 | 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 |
| 73840 | 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 | /dev/zig/build/lib/zig/std/speci |
| 73860 | 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 37 30 3a 32 30 3c 2f 73 70 61 6e 3e 3a 20 3c | al/bootstrap.zig:70:20</span>:.< |
| 73880 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 36 35 35 20 69 6e 20 3f 3f | span.class="t2_0">0x222655.in.?? |
| 738a0 | 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 63 61 6c 6c 4d | ?.(test)</span>.....return.callM |
| 738c0 | 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 3c 73 70 61 6e 20 | ain();....................<span. |
| 738e0 | 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 |
| 73900 | 73 73 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 | ss="t37_1">/home/andy/dev/zig/bu |
| 73920 | 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 | ild/lib/zig/std/special/bootstra |
| 73940 | 70 2e 7a 69 67 3a 36 34 3a 33 39 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | p.zig:64:39</span>:.<span.class= |
| 73960 | 22 74 32 5f 30 22 3e 30 78 32 32 32 34 62 38 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 | "t2_0">0x2224b8.in.???.(test)</s |
| 73980 | 70 61 6e 3e 0a 20 20 20 20 73 74 64 2e 6f 73 2e 70 6f 73 69 78 2e 65 78 69 74 28 63 61 6c 6c 4d | pan>.....std.os.posix.exit(callM |
| 739a0 | 61 69 6e 57 69 74 68 41 72 67 73 28 61 72 67 63 2c 20 61 72 67 76 2c 20 65 6e 76 70 29 29 3b 0a | ainWithArgs(argc,.argv,.envp));. |
| 739c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| 739e0 | 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 |
| 73a00 | 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 |
| 73a20 | 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 | y/dev/zig/build/lib/zig/std/spec |
| 73a40 | 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 33 37 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c | ial/bootstrap.zig:37:5</span>:.< |
| 73a60 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 33 37 30 20 69 6e 20 3f 3f | span.class="t2_0">0x222370.in.?? |
| 73a80 | 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 6e 6f 49 6e 6c 69 6e 65 43 61 6c | ?.(test)</span>.....@noInlineCal |
| 73aa0 | 6c 28 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 29 3b 0a 20 20 20 20 3c 73 70 | l(posixCallMainAndExit);.....<sp |
| 73ac0 | 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f 31 22 3e 5e 3c 2f 73 70 61 6e 3e 0a 3c 2f 63 6f 64 65 | an.class="t32_1">^</span>.</code |
| 73ae0 | 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 49 | ></pre>................<h2.id="I |
| 73b00 | 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 49 6e 63 6f | ncorrect-Pointer-Alignment">Inco |
| 73b20 | 72 72 65 63 74 20 50 6f 69 6e 74 65 72 20 41 6c 69 67 6e 6d 65 6e 74 3c 2f 68 32 3e 0a 0a 20 20 | rrect.Pointer.Alignment</h2>.... |
| 73b40 | 20 20 20 20 3c 70 3e 41 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 | ....<p>At.compile-time:</p>..... |
| 73b60 | 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 |
| 73b80 | 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 |
| 73ba0 | 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>.{..... |
| 73bc0 | 3c 73 70 61 6e 20 63 6c 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 |
| 73be0 | 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 |
| 73c00 | 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 73 3d | ">@intToPtr</span>(*<span.class= |
| 73c20 | 22 74 6f 6b 2d 74 79 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 | "tok-type">i32</span>,.<span.cla |
| 73c40 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 78 31 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 | ss="tok-number">0x1</span>);.... |
| 73c60 | 20 3c 73 70 61 6e 20 63 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 |
| 73c80 | 6e 3e 20 61 6c 69 67 6e 65 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 | n>.aligned.=.<span.class="tok-bu |
| 73ca0 | 69 6c 74 69 6e 22 3e 40 61 6c 69 67 6e 43 61 73 74 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 | iltin">@alignCast</span>(<span.c |
| 73cc0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 3c 2f 73 70 61 6e 3e 2c 20 70 74 72 29 | lass="tok-number">4</span>,.ptr) |
| 73ce0 | 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 |
| 73d00 | 3d 22 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 74 65 73 74 20 74 65 73 74 2e 7a 69 67 0a 3c 73 70 | ="shell">$.zig.test.test.zig.<sp |
| 73d20 | 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a | an.class="t0_1">/home/andy/dev/z |
| 73d40 | 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 33 35 3a 20 3c 2f 73 | ig/docgen_tmp/test.zig:3:35:.</s |
| 73d60 | 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 3c 2f | pan><span.class="t31_1">error:</ |
| 73d80 | 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 30 5f 31 22 3e 20 70 6f 69 6e 74 65 72 | span><span.class="t0_1">.pointer |
| 73da0 | 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 34 | .address.0x1.is.not.aligned.to.4 |
| 73dc0 | 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 20 | .bytes</span>.....const.aligned. |
| 73de0 | 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 20 | =.@alignCast(4,.ptr);........... |
| 73e00 | 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 |
| 73e20 | 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 |
| 73e40 | 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>.... |
| 73e60 | 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>< |
| 73e80 | 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 |
| 73ea0 | 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 |
| 73ec0 | 73 3d 22 74 6f 6b 2d 6b 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 |
| 73ee0 | 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 21 3c 73 70 61 6e 20 63 | ="tok-fn">main</span>().!<span.c |
| 73f00 | 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>.{... |
| 73f20 | 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 |
| 73f40 | 3e 20 61 72 72 61 79 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 61 6c 69 | >.array.<span.class="tok-kw">ali |
| 73f60 | 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 |
| 73f80 | 72 22 3e 34 3c 2f 73 70 61 6e 3e 29 20 3d 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | r">4</span>).=.[]<span.class="to |
| 73fa0 | 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= |
| 73fc0 | 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>,. |
| 73fe0 | 3c 73 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 |
| 74000 | 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 |
| 74020 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 79 74 65 73 20 3d 20 3c 73 70 61 | ok-kw">const</span>.bytes.=.<spa |
| 74040 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 73 6c 69 63 65 54 6f 42 79 | n.class="tok-builtin">@sliceToBy |
| 74060 | 74 65 73 3c 2f 73 70 61 6e 3e 28 61 72 72 61 79 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | tes</span>(array[<span.class="to |
| 74080 | 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 70 61 | k-number">0</span>..]);.....<spa |
| 740a0 | 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 28 | n.class="tok-kw">if</span>.(foo( |
| 740c0 | 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 62 65 | bytes).!=.<span.class="tok-numbe |
| 740e0 | 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 61 73 | r">0x11111111</span>).<span.clas |
| 74100 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 | s="tok-kw">return</span>.<span.c |
| 74120 | 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 6e 67 | lass="tok-kw">error</span>.Wrong |
| 74140 | 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 61 | ;.}.<span.class="tok-kw">fn</spa |
| 74160 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 6f 6f 3c 2f 73 70 61 | n>.<span.class="tok-fn">foo</spa |
| 74180 | 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 79 70 | n>(bytes:.[]<span.class="tok-typ |
| 741a0 | 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 |
| 741c0 | 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | ype">u32</span>.{.....<span.clas |
| 741e0 | 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 20 3d | s="tok-kw">const</span>.slice4.= |
| 74200 | 20 62 79 74 65 73 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | .bytes[<span.class="tok-number"> |
| 74220 | 31 3c 2f 73 70 61 6e 3e 2e 2e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 | 1</span>..<span.class="tok-numbe |
| 74240 | 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 22 74 | r">5</span>];.....<span.class="t |
| 74260 | 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 3d 20 | ok-kw">const</span>.int_slice.=. |
| 74280 | 3c 73 70 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 73 | <span.class="tok-builtin">@bytes |
| 742a0 | 54 6f 53 6c 69 63 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 | ToSlice</span>(<span.class="tok- |
| 742c0 | 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | type">u32</span>,.<span.class="t |
| 742e0 | 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 3e 28 3c 73 | ok-builtin">@alignCast</span>(<s |
| 74300 | 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 2c | pan.class="tok-number">4</span>, |
| 74320 | 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 74 6f 6b 2d | .slice4));.....<span.class="tok- |
| 74340 | 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 69 6e 74 5f 73 6c 69 63 65 5b 3c 73 70 61 | kw">return</span>.int_slice[<spa |
| 74360 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 5d 3b 0a | n.class="tok-number">0</span>];. |
| 74380 | 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=" |
| 743a0 | 73 68 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 0a | shell">$.zig.build-exe.test.zig. |
| 743c0 | 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 0a 3c 73 70 | $../test.incorrect.alignment.<sp |
| 743e0 | 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 64 65 76 2f | an.class="t37_1">/home/andy/dev/ |
| 74400 | 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 35 36 3c 2f 73 70 | zig/docgen_tmp/test.zig:8:56</sp |
| 74420 | 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 39 66 66 | an>:.<span.class="t2_0">0x2229ff |
| 74440 | 20 69 6e 20 3f 3f 3f 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 | .in.???.(test)</span>.....const. |
| 74460 | 69 6e 74 5f 73 6c 69 63 65 20 3d 20 40 62 79 74 65 73 54 6f 53 6c 69 63 65 28 75 33 32 2c 20 40 | int_slice.=.@bytesToSlice(u32,.@ |
| 74480 | 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 20 20 20 20 | alignCast(4,.slice4));.......... |
| 744a0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| 744c0 | 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 |
| 744e0 | 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">/ |
| 74500 | 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 65 73 | home/andy/dev/zig/docgen_tmp/tes |
| 74520 | 74 2e 7a 69 67 3a 34 3a 31 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | t.zig:4:12</span>:.<span.class=" |
| 74540 | 74 32 5f 30 22 3e 30 78 32 32 32 38 33 65 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 | t2_0">0x22283e.in.???.(test)</sp |
| 74560 | 61 6e 3e 0a 20 20 20 20 69 66 20 28 66 6f 6f 28 62 79 74 65 73 29 20 21 3d 20 30 78 31 31 31 31 | an>.....if.(foo(bytes).!=.0x1111 |
| 74580 | 31 31 31 31 29 20 72 65 74 75 72 6e 20 65 72 72 6f 72 2e 57 72 6f 6e 67 3b 0a 20 20 20 20 20 20 | 1111).return.error.Wrong;....... |
| 745a0 | 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 |
| 745c0 | 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 |
| 745e0 | 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 | /dev/zig/build/lib/zig/std/speci |
| 74600 | 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 39 36 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c | al/bootstrap.zig:96:22</span>:.< |
| 74620 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 36 64 62 20 69 6e 20 3f 3f | span.class="t2_0">0x2226db.in.?? |
| 74640 | 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 6f 74 | ?.(test)</span>.............root |
| 74660 | 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|.{........... |
| 74680 | 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">^ |
| 746a0 | 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 |
| 746c0 | 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 | e/andy/dev/zig/build/lib/zig/std |
| 746e0 | 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 37 30 3a 32 30 3c 2f 73 70 | /special/bootstrap.zig:70:20</sp |
| 74700 | 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 36 35 35 | an>:.<span.class="t2_0">0x222655 |
| 74720 | 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 72 65 74 75 72 6e | .in.???.(test)</span>.....return |
| 74740 | 20 63 61 6c 6c 4d 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 | .callMain();.................... |
| 74760 | 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 |
| 74780 | 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 64 65 76 2f | an.class="t37_1">/home/andy/dev/ |
| 747a0 | 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f | zig/build/lib/zig/std/special/bo |
| 747c0 | 6f 74 73 74 72 61 70 2e 7a 69 67 3a 36 34 3a 33 39 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 | otstrap.zig:64:39</span>:.<span. |
| 747e0 | 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 34 62 38 20 69 6e 20 3f 3f 3f 20 28 74 65 | class="t2_0">0x2224b8.in.???.(te |
| 74800 | 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 74 64 2e 6f 73 2e 70 6f 73 69 78 2e 65 78 69 74 | st)</span>.....std.os.posix.exit |
| 74820 | 28 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 28 61 72 67 63 2c 20 61 72 67 76 2c 20 65 6e | (callMainWithArgs(argc,.argv,.en |
| 74840 | 76 70 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 | vp));........................... |
| 74860 | 20 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"> |
| 74880 | 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 |
| 748a0 | 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 | me/andy/dev/zig/build/lib/zig/st |
| 748c0 | 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 33 37 3a 35 3c 2f 73 70 | d/special/bootstrap.zig:37:5</sp |
| 748e0 | 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 32 33 37 30 | an>:.<span.class="t2_0">0x222370 |
| 74900 | 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 40 6e 6f 49 6e 6c | .in.???.(test)</span>.....@noInl |
| 74920 | 69 6e 65 43 61 6c 6c 28 70 6f 73 69 78 43 61 6c 6c 4d 61 69 6e 41 6e 64 45 78 69 74 29 3b 0a 20 | ineCall(posixCallMainAndExit);.. |
| 74940 | 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>. |
| 74960 | 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. |
| 74980 | 69 64 3d 22 57 72 6f 6e 67 2d 55 6e 69 6f 6e 2d 46 69 65 6c 64 2d 41 63 63 65 73 73 22 3e 57 72 | id="Wrong-Union-Field-Access">Wr |
| 749a0 | 6f 6e 67 20 55 6e 69 6f 6e 20 46 69 65 6c 64 20 41 63 63 65 73 73 3c 2f 68 32 3e 0a 0a 20 20 20 | ong.Union.Field.Access</h2>..... |
| 749c0 | 20 20 20 3c 70 3e 41 74 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 | ...<p>At.compile-time:</p>...... |
| 749e0 | 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 |
| 74a00 | 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= |
| 74a20 | 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c | "tok-kw">comptime</span>.{.....< |
| 74a40 | 73 70 61 6e 20 63 6c 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 | span.class="tok-kw">var</span>.f |
| 74a60 | 20 3d 20 46 6f 6f 7b 20 2e 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .=.Foo{..int.=.<span.class="tok- |
| 74a80 | 6e 75 6d 62 65 72 22 3e 34 32 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 66 2e 66 6c 6f 61 74 | number">42</span>.};.....f.float |
| 74aa0 | 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 32 2e 33 | .=.<span.class="tok-number">12.3 |
| 74ac0 | 34 3c 2f 73 70 61 6e 3e 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | 4</span>;.}..<span.class="tok-kw |
| 74ae0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 6f 6f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ">const</span>.Foo.=.<span.class |
| 74b00 | 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 66 6c 6f | ="tok-kw">union</span>.{.....flo |
| 74b20 | 61 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 32 3c 2f | at:.<span.class="tok-type">f32</ |
| 74b40 | 73 70 61 6e 3e 2c 0a 20 20 20 20 69 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | span>,.....int:.<span.class="tok |
| 74b60 | 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | -type">u32</span>,.};</code></pr |
| 74b80 | 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 |
| 74ba0 | 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 |
| 74bc0 | 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f | ">/home/andy/dev/zig/docgen_tmp/ |
| 74be0 | 74 65 73 74 2e 7a 69 67 3a 33 3a 36 3a 20 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | test.zig:3:6:.</span><span.class |
| 74c00 | 3d 22 74 33 31 5f 31 22 3e 65 72 72 6f 72 3a 3c 2f 73 70 61 6e 3e 3c 73 70 61 6e 20 63 6c 61 73 | ="t31_1">error:</span><span.clas |
| 74c20 | 73 3d 22 74 30 5f 31 22 3e 20 61 63 63 65 73 73 69 6e 67 20 75 6e 69 6f 6e 20 66 69 65 6c 64 20 | s="t0_1">.accessing.union.field. |
| 74c40 | 27 66 6c 6f 61 74 27 20 77 68 69 6c 65 20 66 69 65 6c 64 20 27 69 6e 74 27 20 69 73 20 73 65 74 | 'float'.while.field.'int'.is.set |
| 74c60 | 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 66 2e 66 6c 6f 61 74 20 3d 20 31 32 2e 33 34 3b 0a 20 20 20 | </span>.....f.float.=.12.34;.... |
| 74c80 | 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>.< |
| 74ca0 | 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 41 74 20 72 75 6e 74 69 6d | /code></pre>........<p>At.runtim |
| 74cc0 | 65 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 | e:</p>.......<p.class="file">tes |
| 74ce0 | 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"> |
| 74d00 | 3c 73 70 61 6e 20 63 6c 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 |
| 74d20 | 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 |
| 74d40 | 22 3e 40 69 6d 70 6f 72 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 |
| 74d60 | 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>);. |
| 74d80 | 0a 3c 73 70 61 6e 20 63 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 |
| 74da0 | 6e 3e 20 46 6f 6f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e | n>.Foo.=.<span.class="tok-kw">un |
| 74dc0 | 69 6f 6e 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 66 6c 6f 61 74 3a 20 3c 73 70 61 6e 20 63 6c | ion</span>.{.....float:.<span.cl |
| 74de0 | 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 69 | ass="tok-type">f32</span>,.....i |
| 74e00 | 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f | nt:.<span.class="tok-type">u32</ |
| 74e20 | 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"> |
| 74e40 | 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"> |
| 74e60 | 66 6e 3c 2f 73 70 61 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 |
| 74e80 | 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 |
| 74ea0 | 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 |
| 74ec0 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 66 20 3d 20 46 6f 6f 7b 20 2e | s="tok-kw">var</span>.f.=.Foo{.. |
| 74ee0 | 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 34 | int.=.<span.class="tok-number">4 |
| 74f00 | 32 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 62 61 72 28 26 61 6d 70 3b 66 29 3b 0a 7d 0a 0a | 2</span>.};.....bar(&f);.}.. |
| 74f20 | 3c 73 70 61 6e 20 63 6c 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>.< |
| 74f40 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 62 61 72 3c 2f 73 70 61 6e 3e 28 66 | span.class="tok-fn">bar</span>(f |
| 74f60 | 3a 20 2a 46 6f 6f 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 | :.*Foo).<span.class="tok-type">v |
| 74f80 | 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 66 2e 66 6c 6f 61 74 20 3d 20 3c 73 70 61 6e | oid</span>.{.....f.float.=.<span |
| 74fa0 | 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> |
| 74fc0 | 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 77 61 72 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | ;.....std.debug.warn(<span.class |
| 74fe0 | 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 |
| 75000 | 74 3b 3c 2f 73 70 61 6e 3e 2c 20 66 2e 66 6c 6f 61 74 29 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 | t;</span>,.f.float);.}</code></p |
| 75020 | 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 |
| 75040 | 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 61 63 | g.build-exe.test.zig.$../test.ac |
| 75060 | 63 65 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 | cess.of.inactive.union.field.<sp |
| 75080 | 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 64 65 76 2f | an.class="t37_1">/home/andy/dev/ |
| 750a0 | 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 34 3a 36 3c 2f 73 70 | zig/docgen_tmp/test.zig:14:6</sp |
| 750c0 | 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 61 37 33 38 | an>:.<span.class="t2_0">0x22a738 |
| 750e0 | 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 66 2e 66 6c 6f 61 | .in.???.(test)</span>.....f.floa |
| 75100 | 74 20 3d 20 31 32 2e 33 34 3b 0a 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 | t.=.12.34;......<span.class="t32 |
| 75120 | 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" |
| 75140 | 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 64 6f 63 67 65 6e 5f 74 6d 70 2f 74 | >/home/andy/dev/zig/docgen_tmp/t |
| 75160 | 65 73 74 2e 7a 69 67 3a 31 30 3a 38 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | est.zig:10:8</span>:.<span.class |
| 75180 | 3d 22 74 32 5f 30 22 3e 30 78 32 32 61 36 64 63 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f | ="t2_0">0x22a6dc.in.???.(test)</ |
| 751a0 | 73 70 61 6e 3e 0a 20 20 20 20 62 61 72 28 26 61 6d 70 3b 66 29 3b 0a 20 20 20 20 20 20 20 3c 73 | span>.....bar(&f);........<s |
| 751c0 | 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 |
| 751e0 | 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 64 65 76 2f 7a 69 | .class="t37_1">/home/andy/dev/zi |
| 75200 | 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 | g/build/lib/zig/std/special/boot |
| 75220 | 73 74 72 61 70 2e 7a 69 67 3a 38 36 3a 32 32 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c | strap.zig:86:22</span>:.<span.cl |
| 75240 | 61 73 73 3d 22 74 32 5f 30 22 3e 30 78 32 32 61 36 61 39 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 | ass="t2_0">0x22a6a9.in.???.(test |
| 75260 | 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() |
| 75280 | 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 |
| 752a0 | 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= |
| 752c0 | 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 | "t37_1">/home/andy/dev/zig/build |
| 752e0 | 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a | /lib/zig/std/special/bootstrap.z |
| 75300 | 69 67 3a 37 30 3a 32 30 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 | ig:70:20</span>:.<span.class="t2 |
| 75320 | 5f 30 22 3e 30 78 32 32 61 36 35 35 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e | _0">0x22a655.in.???.(test)</span |
| 75340 | 3e 0a 20 20 20 20 72 65 74 75 72 6e 20 63 61 6c 6c 4d 61 69 6e 28 29 3b 0a 20 20 20 20 20 20 20 | >.....return.callMain();........ |
| 75360 | 20 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"> |
| 75380 | 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 |
| 753a0 | 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 | me/andy/dev/zig/build/lib/zig/st |
| 753c0 | 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e 7a 69 67 3a 36 34 3a 33 39 3c 2f 73 | d/special/bootstrap.zig:64:39</s |
| 753e0 | 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 61 34 62 | pan>:.<span.class="t2_0">0x22a4b |
| 75400 | 38 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e 3e 0a 20 20 20 20 73 74 64 2e 6f | 8.in.???.(test)</span>.....std.o |
| 75420 | 73 2e 70 6f 73 69 78 2e 65 78 69 74 28 63 61 6c 6c 4d 61 69 6e 57 69 74 68 41 72 67 73 28 61 72 | s.posix.exit(callMainWithArgs(ar |
| 75440 | 67 63 2c 20 61 72 67 76 2c 20 65 6e 76 70 29 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | gc,.argv,.envp));............... |
| 75460 | 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 |
| 75480 | 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 |
| 754a0 | 3d 22 74 33 37 5f 31 22 3e 2f 68 6f 6d 65 2f 61 6e 64 79 2f 64 65 76 2f 7a 69 67 2f 62 75 69 6c | ="t37_1">/home/andy/dev/zig/buil |
| 754c0 | 64 2f 6c 69 62 2f 7a 69 67 2f 73 74 64 2f 73 70 65 63 69 61 6c 2f 62 6f 6f 74 73 74 72 61 70 2e | d/lib/zig/std/special/bootstrap. |
| 754e0 | 7a 69 67 3a 33 37 3a 35 3c 2f 73 70 61 6e 3e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 32 | zig:37:5</span>:.<span.class="t2 |
| 75500 | 5f 30 22 3e 30 78 32 32 61 33 37 30 20 69 6e 20 3f 3f 3f 20 28 74 65 73 74 29 3c 2f 73 70 61 6e | _0">0x22a370.in.???.(test)</span |
| 75520 | 3e 0a 20 20 20 20 40 6e 6f 49 6e 6c 69 6e 65 43 61 6c 6c 28 70 6f 73 69 78 43 61 6c 6c 4d 61 69 | >.....@noInlineCall(posixCallMai |
| 75540 | 6e 41 6e 64 45 78 69 74 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 33 32 5f | nAndExit);.....<span.class="t32_ |
| 75560 | 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>....... |
| 75580 | 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 |
| 755a0 | 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 |
| 755c0 | 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> |
| 755e0 | 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 |
| 75600 | 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>< |
| 75620 | 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>....... |
| 75640 | 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 |
| 75660 | 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 |
| 75680 | 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>. |
| 756a0 | 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</ |
| 756c0 | 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 |
| 756e0 | 6c 61 73 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.= |
| 75700 | 20 3c 73 70 61 6e 20 63 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 |
| 75720 | 72 74 3c 2f 73 70 61 6e 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"> |
| 75740 | 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. |
| 75760 | 63 6c 61 73 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. |
| 75780 | 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 |
| 757a0 | 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 |
| 757c0 | 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 |
| 757e0 | 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>,. |
| 75800 | 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 |
| 75820 | 61 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 |
| 75840 | 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 |
| 75860 | 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 |
| 75880 | 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- |
| 758a0 | 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.=.< |
| 758c0 | 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 |
| 758e0 | 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 |
| 75900 | 6c 61 73 73 3d 22 74 6f 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 |
| 75920 | 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) |
| 75940 | 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 |
| 75960 | 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 |
| 75980 | 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 |
| 759a0 | 61 6e 3e 20 7d 3b 0a 20 20 20 20 73 74 64 2e 64 65 62 75 67 2e 77 61 72 6e 28 3c 73 70 61 6e 20 | an>.};.....std.debug.warn(<span. |
| 759c0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 61 6c 75 65 3a 20 7b 7d 5c | class="tok-str">"value:.{}\ |
| 759e0 | 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 66 2e 66 6c 6f 61 74 29 3b 0a 7d 3c 2f 63 6f 64 | n"</span>,.f.float);.}</cod |
| 75a00 | 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" |
| 75a20 | 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 65 78 65 20 74 65 73 74 2e 7a 69 67 0a 24 20 2e 2f 74 65 | >$.zig.build-exe.test.zig.$../te |
| 75a40 | 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 6f 64 65 3e | st.value:.1.23400001e+01.</code> |
| 75a60 | 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 68 61 6e 67 | </pre>........<p>.......To.chang |
| 75a80 | 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 6e 20 77 68 | e.the.active.field.of.a.union.wh |
| 75aa0 | 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 65 20 66 69 | en.a.meaningful.value.for.the.fi |
| 75ac0 | 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 3c 61 20 68 | eld.is.not.known,.......use.<a.h |
| 75ae0 | 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 2c 20 | ref="#undefined">undefined</a>,. |
| 75b00 | 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 70 20 63 | like.this:.......</p>.......<p.c |
| 75b20 | 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 |
| 75b40 | 64 65 20 63 6c 61 73 73 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- |
| 75b60 | 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 |
| 75b80 | 73 73 3d 22 74 6f 6b 2d 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>( |
| 75ba0 | 3c 73 70 61 6e 20 63 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& |
| 75bc0 | 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 |
| 75be0 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 6f 6f 20 3d 20 3c 73 70 61 6e 20 63 6c | -kw">const</span>.Foo.=.<span.cl |
| 75c00 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 | ass="tok-kw">union</span>.{..... |
| 75c20 | 66 6c 6f 61 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 66 33 | float:.<span.class="tok-type">f3 |
| 75c40 | 32 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 69 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | 2</span>,.....int:.<span.class=" |
| 75c60 | 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f 73 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 | tok-type">u32</span>,.};..<span. |
| 75c80 | 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. |
| 75ca0 | 63 6c 61 73 73 3d 22 74 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 |
| 75cc0 | 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 6d 61 69 6e 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 | lass="tok-fn">main</span>().<spa |
| 75ce0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b | n.class="tok-type">void</span>.{ |
| 75d00 | 0a 20 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 |
| 75d20 | 70 61 6e 3e 20 66 20 3d 20 46 6f 6f 7b 20 2e 69 6e 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | pan>.f.=.Foo{..int.=.<span.class |
| 75d40 | 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 34 32 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 66 | ="tok-number">42</span>.};.....f |
| 75d60 | 20 3d 20 46 6f 6f 7b 20 2e 66 6c 6f 61 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | .=.Foo{..float.=.<span.class="to |
| 75d80 | 6b 2d 6e 75 6c 6c 22 3e 75 6e 64 65 66 69 6e 65 64 3c 2f 73 70 61 6e 3e 20 7d 3b 0a 20 20 20 20 | k-null">undefined</span>.};..... |
| 75da0 | 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 77 61 72 6e 28 | bar(&f);.....std.debug.warn( |
| 75dc0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 76 61 6c 75 | <span.class="tok-str">"valu |
| 75de0 | 65 3a 20 7b 7d 5c 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 66 2e 66 6c 6f 61 74 29 3b 0a | e:.{}\n"</span>,.f.float);. |
| 75e00 | 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 |
| 75e20 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 62 61 72 3c 2f 73 70 61 6e | >.<span.class="tok-fn">bar</span |
| 75e40 | 3e 28 66 3a 20 2a 46 6f 6f 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 | >(f:.*Foo).<span.class="tok-type |
| 75e60 | 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 66 2e 66 6c 6f 61 74 20 3d 20 3c 73 | ">void</span>.{.....f.float.=.<s |
| 75e80 | 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 |
| 75ea0 | 61 6e 3e 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c | an>;.}</code></pre><pre><code.cl |
| 75ec0 | 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 |
| 75ee0 | 2e 7a 69 67 0a 24 20 2e 2f 74 65 73 74 0a 76 61 6c 75 65 3a 20 31 2e 32 33 34 30 30 30 30 31 65 | .zig.$../test.value:.1.23400001e |
| 75f00 | 2b 30 31 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 | +01.</code></pre>............... |
| 75f20 | 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 54 6f 2d | .<h2.id="Out-of-Bounds-Float-To- |
| 75f40 | 49 6e 74 65 67 65 72 2d 43 61 73 74 22 3e 4f 75 74 20 6f 66 20 42 6f 75 6e 64 73 20 46 6c 6f 61 | Integer-Cast">Out.of.Bounds.Floa |
| 75f60 | 74 20 54 6f 20 49 6e 74 65 67 65 72 20 43 61 73 74 3c 2f 68 32 3e 0a 0a 20 20 20 20 20 20 3c 70 | t.To.Integer.Cast</h2>........<p |
| 75f80 | 3e 54 4f 44 4f 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c | >TODO</p>......................< |
| 75fa0 | 68 31 20 69 64 3d 22 4d 65 6d 6f 72 79 22 3e 4d 65 6d 6f 72 79 3c 2f 68 31 3e 0a 0a 20 20 20 20 | h1.id="Memory">Memory</h1>...... |
| 75fc0 | 20 20 3c 70 3e 54 4f 44 4f 3a 20 65 78 70 6c 61 69 6e 20 6e 6f 20 64 65 66 61 75 6c 74 20 61 6c | ..<p>TODO:.explain.no.default.al |
| 75fe0 | 6c 6f 63 61 74 6f 72 20 69 6e 20 7a 69 67 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f | locator.in.zig</p>.......<p>TODO |
| 76000 | 3a 20 73 68 6f 77 20 68 6f 77 20 74 6f 20 75 73 65 20 74 68 65 20 61 6c 6c 6f 63 61 74 6f 72 20 | :.show.how.to.use.the.allocator. |
| 76020 | 69 6e 74 65 72 66 61 63 65 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 6d 65 6e | interface</p>.......<p>TODO:.men |
| 76040 | 74 69 6f 6e 20 64 65 62 75 67 20 61 6c 6c 6f 63 61 74 6f 72 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | tion.debug.allocator</p>.......< |
| 76060 | 70 3e 54 4f 44 4f 3a 20 69 6d 70 6f 72 74 61 6e 63 65 20 6f 66 20 63 68 65 63 6b 69 6e 67 20 66 | p>TODO:.importance.of.checking.f |
| 76080 | 6f 72 20 61 6c 6c 6f 63 61 74 69 6f 6e 20 66 61 69 6c 75 72 65 3c 2f 70 3e 0a 20 20 20 20 20 20 | or.allocation.failure</p>....... |
| 760a0 | 3c 70 3e 54 4f 44 4f 3a 20 6d 65 6e 74 69 6f 6e 20 6f 76 65 72 63 6f 6d 6d 69 74 20 61 6e 64 20 | <p>TODO:.mention.overcommit.and. |
| 760c0 | 74 68 65 20 4f 4f 4d 20 4b 69 6c 6c 65 72 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f | the.OOM.Killer</p>.......<p>TODO |
| 760e0 | 3a 20 6d 65 6e 74 69 6f 6e 20 72 65 63 75 72 73 69 6f 6e 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | :.mention.recursion</p>.......<p |
| 76100 | 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=" |
| 76120 | 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 3c 2f 75 | #Pointers">Pointers</a></li>.</u |
| 76140 | 6c 3e 0a 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 43 6f 6d 70 69 6c | l>................<h1.id="Compil |
| 76160 | 65 2d 56 61 72 69 61 62 6c 65 73 22 3e 43 6f 6d 70 69 6c 65 20 56 61 72 69 61 62 6c 65 73 3c 2f | e-Variables">Compile.Variables</ |
| 76180 | 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 43 6f 6d 70 69 6c 65 20 76 61 72 | h1>........<p>.......Compile.var |
| 761a0 | 69 61 62 6c 65 73 20 61 72 65 20 61 63 63 65 73 73 69 62 6c 65 20 62 79 20 69 6d 70 6f 72 74 69 | iables.are.accessible.by.importi |
| 761c0 | 6e 67 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 | ng.the.<code.class="zig"><span.c |
| 761e0 | 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 |
| 76200 | 74 3b 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 20 70 61 63 6b 61 67 65 2c 0a 20 20 20 20 20 20 | t;</span></code>.package,....... |
| 76220 | 77 68 69 63 68 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 6d 61 6b 65 73 20 61 76 61 69 6c 61 62 | which.the.compiler.makes.availab |
| 76240 | 6c 65 20 74 6f 20 65 76 65 72 79 20 5a 69 67 20 73 6f 75 72 63 65 20 66 69 6c 65 2e 20 49 74 20 | le.to.every.Zig.source.file..It. |
| 76260 | 63 6f 6e 74 61 69 6e 73 0a 20 20 20 20 20 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 63 6f 6e 73 | contains.......compile-time.cons |
| 76280 | 74 61 6e 74 73 20 73 75 63 68 20 61 73 20 74 68 65 20 63 75 72 72 65 6e 74 20 74 61 72 67 65 74 | tants.such.as.the.current.target |
| 762a0 | 2c 20 65 6e 64 69 61 6e 6e 65 73 73 2c 20 61 6e 64 20 72 65 6c 65 61 73 65 20 6d 6f 64 65 2e 0a | ,.endianness,.and.release.mode.. |
| 762c0 | 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 |
| 762e0 | 73 3d 22 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 |
| 76300 | 73 74 3c 2f 73 70 61 6e 3e 20 62 75 69 6c 74 69 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | st</span>.builtin.=.<span.class= |
| 76320 | 22 74 6f 6b 2d 62 75 69 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 |
| 76340 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 75 69 6c 74 69 6e | an.class="tok-str">"builtin |
| 76360 | 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 |
| 76380 | 2d 6b 77 22 3e 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 | -kw">const</span>.separator.=.<s |
| 763a0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 62 75 | pan.class="tok-kw">if</span>.(bu |
| 763c0 | 69 6c 74 69 6e 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 | iltin.os.==.builtin.Os.windows). |
| 763e0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 5c 5c 27 3c 2f 73 70 61 6e | <span.class="tok-str">'\\'</span |
| 76400 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6c 73 65 3c 2f 73 70 61 | >.<span.class="tok-kw">else</spa |
| 76420 | 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 27 2f 27 3c 2f 73 70 | n>.<span.class="tok-str">'/'</sp |
| 76440 | 61 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 0a 20 20 20 20 | an>;</code></pre>.......<p>..... |
| 76460 | 20 20 45 78 61 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 | ..Example.of.what.is.imported.wi |
| 76480 | 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 73 | th.<code.class="zig"><span.class |
| 764a0 | 3d 22 74 6f 6b 2d 62 75 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 |
| 764c0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 75 69 6c 74 69 | pan.class="tok-str">"builti |
| 764e0 | 6e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3c 2f 63 6f 64 65 3e 3a 0a 20 20 20 20 20 20 3c 2f | n"</span>)</code>:.......</ |
| 76500 | 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"> |
| 76520 | 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>. |
| 76540 | 3c 73 70 61 6e 20 63 6c 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 |
| 76560 | 3e 20 53 74 61 63 6b 54 72 61 63 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | >.StackTrace.=.<span.class="tok- |
| 76580 | 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 69 6e 64 65 78 3a 20 3c | kw">struct</span>.{.....index:.< |
| 765a0 | 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 |
| 765c0 | 6e 3e 2c 0a 20 20 20 20 69 6e 73 74 72 75 63 74 69 6f 6e 5f 61 64 64 72 65 73 73 65 73 3a 20 5b | n>,.....instruction_addresses:.[ |
| 765e0 | 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 | ]<span.class="tok-type">usize</s |
| 76600 | 70 61 6e 3e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 | pan>,.};..<span.class="tok-kw">p |
| 76620 | 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | ub</span>.<span.class="tok-kw">c |
| 76640 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 4f 73 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | onst</span>.Os.=.<span.class="to |
| 76660 | 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 66 72 65 65 73 74 61 6e | k-kw">enum</span>.{.....freestan |
| 76680 | 64 69 6e 67 2c 0a 20 20 20 20 61 6e 61 6e 61 73 2c 0a 20 20 20 20 63 6c 6f 75 64 61 62 69 2c 0a | ding,.....ananas,.....cloudabi,. |
| 766a0 | 20 20 20 20 64 72 61 67 6f 6e 66 6c 79 2c 0a 20 20 20 20 66 72 65 65 62 73 64 2c 0a 20 20 20 20 | ....dragonfly,.....freebsd,..... |
| 766c0 | 66 75 63 68 73 69 61 2c 0a 20 20 20 20 69 6f 73 2c 0a 20 20 20 20 6b 66 72 65 65 62 73 64 2c 0a | fuchsia,.....ios,.....kfreebsd,. |
| 766e0 | 20 20 20 20 6c 69 6e 75 78 2c 0a 20 20 20 20 6c 76 32 2c 0a 20 20 20 20 6d 61 63 6f 73 78 2c 0a | ....linux,.....lv2,.....macosx,. |
| 76700 | 20 20 20 20 6e 65 74 62 73 64 2c 0a 20 20 20 20 6f 70 65 6e 62 73 64 2c 0a 20 20 20 20 73 6f 6c | ....netbsd,.....openbsd,.....sol |
| 76720 | 61 72 69 73 2c 0a 20 20 20 20 77 69 6e 64 6f 77 73 2c 0a 20 20 20 20 68 61 69 6b 75 2c 0a 20 20 | aris,.....windows,.....haiku,... |
| 76740 | 20 20 6d 69 6e 69 78 2c 0a 20 20 20 20 72 74 65 6d 73 2c 0a 20 20 20 20 6e 61 63 6c 2c 0a 20 20 | ..minix,.....rtems,.....nacl,... |
| 76760 | 20 20 63 6e 6b 2c 0a 20 20 20 20 61 69 78 2c 0a 20 20 20 20 63 75 64 61 2c 0a 20 20 20 20 6e 76 | ..cnk,.....aix,.....cuda,.....nv |
| 76780 | 63 6c 2c 0a 20 20 20 20 61 6d 64 68 73 61 2c 0a 20 20 20 20 70 73 34 2c 0a 20 20 20 20 65 6c 66 | cl,.....amdhsa,.....ps4,.....elf |
| 767a0 | 69 61 6d 63 75 2c 0a 20 20 20 20 74 76 6f 73 2c 0a 20 20 20 20 77 61 74 63 68 6f 73 2c 0a 20 20 | iamcu,.....tvos,.....watchos,... |
| 767c0 | 20 20 6d 65 73 61 33 64 2c 0a 20 20 20 20 63 6f 6e 74 69 6b 69 2c 0a 20 20 20 20 61 6d 64 70 61 | ..mesa3d,.....contiki,.....amdpa |
| 767e0 | 6c 2c 0a 20 20 20 20 7a 65 6e 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | l,.....zen,.};..<span.class="tok |
| 76800 | 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 |
| 76820 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 41 72 63 68 20 3d 20 3c 73 70 61 6e 20 63 | -kw">const</span>.Arch.=.<span.c |
| 76840 | 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>.{..... |
| 76860 | 61 72 6d 76 38 5f 33 61 2c 0a 20 20 20 20 61 72 6d 76 38 5f 32 61 2c 0a 20 20 20 20 61 72 6d 76 | armv8_3a,.....armv8_2a,.....armv |
| 76880 | 38 5f 31 61 2c 0a 20 20 20 20 61 72 6d 76 38 2c 0a 20 20 20 20 61 72 6d 76 38 72 2c 0a 20 20 20 | 8_1a,.....armv8,.....armv8r,.... |
| 768a0 | 20 61 72 6d 76 38 6d 5f 62 61 73 65 6c 69 6e 65 2c 0a 20 20 20 20 61 72 6d 76 38 6d 5f 6d 61 69 | .armv8m_baseline,.....armv8m_mai |
| 768c0 | 6e 6c 69 6e 65 2c 0a 20 20 20 20 61 72 6d 76 37 2c 0a 20 20 20 20 61 72 6d 76 37 65 6d 2c 0a 20 | nline,.....armv7,.....armv7em,.. |
| 768e0 | 20 20 20 61 72 6d 76 37 6d 2c 0a 20 20 20 20 61 72 6d 76 37 73 2c 0a 20 20 20 20 61 72 6d 76 37 | ...armv7m,.....armv7s,.....armv7 |
| 76900 | 6b 2c 0a 20 20 20 20 61 72 6d 76 37 76 65 2c 0a 20 20 20 20 61 72 6d 76 36 2c 0a 20 20 20 20 61 | k,.....armv7ve,.....armv6,.....a |
| 76920 | 72 6d 76 36 6d 2c 0a 20 20 20 20 61 72 6d 76 36 6b 2c 0a 20 20 20 20 61 72 6d 76 36 74 32 2c 0a | rmv6m,.....armv6k,.....armv6t2,. |
| 76940 | 20 20 20 20 61 72 6d 76 35 2c 0a 20 20 20 20 61 72 6d 76 35 74 65 2c 0a 20 20 20 20 61 72 6d 76 | ....armv5,.....armv5te,.....armv |
| 76960 | 34 74 2c 0a 20 20 20 20 61 72 6d 65 62 76 38 5f 33 61 2c 0a 20 20 20 20 61 72 6d 65 62 76 38 5f | 4t,.....armebv8_3a,.....armebv8_ |
| 76980 | 32 61 2c 0a 20 20 20 20 61 72 6d 65 62 76 38 5f 31 61 2c 0a 20 20 20 20 61 72 6d 65 62 76 38 2c | 2a,.....armebv8_1a,.....armebv8, |
| 769a0 | 0a 20 20 20 20 61 72 6d 65 62 76 38 72 2c 0a 20 20 20 20 61 72 6d 65 62 76 38 6d 5f 62 61 73 65 | .....armebv8r,.....armebv8m_base |
| 769c0 | 6c 69 6e 65 2c 0a 20 20 20 20 61 72 6d 65 62 76 38 6d 5f 6d 61 69 6e 6c 69 6e 65 2c 0a 20 20 20 | line,.....armebv8m_mainline,.... |
| 769e0 | 20 61 72 6d 65 62 76 37 2c 0a 20 20 20 20 61 72 6d 65 62 76 37 65 6d 2c 0a 20 20 20 20 61 72 6d | .armebv7,.....armebv7em,.....arm |
| 76a00 | 65 62 76 37 6d 2c 0a 20 20 20 20 61 72 6d 65 62 76 37 73 2c 0a 20 20 20 20 61 72 6d 65 62 76 37 | ebv7m,.....armebv7s,.....armebv7 |
| 76a20 | 6b 2c 0a 20 20 20 20 61 72 6d 65 62 76 37 76 65 2c 0a 20 20 20 20 61 72 6d 65 62 76 36 2c 0a 20 | k,.....armebv7ve,.....armebv6,.. |
| 76a40 | 20 20 20 61 72 6d 65 62 76 36 6d 2c 0a 20 20 20 20 61 72 6d 65 62 76 36 6b 2c 0a 20 20 20 20 61 | ...armebv6m,.....armebv6k,.....a |
| 76a60 | 72 6d 65 62 76 36 74 32 2c 0a 20 20 20 20 61 72 6d 65 62 76 35 2c 0a 20 20 20 20 61 72 6d 65 62 | rmebv6t2,.....armebv5,.....armeb |
| 76a80 | 76 35 74 65 2c 0a 20 20 20 20 61 72 6d 65 62 76 34 74 2c 0a 20 20 20 20 61 61 72 63 68 36 34 2c | v5te,.....armebv4t,.....aarch64, |
| 76aa0 | 0a 20 20 20 20 61 61 72 63 68 36 34 5f 62 65 2c 0a 20 20 20 20 61 72 63 2c 0a 20 20 20 20 61 76 | .....aarch64_be,.....arc,.....av |
| 76ac0 | 72 2c 0a 20 20 20 20 62 70 66 65 6c 2c 0a 20 20 20 20 62 70 66 65 62 2c 0a 20 20 20 20 68 65 78 | r,.....bpfel,.....bpfeb,.....hex |
| 76ae0 | 61 67 6f 6e 2c 0a 20 20 20 20 6d 69 70 73 2c 0a 20 20 20 20 6d 69 70 73 65 6c 2c 0a 20 20 20 20 | agon,.....mips,.....mipsel,..... |
| 76b00 | 6d 69 70 73 36 34 2c 0a 20 20 20 20 6d 69 70 73 36 34 65 6c 2c 0a 20 20 20 20 6d 73 70 34 33 30 | mips64,.....mips64el,.....msp430 |
| 76b20 | 2c 0a 20 20 20 20 6e 69 6f 73 32 2c 0a 20 20 20 20 70 6f 77 65 72 70 63 2c 0a 20 20 20 20 70 6f | ,.....nios2,.....powerpc,.....po |
| 76b40 | 77 65 72 70 63 36 34 2c 0a 20 20 20 20 70 6f 77 65 72 70 63 36 34 6c 65 2c 0a 20 20 20 20 72 36 | werpc64,.....powerpc64le,.....r6 |
| 76b60 | 30 30 2c 0a 20 20 20 20 61 6d 64 67 63 6e 2c 0a 20 20 20 20 72 69 73 63 76 33 32 2c 0a 20 20 20 | 00,.....amdgcn,.....riscv32,.... |
| 76b80 | 20 72 69 73 63 76 36 34 2c 0a 20 20 20 20 73 70 61 72 63 2c 0a 20 20 20 20 73 70 61 72 63 76 39 | .riscv64,.....sparc,.....sparcv9 |
| 76ba0 | 2c 0a 20 20 20 20 73 70 61 72 63 65 6c 2c 0a 20 20 20 20 73 33 39 30 78 2c 0a 20 20 20 20 74 63 | ,.....sparcel,.....s390x,.....tc |
| 76bc0 | 65 2c 0a 20 20 20 20 74 63 65 6c 65 2c 0a 20 20 20 20 74 68 75 6d 62 2c 0a 20 20 20 20 74 68 75 | e,.....tcele,.....thumb,.....thu |
| 76be0 | 6d 62 65 62 2c 0a 20 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 | mbeb,.....<span.class="tok-type" |
| 76c00 | 3e 69 33 38 36 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 78 38 36 5f 36 34 2c 0a 20 20 20 20 78 63 | >i386</span>,.....x86_64,.....xc |
| 76c20 | 6f 72 65 2c 0a 20 20 20 20 6e 76 70 74 78 2c 0a 20 20 20 20 6e 76 70 74 78 36 34 2c 0a 20 20 20 | ore,.....nvptx,.....nvptx64,.... |
| 76c40 | 20 6c 65 33 32 2c 0a 20 20 20 20 6c 65 36 34 2c 0a 20 20 20 20 61 6d 64 69 6c 2c 0a 20 20 20 20 | .le32,.....le64,.....amdil,..... |
| 76c60 | 61 6d 64 69 6c 36 34 2c 0a 20 20 20 20 68 73 61 69 6c 2c 0a 20 20 20 20 68 73 61 69 6c 36 34 2c | amdil64,.....hsail,.....hsail64, |
| 76c80 | 0a 20 20 20 20 73 70 69 72 2c 0a 20 20 20 20 73 70 69 72 36 34 2c 0a 20 20 20 20 6b 61 6c 69 6d | .....spir,.....spir64,.....kalim |
| 76ca0 | 62 61 76 33 2c 0a 20 20 20 20 6b 61 6c 69 6d 62 61 76 34 2c 0a 20 20 20 20 6b 61 6c 69 6d 62 61 | bav3,.....kalimbav4,.....kalimba |
| 76cc0 | 76 35 2c 0a 20 20 20 20 73 68 61 76 65 2c 0a 20 20 20 20 6c 61 6e 61 69 2c 0a 20 20 20 20 77 61 | v5,.....shave,.....lanai,.....wa |
| 76ce0 | 73 6d 33 32 2c 0a 20 20 20 20 77 61 73 6d 36 34 2c 0a 20 20 20 20 72 65 6e 64 65 72 73 63 72 69 | sm32,.....wasm64,.....renderscri |
| 76d00 | 70 74 33 32 2c 0a 20 20 20 20 72 65 6e 64 65 72 73 63 72 69 70 74 36 34 2c 0a 7d 3b 0a 0a 3c 73 | pt32,.....renderscript64,.};..<s |
| 76d20 | 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 |
| 76d40 | 70 61 6e 20 63 6c 61 73 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>. |
| 76d60 | 45 6e 76 69 72 6f 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 | Environ.=.<span.class="tok-kw">e |
| 76d80 | 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 75 6e 6b 6e 6f 77 6e 2c 0a 20 20 20 20 67 6e | num</span>.{.....unknown,.....gn |
| 76da0 | 75 2c 0a 20 20 20 20 67 6e 75 61 62 69 6e 33 32 2c 0a 20 20 20 20 67 6e 75 61 62 69 36 34 2c 0a | u,.....gnuabin32,.....gnuabi64,. |
| 76dc0 | 20 20 20 20 67 6e 75 65 61 62 69 2c 0a 20 20 20 20 67 6e 75 65 61 62 69 68 66 2c 0a 20 20 20 20 | ....gnueabi,.....gnueabihf,..... |
| 76de0 | 67 6e 75 78 33 32 2c 0a 20 20 20 20 63 6f 64 65 31 36 2c 0a 20 20 20 20 65 61 62 69 2c 0a 20 20 | gnux32,.....code16,.....eabi,... |
| 76e00 | 20 20 65 61 62 69 68 66 2c 0a 20 20 20 20 61 6e 64 72 6f 69 64 2c 0a 20 20 20 20 6d 75 73 6c 2c | ..eabihf,.....android,.....musl, |
| 76e20 | 0a 20 20 20 20 6d 75 73 6c 65 61 62 69 2c 0a 20 20 20 20 6d 75 73 6c 65 61 62 69 68 66 2c 0a 20 | .....musleabi,.....musleabihf,.. |
| 76e40 | 20 20 20 6d 73 76 63 2c 0a 20 20 20 20 69 74 61 6e 69 75 6d 2c 0a 20 20 20 20 63 79 67 6e 75 73 | ...msvc,.....itanium,.....cygnus |
| 76e60 | 2c 0a 20 20 20 20 63 6f 72 65 63 6c 72 2c 0a 20 20 20 20 73 69 6d 75 6c 61 74 6f 72 2c 0a 7d 3b | ,.....coreclr,.....simulator,.}; |
| 76e80 | 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 |
| 76ea0 | 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 | >.<span.class="tok-kw">const</sp |
| 76ec0 | 61 6e 3e 20 4f 62 6a 65 63 74 46 6f 72 6d 61 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | an>.ObjectFormat.=.<span.class=" |
| 76ee0 | 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 75 6e 6b 6e 6f 77 | tok-kw">enum</span>.{.....unknow |
| 76f00 | 6e 2c 0a 20 20 20 20 63 6f 66 66 2c 0a 20 20 20 20 65 6c 66 2c 0a 20 20 20 20 6d 61 63 68 6f 2c | n,.....coff,.....elf,.....macho, |
| 76f20 | 0a 20 20 20 20 77 61 73 6d 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .....wasm,.};..<span.class="tok- |
| 76f40 | 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- |
| 76f60 | 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 47 6c 6f 62 61 6c 4c 69 6e 6b 61 67 65 20 3d | kw">const</span>.GlobalLinkage.= |
| 76f80 | 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 |
| 76fa0 | 3e 20 7b 0a 20 20 20 20 49 6e 74 65 72 6e 61 6c 2c 0a 20 20 20 20 53 74 72 6f 6e 67 2c 0a 20 20 | >.{.....Internal,.....Strong,... |
| 76fc0 | 20 20 57 65 61 6b 2c 0a 20 20 20 20 4c 69 6e 6b 4f 6e 63 65 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 | ..Weak,.....LinkOnce,.};..<span. |
| 76fe0 | 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. |
| 77000 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 41 74 6f 6d | class="tok-kw">const</span>.Atom |
| 77020 | 69 63 4f 72 64 65 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 | icOrder.=.<span.class="tok-kw">e |
| 77040 | 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 55 6e 6f 72 64 65 72 65 64 2c 0a 20 20 20 20 | num</span>.{.....Unordered,..... |
| 77060 | 4d 6f 6e 6f 74 6f 6e 69 63 2c 0a 20 20 20 20 41 63 71 75 69 72 65 2c 0a 20 20 20 20 52 65 6c 65 | Monotonic,.....Acquire,.....Rele |
| 77080 | 61 73 65 2c 0a 20 20 20 20 41 63 71 52 65 6c 2c 0a 20 20 20 20 53 65 71 43 73 74 2c 0a 7d 3b 0a | ase,.....AcqRel,.....SeqCst,.};. |
| 770a0 | 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e | .<span.class="tok-kw">pub</span> |
| 770c0 | 20 3c 73 70 61 6e 20 63 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 |
| 770e0 | 6e 3e 20 41 74 6f 6d 69 63 52 6d 77 4f 70 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | n>.AtomicRmwOp.=.<span.class="to |
| 77100 | 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 58 63 68 67 2c 0a 20 20 | k-kw">enum</span>.{.....Xchg,... |
| 77120 | 20 20 41 64 64 2c 0a 20 20 20 20 53 75 62 2c 0a 20 20 20 20 41 6e 64 2c 0a 20 20 20 20 4e 61 6e | ..Add,.....Sub,.....And,.....Nan |
| 77140 | 64 2c 0a 20 20 20 20 4f 72 2c 0a 20 20 20 20 58 6f 72 2c 0a 20 20 20 20 4d 61 78 2c 0a 20 20 20 | d,.....Or,.....Xor,.....Max,.... |
| 77160 | 20 4d 69 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 70 | .Min,.};..<span.class="tok-kw">p |
| 77180 | 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | ub</span>.<span.class="tok-kw">c |
| 771a0 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 4d 6f 64 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | onst</span>.Mode.=.<span.class=" |
| 771c0 | 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 44 65 62 75 67 2c | tok-kw">enum</span>.{.....Debug, |
| 771e0 | 0a 20 20 20 20 52 65 6c 65 61 73 65 53 61 66 65 2c 0a 20 20 20 20 52 65 6c 65 61 73 65 46 61 73 | .....ReleaseSafe,.....ReleaseFas |
| 77200 | 74 2c 0a 20 20 20 20 52 65 6c 65 61 73 65 53 6d 61 6c 6c 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 | t,.....ReleaseSmall,.};..<span.c |
| 77220 | 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 |
| 77240 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 54 79 70 65 49 | lass="tok-kw">const</span>.TypeI |
| 77260 | 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 65 6e 75 6d 3c 2f 73 | d.=.<span.class="tok-kw">enum</s |
| 77280 | 70 61 6e 3e 20 7b 0a 20 20 20 20 54 79 70 65 2c 0a 20 20 20 20 56 6f 69 64 2c 0a 20 20 20 20 42 | pan>.{.....Type,.....Void,.....B |
| 772a0 | 6f 6f 6c 2c 0a 20 20 20 20 4e 6f 52 65 74 75 72 6e 2c 0a 20 20 20 20 49 6e 74 2c 0a 20 20 20 20 | ool,.....NoReturn,.....Int,..... |
| 772c0 | 46 6c 6f 61 74 2c 0a 20 20 20 20 50 6f 69 6e 74 65 72 2c 0a 20 20 20 20 41 72 72 61 79 2c 0a 20 | Float,.....Pointer,.....Array,.. |
| 772e0 | 20 20 20 53 74 72 75 63 74 2c 0a 20 20 20 20 43 6f 6d 70 74 69 6d 65 46 6c 6f 61 74 2c 0a 20 20 | ...Struct,.....ComptimeFloat,... |
| 77300 | 20 20 43 6f 6d 70 74 69 6d 65 49 6e 74 2c 0a 20 20 20 20 55 6e 64 65 66 69 6e 65 64 2c 0a 20 20 | ..ComptimeInt,.....Undefined,... |
| 77320 | 20 20 4e 75 6c 6c 2c 0a 20 20 20 20 4f 70 74 69 6f 6e 61 6c 2c 0a 20 20 20 20 45 72 72 6f 72 55 | ..Null,.....Optional,.....ErrorU |
| 77340 | 6e 69 6f 6e 2c 0a 20 20 20 20 45 72 72 6f 72 53 65 74 2c 0a 20 20 20 20 45 6e 75 6d 2c 0a 20 20 | nion,.....ErrorSet,.....Enum,... |
| 77360 | 20 20 55 6e 69 6f 6e 2c 0a 20 20 20 20 46 6e 2c 0a 20 20 20 20 4e 61 6d 65 73 70 61 63 65 2c 0a | ..Union,.....Fn,.....Namespace,. |
| 77380 | 20 20 20 20 42 6f 75 6e 64 46 6e 2c 0a 20 20 20 20 41 72 67 54 75 70 6c 65 2c 0a 20 20 20 20 4f | ....BoundFn,.....ArgTuple,.....O |
| 773a0 | 70 61 71 75 65 2c 0a 20 20 20 20 50 72 6f 6d 69 73 65 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c | paque,.....Promise,.};..<span.cl |
| 773c0 | 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 |
| 773e0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 54 79 70 65 49 6e | ass="tok-kw">const</span>.TypeIn |
| 77400 | 66 6f 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 75 6e 69 6f 6e 3c | fo.=.<span.class="tok-kw">union< |
| 77420 | 2f 73 70 61 6e 3e 28 54 79 70 65 49 64 29 20 7b 0a 20 20 20 20 54 79 70 65 3a 20 3c 73 70 61 6e | /span>(TypeId).{.....Type:.<span |
| 77440 | 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 20 | .class="tok-type">void</span>,.. |
| 77460 | 20 20 20 56 6f 69 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 | ...Void:.<span.class="tok-type"> |
| 77480 | 76 6f 69 64 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 42 6f 6f 6c 3a 20 3c 73 70 61 6e 20 63 6c 61 | void</span>,.....Bool:.<span.cla |
| 774a0 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 4e | ss="tok-type">void</span>,.....N |
| 774c0 | 6f 52 65 74 75 72 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 | oReturn:.<span.class="tok-type"> |
| 774e0 | 76 6f 69 64 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 49 6e 74 3a 20 49 6e 74 2c 0a 20 20 20 20 46 | void</span>,.....Int:.Int,.....F |
| 77500 | 6c 6f 61 74 3a 20 46 6c 6f 61 74 2c 0a 20 20 20 20 50 6f 69 6e 74 65 72 3a 20 50 6f 69 6e 74 65 | loat:.Float,.....Pointer:.Pointe |
| 77520 | 72 2c 0a 20 20 20 20 41 72 72 61 79 3a 20 41 72 72 61 79 2c 0a 20 20 20 20 53 74 72 75 63 74 3a | r,.....Array:.Array,.....Struct: |
| 77540 | 20 53 74 72 75 63 74 2c 0a 20 20 20 20 43 6f 6d 70 74 69 6d 65 46 6c 6f 61 74 3a 20 3c 73 70 61 | .Struct,.....ComptimeFloat:.<spa |
| 77560 | 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>,. |
| 77580 | 20 20 20 20 43 6f 6d 70 74 69 6d 65 49 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | ....ComptimeInt:.<span.class="to |
| 775a0 | 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 55 6e 64 65 66 69 6e | k-type">void</span>,.....Undefin |
| 775c0 | 65 64 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c | ed:.<span.class="tok-type">void< |
| 775e0 | 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 4e 75 6c 6c 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | /span>,.....Null:.<span.class="t |
| 77600 | 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 4f 70 74 69 6f 6e | ok-type">void</span>,.....Option |
| 77620 | 61 6c 3a 20 4f 70 74 69 6f 6e 61 6c 2c 0a 20 20 20 20 45 72 72 6f 72 55 6e 69 6f 6e 3a 20 45 72 | al:.Optional,.....ErrorUnion:.Er |
| 77640 | 72 6f 72 55 6e 69 6f 6e 2c 0a 20 20 20 20 45 72 72 6f 72 53 65 74 3a 20 45 72 72 6f 72 53 65 74 | rorUnion,.....ErrorSet:.ErrorSet |
| 77660 | 2c 0a 20 20 20 20 45 6e 75 6d 3a 20 45 6e 75 6d 2c 0a 20 20 20 20 55 6e 69 6f 6e 3a 20 55 6e 69 | ,.....Enum:.Enum,.....Union:.Uni |
| 77680 | 6f 6e 2c 0a 20 20 20 20 46 6e 3a 20 46 6e 2c 0a 20 20 20 20 4e 61 6d 65 73 70 61 63 65 3a 20 3c | on,.....Fn:.Fn,.....Namespace:.< |
| 776a0 | 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 |
| 776c0 | 3e 2c 0a 20 20 20 20 42 6f 75 6e 64 46 6e 3a 20 46 6e 2c 0a 20 20 20 20 41 72 67 54 75 70 6c 65 | >,.....BoundFn:.Fn,.....ArgTuple |
| 776e0 | 3a 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 |
| 77700 | 70 61 6e 3e 2c 0a 20 20 20 20 4f 70 61 71 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | pan>,.....Opaque:.<span.class="t |
| 77720 | 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 50 72 6f 6d 69 73 | ok-type">void</span>,.....Promis |
| 77740 | 65 3a 20 50 72 6f 6d 69 73 65 2c 0a 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | e:.Promise,.......<span.class="t |
| 77760 | 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 |
| 77780 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 49 6e 74 20 3d 20 3c 73 70 61 6e 20 | ok-kw">const</span>.Int.=.<span. |
| 777a0 | 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>.{.. |
| 777c0 | 20 20 20 20 20 20 20 69 73 5f 73 69 67 6e 65 64 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | .......is_signed:.<span.class="t |
| 777e0 | 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 62 69 | ok-type">bool</span>,.........bi |
| 77800 | 74 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 75 38 3c 2f 73 | ts:.<span.class="tok-type">u8</s |
| 77820 | 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | pan>,.....};......<span.class="t |
| 77840 | 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 |
| 77860 | 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 6c 6f 61 74 20 3d 20 3c 73 70 61 | ok-kw">const</span>.Float.=.<spa |
| 77880 | 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>.{ |
| 778a0 | 0a 20 20 20 20 20 20 20 20 62 69 74 73 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .........bits:.<span.class="tok- |
| 778c0 | 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 | type">u8</span>,.....};......<sp |
| 778e0 | 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 |
| 77900 | 61 6e 20 63 6c 61 73 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 |
| 77920 | 6f 69 6e 74 65 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 | ointer.=.<span.class="tok-kw">st |
| 77940 | 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 73 69 7a 65 3a 20 53 69 7a 65 | ruct</span>.{.........size:.Size |
| 77960 | 2c 0a 20 20 20 20 20 20 20 20 69 73 5f 63 6f 6e 73 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ,.........is_const:.<span.class= |
| 77980 | 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 | "tok-type">bool</span>,......... |
| 779a0 | 69 73 5f 76 6f 6c 61 74 69 6c 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | is_volatile:.<span.class="tok-ty |
| 779c0 | 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 61 6c 69 67 6e 6d 65 | pe">bool</span>,.........alignme |
| 779e0 | 6e 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 33 32 3c 2f | nt:.<span.class="tok-type">u32</ |
| 77a00 | 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 63 68 69 6c 64 3a 20 3c 73 70 61 6e 20 63 6c 61 73 | span>,.........child:.<span.clas |
| 77a20 | 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 0a 0a 20 20 20 20 20 | s="tok-type">type</span>,....... |
| 77a40 | 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 |
| 77a60 | 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 |
| 77a80 | 70 61 6e 3e 20 53 69 7a 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>.Size.=.<span.class="tok-kw" |
| 77aa0 | 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 4f 6e 65 2c 0a | >enum</span>.{.............One,. |
| 77ac0 | 20 20 20 20 20 20 20 20 20 20 20 20 4d 61 6e 79 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 53 6c | ............Many,.............Sl |
| 77ae0 | 69 63 65 2c 0a 20 20 20 20 20 20 20 20 7d 3b 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 | ice,.........};.....};......<spa |
| 77b00 | 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 |
| 77b20 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 41 72 | n.class="tok-kw">const</span>.Ar |
| 77b40 | 72 61 79 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 | ray.=.<span.class="tok-kw">struc |
| 77b60 | 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 6c 65 6e 3a 20 3c 73 70 61 6e 20 63 6c | t</span>.{.........len:.<span.cl |
| 77b80 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 | ass="tok-type">usize</span>,.... |
| 77ba0 | 20 20 20 20 20 63 68 69 6c 64 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 | .....child:.<span.class="tok-typ |
| 77bc0 | 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 | e">type</span>,.....};......<spa |
| 77be0 | 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 |
| 77c00 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 43 6f | n.class="tok-kw">const</span>.Co |
| 77c20 | 6e 74 61 69 6e 65 72 4c 61 79 6f 75 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | ntainerLayout.=.<span.class="tok |
| 77c40 | 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 20 41 75 74 6f 2c | -kw">enum</span>.{.........Auto, |
| 77c60 | 0a 20 20 20 20 20 20 20 20 45 78 74 65 72 6e 2c 0a 20 20 20 20 20 20 20 20 50 61 63 6b 65 64 2c | .........Extern,.........Packed, |
| 77c80 | 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .....};......<span.class="tok-kw |
| 77ca0 | 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 |
| 77cc0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 53 74 72 75 63 74 46 69 65 6c 64 20 3d 20 3c 73 70 | ">const</span>.StructField.=.<sp |
| 77ce0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 | an.class="tok-kw">struct</span>. |
| 77d00 | 7b 0a 20 20 20 20 20 20 20 20 6e 61 6d 65 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | {.........name:.[]<span.class="t |
| 77d20 | 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= |
| 77d40 | 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 6f 66 | "tok-type">u8</span>,.........of |
| 77d60 | 66 73 65 74 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 | fset:.?<span.class="tok-type">us |
| 77d80 | 69 7a 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 66 69 65 6c 64 5f 74 79 70 65 3a 20 | ize</span>,.........field_type:. |
| 77da0 | 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 |
| 77dc0 | 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 |
| 77de0 | 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 |
| 77e00 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 53 74 72 75 63 74 20 3d 20 3c 73 70 61 6e | -kw">const</span>.Struct.=.<span |
| 77e20 | 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a | .class="tok-kw">struct</span>.{. |
| 77e40 | 20 20 20 20 20 20 20 20 6c 61 79 6f 75 74 3a 20 43 6f 6e 74 61 69 6e 65 72 4c 61 79 6f 75 74 2c | ........layout:.ContainerLayout, |
| 77e60 | 0a 20 20 20 20 20 20 20 20 66 69 65 6c 64 73 3a 20 5b 5d 53 74 72 75 63 74 46 69 65 6c 64 2c 0a | .........fields:.[]StructField,. |
| 77e80 | 20 20 20 20 20 20 20 20 64 65 66 73 3a 20 5b 5d 44 65 66 69 6e 69 74 69 6f 6e 2c 0a 20 20 20 20 | ........defs:.[]Definition,..... |
| 77ea0 | 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 | };......<span.class="tok-kw">pub |
| 77ec0 | 3c 2f 73 70 61 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 |
| 77ee0 | 73 74 3c 2f 73 70 61 6e 3e 20 4f 70 74 69 6f 6e 61 6c 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | st</span>.Optional.=.<span.class |
| 77f00 | 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 | ="tok-kw">struct</span>.{....... |
| 77f20 | 20 20 63 68 69 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 | ..child:.<span.class="tok-type"> |
| 77f40 | 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 | type</span>,.....};......<span.c |
| 77f60 | 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 |
| 77f80 | 6c 61 73 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 | lass="tok-kw">const</span>.Error |
| 77fa0 | 55 6e 69 6f 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 | Union.=.<span.class="tok-kw">str |
| 77fc0 | 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 65 72 72 6f 72 5f 73 65 74 3a 20 | uct</span>.{.........error_set:. |
| 77fe0 | 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 |
| 78000 | 6e 3e 2c 0a 20 20 20 20 20 20 20 20 70 61 79 6c 6f 61 64 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | n>,.........payload:.<span.class |
| 78020 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a | ="tok-type">type</span>,.....};. |
| 78040 | 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 | .....<span.class="tok-kw">pub</s |
| 78060 | 70 61 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< |
| 78080 | 2f 73 70 61 6e 3e 20 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 | /span>.Error.=.<span.class="tok- |
| 780a0 | 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 6e 61 6d 65 | kw">struct</span>.{.........name |
| 780c0 | 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</ |
| 780e0 | 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< |
| 78100 | 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 | /span>,.........value:.<span.cla |
| 78120 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 | ss="tok-type">usize</span>,..... |
| 78140 | 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 | };......<span.class="tok-kw">pub |
| 78160 | 3c 2f 73 70 61 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 |
| 78180 | 73 74 3c 2f 73 70 61 6e 3e 20 45 72 72 6f 72 53 65 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | st</span>.ErrorSet.=.<span.class |
| 781a0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 | ="tok-kw">struct</span>.{....... |
| 781c0 | 20 20 65 72 72 6f 72 73 3a 20 5b 5d 45 72 72 6f 72 2c 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 20 3c | ..errors:.[]Error,.....};......< |
| 781e0 | 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>.< |
| 78200 | 73 70 61 6e 20 63 6c 61 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> |
| 78220 | 20 45 6e 75 6d 46 69 65 6c 64 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .EnumField.=.<span.class="tok-kw |
| 78240 | 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 6e 61 6d 65 3a 20 | ">struct</span>.{.........name:. |
| 78260 | 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 |
| 78280 | 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 |
| 782a0 | 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 76 61 6c 75 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | pan>,.........value:.<span.class |
| 782c0 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b | ="tok-type">usize</span>,.....}; |
| 782e0 | 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f | ......<span.class="tok-kw">pub</ |
| 78300 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 | span>.<span.class="tok-kw">const |
| 78320 | 3c 2f 73 70 61 6e 3e 20 45 6e 75 6d 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | </span>.Enum.=.<span.class="tok- |
| 78340 | 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 6c 61 79 6f | kw">struct</span>.{.........layo |
| 78360 | 75 74 3a 20 43 6f 6e 74 61 69 6e 65 72 4c 61 79 6f 75 74 2c 0a 20 20 20 20 20 20 20 20 74 61 67 | ut:.ContainerLayout,.........tag |
| 78380 | 5f 74 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 | _type:.<span.class="tok-type">ty |
| 783a0 | 70 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 66 69 65 6c 64 73 3a 20 5b 5d 45 6e 75 | pe</span>,.........fields:.[]Enu |
| 783c0 | 6d 46 69 65 6c 64 2c 0a 20 20 20 20 20 20 20 20 64 65 66 73 3a 20 5b 5d 44 65 66 69 6e 69 74 69 | mField,.........defs:.[]Definiti |
| 783e0 | 6f 6e 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 | on,.....};......<span.class="tok |
| 78400 | 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 |
| 78420 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 55 6e 69 6f 6e 46 69 65 6c 64 20 3d 20 3c | -kw">const</span>.UnionField.=.< |
| 78440 | 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 |
| 78460 | 3e 20 7b 0a 20 20 20 20 20 20 20 20 6e 61 6d 65 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d | >.{.........name:.[]<span.class= |
| 78480 | 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 |
| 784a0 | 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 | s="tok-type">u8</span>,......... |
| 784c0 | 65 6e 75 6d 5f 66 69 65 6c 64 3a 20 3f 45 6e 75 6d 46 69 65 6c 64 2c 0a 20 20 20 20 20 20 20 20 | enum_field:.?EnumField,......... |
| 784e0 | 66 69 65 6c 64 5f 74 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 | field_type:.<span.class="tok-typ |
| 78500 | 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 | e">type</span>,.....};......<spa |
| 78520 | 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 |
| 78540 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 55 6e | n.class="tok-kw">const</span>.Un |
| 78560 | 69 6f 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 | ion.=.<span.class="tok-kw">struc |
| 78580 | 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 6c 61 79 6f 75 74 3a 20 43 6f 6e 74 61 | t</span>.{.........layout:.Conta |
| 785a0 | 69 6e 65 72 4c 61 79 6f 75 74 2c 0a 20 20 20 20 20 20 20 20 74 61 67 5f 74 79 70 65 3a 20 3f 3c | inerLayout,.........tag_type:.?< |
| 785c0 | 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 |
| 785e0 | 3e 2c 0a 20 20 20 20 20 20 20 20 66 69 65 6c 64 73 3a 20 5b 5d 55 6e 69 6f 6e 46 69 65 6c 64 2c | >,.........fields:.[]UnionField, |
| 78600 | 0a 20 20 20 20 20 20 20 20 64 65 66 73 3a 20 5b 5d 44 65 66 69 6e 69 74 69 6f 6e 2c 0a 20 20 20 | .........defs:.[]Definition,.... |
| 78620 | 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 | .};......<span.class="tok-kw">pu |
| 78640 | 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | b</span>.<span.class="tok-kw">co |
| 78660 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 43 61 6c 6c 69 6e 67 43 6f 6e 76 65 6e 74 69 6f 6e 20 3d 20 3c | nst</span>.CallingConvention.=.< |
| 78680 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 20 | span.class="tok-kw">enum</span>. |
| 786a0 | 7b 0a 20 20 20 20 20 20 20 20 55 6e 73 70 65 63 69 66 69 65 64 2c 0a 20 20 20 20 20 20 20 20 43 | {.........Unspecified,.........C |
| 786c0 | 2c 0a 20 20 20 20 20 20 20 20 43 6f 6c 64 2c 0a 20 20 20 20 20 20 20 20 4e 61 6b 65 64 2c 0a 20 | ,.........Cold,.........Naked,.. |
| 786e0 | 20 20 20 20 20 20 20 53 74 64 63 61 6c 6c 2c 0a 20 20 20 20 20 20 20 20 41 73 79 6e 63 2c 0a 20 | .......Stdcall,.........Async,.. |
| 78700 | 20 20 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | ...};......<span.class="tok-kw"> |
| 78720 | 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"> |
| 78740 | 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 6e 41 72 67 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 | const</span>.FnArg.=.<span.class |
| 78760 | 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 | ="tok-kw">struct</span>.{....... |
| 78780 | 20 20 69 73 5f 67 65 6e 65 72 69 63 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | ..is_generic:.<span.class="tok-t |
| 787a0 | 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 69 73 5f 6e 6f 61 | ype">bool</span>,.........is_noa |
| 787c0 | 6c 69 61 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 62 6f 6f | lias:.<span.class="tok-type">boo |
| 787e0 | 6c 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 61 72 67 5f 74 79 70 65 3a 20 3f 3c 73 70 | l</span>,.........arg_type:.?<sp |
| 78800 | 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>, |
| 78820 | 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .....};......<span.class="tok-kw |
| 78840 | 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 |
| 78860 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 46 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ">const</span>.Fn.=.<span.class= |
| 78880 | 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 | "tok-kw">struct</span>.{........ |
| 788a0 | 20 63 61 6c 6c 69 6e 67 5f 63 6f 6e 76 65 6e 74 69 6f 6e 3a 20 43 61 6c 6c 69 6e 67 43 6f 6e 76 | .calling_convention:.CallingConv |
| 788c0 | 65 6e 74 69 6f 6e 2c 0a 20 20 20 20 20 20 20 20 69 73 5f 67 65 6e 65 72 69 63 3a 20 3c 73 70 61 | ention,.........is_generic:.<spa |
| 788e0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 0a | n.class="tok-type">bool</span>,. |
| 78900 | 20 20 20 20 20 20 20 20 69 73 5f 76 61 72 5f 61 72 67 73 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 | ........is_var_args:.<span.class |
| 78920 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 | ="tok-type">bool</span>,........ |
| 78940 | 20 72 65 74 75 72 6e 5f 74 79 70 65 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | .return_type:.?<span.class="tok- |
| 78960 | 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 61 73 79 6e 63 | type">type</span>,.........async |
| 78980 | 5f 61 6c 6c 6f 63 61 74 6f 72 5f 74 79 70 65 3a 20 3f 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 | _allocator_type:.?<span.class="t |
| 789a0 | 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 61 72 | ok-type">type</span>,.........ar |
| 789c0 | 67 73 3a 20 5b 5d 46 6e 41 72 67 2c 0a 20 20 20 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 | gs:.[]FnArg,.....};......<span.c |
| 789e0 | 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 |
| 78a00 | 6c 61 73 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 6f 6d 69 | lass="tok-kw">const</span>.Promi |
| 78a20 | 73 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 | se.=.<span.class="tok-kw">struct |
| 78a40 | 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 63 68 69 6c 64 3a 20 3f 3c 73 70 61 6e 20 | </span>.{.........child:.?<span. |
| 78a60 | 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 0a 20 20 | class="tok-type">type</span>,... |
| 78a80 | 20 20 7d 3b 0a 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 | ..};......<span.class="tok-kw">p |
| 78aa0 | 75 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | ub</span>.<span.class="tok-kw">c |
| 78ac0 | 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 44 65 66 69 6e 69 74 69 6f 6e 20 3d 20 3c 73 70 61 6e 20 63 | onst</span>.Definition.=.<span.c |
| 78ae0 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 | lass="tok-kw">struct</span>.{... |
| 78b00 | 20 20 20 20 20 20 6e 61 6d 65 3a 20 5b 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ......name:.[]<span.class="tok-k |
| 78b20 | 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 |
| 78b40 | 2d 74 79 70 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 69 73 5f 70 75 62 | -type">u8</span>,.........is_pub |
| 78b60 | 3a 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 |
| 78b80 | 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 64 61 74 61 3a 20 44 61 74 61 2c 0a 0a 20 20 20 20 20 | pan>,.........data:.Data,....... |
| 78ba0 | 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 |
| 78bc0 | 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 |
| 78be0 | 70 61 6e 3e 20 44 61 74 61 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 | pan>.Data.=.<span.class="tok-kw" |
| 78c00 | 3e 75 6e 69 6f 6e 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | >union</span>(<span.class="tok-k |
| 78c20 | 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 54 79 | w">enum</span>).{.............Ty |
| 78c40 | 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< |
| 78c60 | 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 56 61 72 3a 20 3c 73 70 61 6e 20 63 | /span>,.............Var:.<span.c |
| 78c80 | 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 0a 20 20 20 | lass="tok-type">type</span>,.... |
| 78ca0 | 20 20 20 20 20 20 20 20 20 46 6e 3a 20 46 6e 44 65 66 2c 0a 0a 20 20 20 20 20 20 20 20 20 20 20 | .........Fn:.FnDef,............. |
| 78cc0 | 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 61 6e 3e | .<span.class="tok-kw">pub</span> |
| 78ce0 | 20 3c 73 70 61 6e 20 63 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 |
| 78d00 | 6e 3e 20 46 6e 44 65 66 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | n>.FnDef.=.<span.class="tok-kw"> |
| 78d20 | 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 20 20 20 20 | struct</span>.{................. |
| 78d40 | 66 6e 5f 74 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 | fn_type:.<span.class="tok-type"> |
| 78d60 | 74 79 70 65 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 69 6e 6c | type</span>,.................inl |
| 78d80 | 69 6e 65 5f 74 79 70 65 3a 20 49 6e 6c 69 6e 65 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ine_type:.Inline,............... |
| 78da0 | 20 20 63 61 6c 6c 69 6e 67 5f 63 6f 6e 76 65 6e 74 69 6f 6e 3a 20 43 61 6c 6c 69 6e 67 43 6f 6e | ..calling_convention:.CallingCon |
| 78dc0 | 76 65 6e 74 69 6f 6e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 73 5f 76 61 72 5f | vention,.................is_var_ |
| 78de0 | 61 72 67 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 62 6f 6f | args:.<span.class="tok-type">boo |
| 78e00 | 6c 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 69 73 5f 65 78 74 | l</span>,.................is_ext |
| 78e20 | 65 72 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 | ern:.<span.class="tok-type">bool |
| 78e40 | 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 69 73 5f 65 78 70 6f | </span>,.................is_expo |
| 78e60 | 72 74 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 62 6f 6f 6c 3c | rt:.<span.class="tok-type">bool< |
| 78e80 | 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6c 69 62 5f 6e 61 6d 65 | /span>,.................lib_name |
| 78ea0 | 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< |
| 78ec0 | 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 |
| 78ee0 | 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 72 65 74 75 72 6e 5f | </span>,.................return_ |
| 78f00 | 74 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 |
| 78f20 | 65 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 61 72 67 5f 6e 61 | e</span>,.................arg_na |
| 78f40 | 6d 65 73 3a 20 5b 5d 5b 5d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 | mes:.[][].<span.class="tok-kw">c |
| 78f60 | 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 |
| 78f80 | 65 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3c | e">u8</span>,..................< |
| 78fa0 | 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>.< |
| 78fc0 | 73 70 61 6e 20 63 6c 61 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> |
| 78fe0 | 20 49 6e 6c 69 6e 65 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 | .Inline.=.<span.class="tok-kw">e |
| 79000 | 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | num</span>.{.................... |
| 79020 | 20 41 75 74 6f 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 6c 77 61 79 | .Auto,.....................Alway |
| 79040 | 73 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 4e 65 76 65 72 2c 0a 20 20 | s,.....................Never,... |
| 79060 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 3b 0a | ..............};.............};. |
| 79080 | 20 20 20 20 20 20 20 20 7d 3b 0a 20 20 20 20 7d 3b 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 | ........};.....};.};..<span.clas |
| 790a0 | 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 |
| 790c0 | 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 6c 6f 61 74 4d 6f 64 | s="tok-kw">const</span>.FloatMod |
| 790e0 | 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 65 6e 75 6d 3c 2f 73 | e.=.<span.class="tok-kw">enum</s |
| 79100 | 70 61 6e 3e 20 7b 0a 20 20 20 20 53 74 72 69 63 74 2c 0a 20 20 20 20 4f 70 74 69 6d 69 7a 65 64 | pan>.{.....Strict,.....Optimized |
| 79120 | 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f | ,.};..<span.class="tok-kw">pub</ |
| 79140 | 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 | span>.<span.class="tok-kw">const |
| 79160 | 3c 2f 73 70 61 6e 3e 20 45 6e 64 69 61 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | </span>.Endian.=.<span.class="to |
| 79180 | 6b 2d 6b 77 22 3e 65 6e 75 6d 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 42 69 67 2c 0a 20 20 20 | k-kw">enum</span>.{.....Big,.... |
| 791a0 | 20 4c 69 74 74 6c 65 2c 0a 7d 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | .Little,.};..<span.class="tok-kw |
| 791c0 | 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 |
| 791e0 | 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 65 6e 64 69 61 6e 20 3d 20 45 6e 64 69 61 6e 2e 4c | ">const</span>.endian.=.Endian.L |
| 79200 | 69 74 74 6c 65 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 | ittle;.<span.class="tok-kw">pub< |
| 79220 | 2f 73 70 61 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 |
| 79240 | 74 3c 2f 73 70 61 6e 3e 20 69 73 5f 74 65 73 74 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | t</span>.is_test.=.<span.class=" |
| 79260 | 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c | tok-null">false</span>;.<span.cl |
| 79280 | 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 |
| 792a0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6f 73 20 3d 20 4f | ass="tok-kw">const</span>.os.=.O |
| 792c0 | 73 2e 6c 69 6e 75 78 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 | s.linux;.<span.class="tok-kw">pu |
| 792e0 | 62 3c 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | b</span>.<span.class="tok-kw">co |
| 79300 | 6e 73 74 3c 2f 73 70 61 6e 3e 20 61 72 63 68 20 3d 20 41 72 63 68 2e 78 38 36 5f 36 34 3b 0a 3c | nst</span>.arch.=.Arch.x86_64;.< |
| 79320 | 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>.< |
| 79340 | 73 70 61 6e 20 63 6c 61 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> |
| 79360 | 20 65 6e 76 69 72 6f 6e 20 3d 20 45 6e 76 69 72 6f 6e 2e 67 6e 75 3b 0a 3c 73 70 61 6e 20 63 6c | .environ.=.Environ.gnu;.<span.cl |
| 79380 | 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 |
| 793a0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6f 62 6a 65 63 74 | ass="tok-kw">const</span>.object |
| 793c0 | 5f 66 6f 72 6d 61 74 20 3d 20 4f 62 6a 65 63 74 46 6f 72 6d 61 74 2e 65 6c 66 3b 0a 3c 73 70 61 | _format.=.ObjectFormat.elf;.<spa |
| 793e0 | 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 |
| 79400 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6d 6f | n.class="tok-kw">const</span>.mo |
| 79420 | 64 65 20 3d 20 4d 6f 64 65 2e 44 65 62 75 67 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | de.=.Mode.Debug;.<span.class="to |
| 79440 | 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 |
| 79460 | 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 6c 69 6e 6b 5f 6c 69 62 63 20 3d 20 3c | k-kw">const</span>.link_libc.=.< |
| 79480 | 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 |
| 794a0 | 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c 2f 73 70 | n>;.<span.class="tok-kw">pub</sp |
| 794c0 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | an>.<span.class="tok-kw">const</ |
| 794e0 | 73 70 61 6e 3e 20 68 61 76 65 5f 65 72 72 6f 72 5f 72 65 74 75 72 6e 5f 74 72 61 63 69 6e 67 20 | span>.have_error_return_tracing. |
| 79500 | 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6c 6c 22 3e 66 61 6c 73 65 3c 2f | =.<span.class="tok-null">false</ |
| 79520 | 73 70 61 6e 3e 3b 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 3c | span>;.<span.class="tok-kw">pub< |
| 79540 | 2f 73 70 61 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 |
| 79560 | 74 3c 2f 73 70 61 6e 3e 20 5f 5f 7a 69 67 5f 74 65 73 74 5f 66 6e 5f 73 6c 69 63 65 20 3d 20 7b | t</span>.__zig_test_fn_slice.=.{ |
| 79580 | 7d 3b 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 | };.<span.class="tok-comment">//. |
| 795a0 | 6f 76 65 72 77 72 69 74 74 65 6e 20 6c 61 74 65 72 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c | overwritten.later</span></code>< |
| 795c0 | 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e | /pre>.......<p>See.also:</p><ul> |
| 795e0 | 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 42 75 69 6c 64 2d 4d 6f 64 65 22 3e 42 75 69 6c 64 | .<li><a.href="#Build-Mode">Build |
| 79600 | 20 4d 6f 64 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 | .Mode</a></li>.</ul>............ |
| 79620 | 20 20 20 3c 68 31 20 69 64 3d 22 52 6f 6f 74 2d 53 6f 75 72 63 65 2d 46 69 6c 65 22 3e 52 6f 6f | ...<h1.id="Root-Source-File">Roo |
| 79640 | 74 20 53 6f 75 72 63 65 20 46 69 6c 65 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 | t.Source.File</h1>........<p>TOD |
| 79660 | 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 69 6c 65 20 | O:.explain.how.root.source.file. |
| 79680 | 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 3c 70 3e 54 | finds.other.files</p>.......<p>T |
| 796a0 | 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 70 3e 54 4f | ODO:.pub.fn.main</p>.......<p>TO |
| 796c0 | 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 70 3e 54 4f | DO:.pub.fn.panic</p>.......<p>TO |
| 796e0 | 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 20 63 61 6e | DO:.if.linking.with.libc.you.can |
| 79700 | 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 20 20 3c 70 | .use.export.fn.main</p>.......<p |
| 79720 | 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 20 6c 65 76 | >TODO:.order.independent.top.lev |
| 79740 | 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 3e 54 4f 44 | el.declarations</p>.......<p>TOD |
| 79760 | 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 70 3e 54 4f | O:.lazy.analysis</p>.......<p>TO |
| 79780 | 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 70 6f 72 74 | DO:.using.comptime.{._.=.@import |
| 797a0 | 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 3d 22 5a 69 | ().}</p>..............<h1.id="Zi |
| 797c0 | 67 2d 54 65 73 74 22 3e 5a 69 67 20 54 65 73 74 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e | g-Test">Zig.Test</h1>........<p> |
| 797e0 | 54 4f 44 4f 3a 20 62 61 73 69 63 20 75 73 61 67 65 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 | TODO:.basic.usage</p>.......<p>T |
| 79800 | 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 70 3e | ODO:.lazy.analysis</p>.......<p> |
| 79820 | 54 4f 44 4f 3a 20 2d 2d 74 65 73 74 2d 66 69 6c 74 65 72 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | TODO:.--test-filter</p>.......<p |
| 79840 | 3e 54 4f 44 4f 3a 20 2d 2d 74 65 73 74 2d 6e 61 6d 65 2d 70 72 65 66 69 78 3c 2f 70 3e 0a 20 20 | >TODO:.--test-name-prefix</p>... |
| 79860 | 20 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 74 65 73 74 69 6e 67 20 69 6e 20 72 65 6c 65 61 73 65 66 | ....<p>TODO:.testing.in.releasef |
| 79880 | 61 73 74 20 61 6e 64 20 72 65 6c 65 61 73 65 73 61 66 65 20 6d 6f 64 65 2e 20 61 73 73 65 72 74 | ast.and.releasesafe.mode..assert |
| 798a0 | 20 73 74 69 6c 6c 20 77 6f 72 6b 73 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 | .still.works</p>..............<h |
| 798c0 | 31 20 69 64 3d 22 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 | 1.id="Zig-Build-System">Zig.Buil |
| 798e0 | 64 20 53 79 73 74 65 6d 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 65 78 | d.System</h1>........<p>TODO:.ex |
| 79900 | 70 6c 61 69 6e 20 70 75 72 70 6f 73 65 2c 20 69 74 27 73 20 73 75 70 70 6f 73 65 64 20 74 6f 20 | plain.purpose,.it's.supposed.to. |
| 79920 | 72 65 70 6c 61 63 65 20 6d 61 6b 65 2f 63 6d 61 6b 65 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e | replace.make/cmake</p>.......<p> |
| 79940 | 54 4f 44 4f 3a 20 65 78 61 6d 70 6c 65 20 6f 66 20 62 75 69 6c 64 69 6e 67 20 61 20 7a 69 67 20 | TODO:.example.of.building.a.zig. |
| 79960 | 65 78 65 63 75 74 61 62 6c 65 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 54 4f 44 4f 3a 20 65 78 | executable</p>.......<p>TODO:.ex |
| 79980 | 61 6d 70 6c 65 20 6f 66 20 62 75 69 6c 64 69 6e 67 20 61 20 43 20 6c 69 62 72 61 72 79 3c 2f 70 | ample.of.building.a.C.library</p |
| 799a0 | 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 43 22 3e 43 3c 2f 68 31 3e | >..............<h1.id="C">C</h1> |
| 799c0 | 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 41 6c 74 68 6f 75 67 68 20 5a 69 67 20 69 | ........<p>.......Although.Zig.i |
| 799e0 | 73 20 69 6e 64 65 70 65 6e 64 65 6e 74 20 6f 66 20 43 2c 20 61 6e 64 2c 20 75 6e 6c 69 6b 65 20 | s.independent.of.C,.and,.unlike. |
| 79a00 | 6d 6f 73 74 20 6f 74 68 65 72 20 6c 61 6e 67 75 61 67 65 73 2c 20 64 6f 65 73 20 6e 6f 74 20 64 | most.other.languages,.does.not.d |
| 79a20 | 65 70 65 6e 64 20 6f 6e 20 6c 69 62 63 2c 0a 20 20 20 20 20 20 5a 69 67 20 61 63 6b 6e 6f 77 6c | epend.on.libc,.......Zig.acknowl |
| 79a40 | 65 64 67 65 73 20 74 68 65 20 69 6d 70 6f 72 74 61 6e 63 65 20 6f 66 20 69 6e 74 65 72 61 63 74 | edges.the.importance.of.interact |
| 79a60 | 69 6e 67 20 77 69 74 68 20 65 78 69 73 74 69 6e 67 20 43 20 63 6f 64 65 2e 0a 20 20 20 20 20 20 | ing.with.existing.C.code........ |
| 79a80 | 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 54 68 65 72 65 20 61 72 65 20 61 | </p>.......<p>.......There.are.a |
| 79aa0 | 20 66 65 77 20 77 61 79 73 20 74 68 61 74 20 5a 69 67 20 66 61 63 69 6c 69 74 61 74 65 73 20 43 | .few.ways.that.Zig.facilitates.C |
| 79ac0 | 20 69 6e 74 65 72 6f 70 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 68 32 20 69 | .interop........</p>.......<h2.i |
| 79ae0 | 64 3d 22 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 | d="C-Type-Primitives">C.Type.Pri |
| 79b00 | 6d 69 74 69 76 65 73 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 | mitives</h2>........<p>.......Th |
| 79b20 | 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 6f 6d 70 61 74 | ese.have.guaranteed.C.ABI.compat |
| 79b40 | 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 65 20 61 6e 79 | ibility.and.can.be.used.like.any |
| 79b60 | 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 20 20 20 3c 75 | .other.type........</p>.......<u |
| 79b80 | 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 |
| 79ba0 | 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 73 68 6f 72 | g"><span.class="tok-type">c_shor |
| 79bc0 | 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 3c | t</span></code></li>...........< |
| 79be0 | 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 6e 20 63 6c 61 73 73 | li><code.class="zig"><span.class |
| 79c00 | 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 75 73 68 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 | ="tok-type">c_ushort</span></cod |
| 79c20 | 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 |
| 79c40 | 73 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 |
| 79c60 | 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 20 20 20 20 20 | _int</span></code></li>......... |
| 79c80 | 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 |
| 79ca0 | 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 3c 2f 63 6f | ass="tok-type">c_uint</span></co |
| 79cc0 | 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 |
| 79ce0 | 73 73 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"> |
| 79d00 | 63 5f 6c 6f 6e 67 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 | c_long</span></code></li>....... |
| 79d20 | 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. |
| 79d40 | 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 70 61 6e 3e 3c | class="tok-type">c_ulong</span>< |
| 79d60 | 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 20 | /code></li>...........<li><code. |
| 79d80 | 63 6c 61 73 73 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 |
| 79da0 | 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 3c 2f 6c 69 3e | e">c_longlong</span></code></li> |
| 79dc0 | 0a 20 20 20 20 20 20 20 20 20 20 3c 6c 69 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | ...........<li><code.class="zig" |
| 79de0 | 3e 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 75 6c 6f 6e 67 6c | ><span.class="tok-type">c_ulongl |
| 79e00 | 6f 6e 67 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 | ong</span></code></li>.......... |
| 79e20 | 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 |
| 79e40 | 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 63 5f 6c 6f 6e 67 64 6f 75 62 6c 65 3c 2f 73 70 61 6e | ss="tok-type">c_longdouble</span |
| 79e60 | 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 |
| 79e80 | 65 20 63 6c 61 73 73 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 |
| 79ea0 | 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 6c 69 3e 0a 20 | ype">c_void</span></code></li>.. |
| 79ec0 | 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 | .....</ul>.......<p>See.also:</p |
| 79ee0 | 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 50 72 69 6d 69 74 69 76 65 2d 54 79 | ><ul>.<li><a.href="#Primitive-Ty |
| 79f00 | 70 65 73 22 3e 50 72 69 6d 69 74 69 76 65 20 54 79 70 65 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f | pes">Primitive.Types</a></li>.</ |
| 79f20 | 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 43 2d 53 74 72 69 | ul>...............<h2.id="C-Stri |
| 79f40 | 6e 67 2d 4c 69 74 65 72 61 6c 73 22 3e 43 20 53 74 72 69 6e 67 20 4c 69 74 65 72 61 6c 73 3c 2f | ng-Literals">C.String.Literals</ |
| 79f60 | 68 32 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 74 2e | h2>........<p.class="file">test. |
| 79f80 | 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 |
| 79fa0 | 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> |
| 79fc0 | 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>. |
| 79fe0 | 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 70 75 74 73 3c 2f 73 70 61 6e 3e | <span.class="tok-fn">puts</span> |
| 7a000 | 28 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 | ([*]<span.class="tok-kw">const</ |
| 7a020 | 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< |
| 7a040 | 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 | /span>).<span.class="tok-type">v |
| 7a060 | 6f 69 64 3c 2f 73 70 61 6e 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 | oid</span>;..<span.class="tok-kw |
| 7a080 | 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 |
| 7a0a0 | 22 3e 66 6e 3c 2f 73 70 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" |
| 7a0c0 | 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- |
| 7a0e0 | 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 75 74 73 28 3c 73 70 | type">void</span>.{.....puts(<sp |
| 7a100 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 63 26 71 75 6f 74 3b 74 68 69 73 20 68 | an.class="tok-str">c"this.h |
| 7a120 | 61 73 20 61 20 6e 75 6c 6c 20 74 65 72 6d 69 6e 61 74 6f 72 26 71 75 6f 74 3b 3c 2f 73 70 61 6e | as.a.null.terminator"</span |
| 7a140 | 3e 29 3b 0a 20 20 20 20 70 75 74 73 28 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | >);.....puts(.........<span.clas |
| 7a160 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 63 5c 5c 61 6e 64 20 73 6f 0a 3c 2f 73 70 61 6e 3e 20 20 20 | s="tok-str">c\\and.so.</span>... |
| 7a180 | 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 63 5c 5c 64 6f | .....<span.class="tok-str">c\\do |
| 7a1a0 | 65 73 20 74 68 69 73 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | es.this.</span>........<span.cla |
| 7a1c0 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 63 5c 5c 6d 75 6c 74 69 6c 69 6e 65 20 43 20 73 74 72 69 | ss="tok-str">c\\multiline.C.stri |
| 7a1e0 | 6e 67 20 6c 69 74 65 72 61 6c 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 29 3b 0a 7d 3c 2f 63 6f 64 65 | ng.literal.</span>....);.}</code |
| 7a200 | 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"> |
| 7a220 | 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 2d 6c 69 62 72 61 | $.zig.build-exe.test.zig.--libra |
| 7a240 | 72 79 20 63 0a 24 20 2e 2f 74 65 73 74 0a 74 68 69 73 20 68 61 73 20 61 20 6e 75 6c 6c 20 74 65 | ry.c.$../test.this.has.a.null.te |
| 7a260 | 72 6d 69 6e 61 74 6f 72 0a 61 6e 64 20 73 6f 0a 64 6f 65 73 20 74 68 69 73 0a 6d 75 6c 74 69 6c | rminator.and.so.does.this.multil |
| 7a280 | 69 6e 65 20 43 20 73 74 72 69 6e 67 20 6c 69 74 65 72 61 6c 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 | ine.C.string.literal.</code></pr |
| 7a2a0 | 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 53 65 65 20 61 6c 73 6f 3a 3c 2f 70 3e 3c 75 6c 3e 0a 3c | e>........<p>See.also:</p><ul>.< |
| 7a2c0 | 6c 69 3e 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 22 3e 53 74 | li><a.href="#String-Literals">St |
| 7a2e0 | 72 69 6e 67 20 4c 69 74 65 72 61 6c 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 | ring.Literals</a></li>.</ul>.... |
| 7a300 | 20 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 49 6d 70 6f 72 74 2d 66 72 6f 6d 2d 43 | ...........<h2.id="Import-from-C |
| 7a320 | 2d 48 65 61 64 65 72 2d 46 69 6c 65 22 3e 49 6d 70 6f 72 74 20 66 72 6f 6d 20 43 20 48 65 61 64 | -Header-File">Import.from.C.Head |
| 7a340 | 65 72 20 46 69 6c 65 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 | er.File</h2>........<p>.......Th |
| 7a360 | 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= |
| 7a380 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 3c 2f 63 | "tok-builtin">@cImport</span></c |
| 7a3a0 | 6f 64 65 3e 20 62 75 69 6c 74 69 6e 20 66 75 6e 63 74 69 6f 6e 20 63 61 6e 20 62 65 20 75 73 65 | ode>.builtin.function.can.be.use |
| 7a3c0 | 64 0a 20 20 20 20 20 20 74 6f 20 64 69 72 65 63 74 6c 79 20 69 6d 70 6f 72 74 20 73 79 6d 62 6f | d.......to.directly.import.symbo |
| 7a3e0 | 6c 73 20 66 72 6f 6d 20 2e 68 20 66 69 6c 65 73 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | ls.from..h.files:.......</p>.... |
| 7a400 | 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>< |
| 7a420 | 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 |
| 7a440 | 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 20 3d 20 3c 73 70 61 | s="tok-kw">const</span>.c.=.<spa |
| 7a460 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6d 70 6f 72 74 3c 2f | n.class="tok-builtin">@cImport</ |
| 7a480 | 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 63 6f 6d | span>({.....<span.class="tok-com |
| 7a4a0 | 6d 65 6e 74 22 3e 2f 2f 20 53 65 65 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f | ment">//.See.https://github.com/ |
| 7a4c0 | 7a 69 67 6c 61 6e 67 2f 7a 69 67 2f 69 73 73 75 65 73 2f 35 31 35 3c 2f 73 70 61 6e 3e 0a 20 20 | ziglang/zig/issues/515</span>... |
| 7a4e0 | 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 |
| 7a500 | 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 |
| 7a520 | 22 3e 26 71 75 6f 74 3b 5f 4e 4f 5f 43 52 54 5f 53 54 44 49 4f 5f 49 4e 4c 49 4e 45 26 71 75 6f | ">"_NO_CRT_STDIO_INLINE&quo |
| 7a540 | 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" |
| 7a560 | 3e 26 71 75 6f 74 3b 31 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 | >"1"</span>);.....<spa |
| 7a580 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6e 63 6c 75 64 65 3c | n.class="tok-builtin">@cInclude< |
| 7a5a0 | 2f 73 70 61 6e 3e 28 3c 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 |
| 7a5c0 | 6f 74 3b 73 74 64 69 6f 2e 68 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 29 3b 0a 3c 73 | ot;stdio.h"</span>);.});.<s |
| 7a5e0 | 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 |
| 7a600 | 70 61 6e 20 63 6c 61 73 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 |
| 7a620 | 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>(). |
| 7a640 | 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 |
| 7a660 | 6e 3e 20 7b 0a 20 20 20 20 5f 20 3d 20 63 2e 70 72 69 6e 74 66 28 3c 73 70 61 6e 20 63 6c 61 73 | n>.{....._.=.c.printf(<span.clas |
| 7a680 | 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 63 26 71 75 6f 74 3b 68 65 6c 6c 6f 5c 6e 26 71 75 6f 74 3b | s="tok-str">c"hello\n" |
| 7a6a0 | 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 |
| 7a6c0 | 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 |
| 7a6e0 | 20 74 65 73 74 2e 7a 69 67 20 2d 2d 6c 69 62 72 61 72 79 20 63 0a 24 20 2e 2f 74 65 73 74 0a 68 | .test.zig.--library.c.$../test.h |
| 7a700 | 65 6c 6c 6f 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 | ello.</code></pre>........<p>... |
| 7a720 | 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. |
| 7a740 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 73 70 | class="tok-builtin">@cImport</sp |
| 7a760 | 61 6e 3e 3c 2f 63 6f 64 65 3e 20 66 75 6e 63 74 69 6f 6e 20 74 61 6b 65 73 20 61 6e 20 65 78 70 | an></code>.function.takes.an.exp |
| 7a780 | 72 65 73 73 69 6f 6e 20 61 73 20 61 20 70 61 72 61 6d 65 74 65 72 2e 0a 20 20 20 20 20 20 54 68 | ression.as.a.parameter........Th |
| 7a7a0 | 69 73 20 65 78 70 72 65 73 73 69 6f 6e 20 69 73 20 65 76 61 6c 75 61 74 65 64 20 61 74 20 63 6f | is.expression.is.evaluated.at.co |
| 7a7c0 | 6d 70 69 6c 65 2d 74 69 6d 65 20 61 6e 64 20 69 73 20 75 73 65 64 20 74 6f 20 63 6f 6e 74 72 6f | mpile-time.and.is.used.to.contro |
| 7a7e0 | 6c 0a 20 20 20 20 20 20 70 72 65 70 72 6f 63 65 73 73 6f 72 20 64 69 72 65 63 74 69 76 65 73 20 | l.......preprocessor.directives. |
| 7a800 | 61 6e 64 20 69 6e 63 6c 75 64 65 20 6d 75 6c 74 69 70 6c 65 20 2e 68 20 66 69 6c 65 73 3a 0a 20 | and.include.multiple..h.files:.. |
| 7a820 | 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 |
| 7a840 | 3d 22 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 |
| 7a860 | 74 3c 2f 73 70 61 6e 3e 20 62 75 69 6c 74 69 6e 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | t</span>.builtin.=.<span.class=" |
| 7a880 | 74 6f 6b 2d 62 75 69 6c 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 |
| 7a8a0 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 75 69 6c 74 69 6e 26 | n.class="tok-str">"builtin& |
| 7a8c0 | 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 |
| 7a8e0 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 63 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 | -kw">const</span>.c.=.<span.clas |
| 7a900 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6d 70 6f 72 74 3c 2f 73 70 61 6e 3e 28 | s="tok-builtin">@cImport</span>( |
| 7a920 | 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e | {.....<span.class="tok-builtin"> |
| 7a940 | 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 |
| 7a960 | 2d 73 74 72 22 3e 26 71 75 6f 74 3b 4e 44 45 42 55 47 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c | -str">"NDEBUG"</span>, |
| 7a980 | 20 62 75 69 6c 74 69 6e 2e 6d 6f 64 65 20 3d 3d 20 62 75 69 6c 74 69 6e 2e 4d 6f 64 65 2e 52 65 | .builtin.mode.==.builtin.Mode.Re |
| 7a9a0 | 6c 65 61 73 65 46 61 73 74 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | leaseFast);.....<span.class="tok |
| 7a9c0 | 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 73 6f 6d 65 74 68 69 6e 67 29 20 7b 0a 20 20 20 | -kw">if</span>.(something).{.... |
| 7a9e0 | 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">@ |
| 7aa00 | 63 44 65 66 69 6e 65 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d | cDefine</span>(<span.class="tok- |
| 7aa20 | 73 74 72 22 3e 26 71 75 6f 74 3b 5f 47 4e 55 5f 53 4f 55 52 43 45 26 71 75 6f 74 3b 3c 2f 73 70 | str">"_GNU_SOURCE"</sp |
| 7aa40 | 61 6e 3e 2c 20 7b 7d 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | an>,.{});.....}.....<span.class= |
| 7aa60 | 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6e 63 6c 75 64 65 3c 2f 73 70 61 6e 3e 28 3c | "tok-builtin">@cInclude</span>(< |
| 7aa80 | 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 74 64 6c 69 | span.class="tok-str">"stdli |
| 7aaa0 | 62 2e 68 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 | b.h"</span>);.....<span.cla |
| 7aac0 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 69 66 3c 2f 73 70 61 6e 3e 20 28 73 6f 6d 65 74 68 69 6e 67 | ss="tok-kw">if</span>.(something |
| 7aae0 | 29 20 7b 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 | ).{.........<span.class="tok-bui |
| 7ab00 | 6c 74 69 6e 22 3e 40 63 55 6e 64 65 66 3c 2f 73 70 61 6e 3e 28 3c 73 70 61 6e 20 63 6c 61 73 73 | ltin">@cUndef</span>(<span.class |
| 7ab20 | 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 5f 47 4e 55 5f 53 4f 55 52 43 45 26 71 75 6f | ="tok-str">"_GNU_SOURCE&quo |
| 7ab40 | 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 | t;</span>);.....}.....<span.clas |
| 7ab60 | 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 3e 40 63 49 6e 63 6c 75 64 65 3c 2f 73 70 61 6e 3e | s="tok-builtin">@cInclude</span> |
| 7ab80 | 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 73 6f 75 | (<span.class="tok-str">"sou |
| 7aba0 | 6e 64 69 6f 2e 68 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 7d 29 3b 3c 2f 63 6f 64 65 3e | ndio.h"</span>);.});</code> |
| 7abc0 | 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 |
| 7abe0 | 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 49 6d 70 6f 72 74 22 3e 40 63 49 6d 70 6f 72 | >.<li><a.href="#cImport">@cImpor |
| 7ac00 | 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 63 49 6e 63 6c 75 64 | t</a></li>.<li><a.href="#cInclud |
| 7ac20 | 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 68 72 65 | e">@cInclude</a></li>.<li><a.hre |
| 7ac40 | 66 3d 22 23 63 44 65 66 69 6e 65 22 3e 40 63 44 65 66 69 6e 65 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c | f="#cDefine">@cDefine</a></li>.< |
| 7ac60 | 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 2f 61 3e | li><a.href="#cUndef">@cUndef</a> |
| 7ac80 | 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 69 6d 70 6f 72 74 22 3e 40 69 6d 70 | </li>.<li><a.href="#import">@imp |
| 7aca0 | 6f 72 74 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 | ort</a></li>.</ul>.............. |
| 7acc0 | 20 3c 68 32 20 69 64 3d 22 45 78 70 6f 72 74 69 6e 67 2d 61 2d 43 2d 4c 69 62 72 61 72 79 22 3e | .<h2.id="Exporting-a-C-Library"> |
| 7ace0 | 45 78 70 6f 72 74 69 6e 67 20 61 20 43 20 4c 69 62 72 61 72 79 3c 2f 68 32 3e 0a 0a 20 20 20 20 | Exporting.a.C.Library</h2>...... |
| 7ad00 | 20 20 3c 70 3e 0a 20 20 20 20 20 20 4f 6e 65 20 6f 66 20 74 68 65 20 70 72 69 6d 61 72 79 20 75 | ..<p>.......One.of.the.primary.u |
| 7ad20 | 73 65 20 63 61 73 65 73 20 66 6f 72 20 5a 69 67 20 69 73 20 65 78 70 6f 72 74 69 6e 67 20 61 20 | se.cases.for.Zig.is.exporting.a. |
| 7ad40 | 6c 69 62 72 61 72 79 20 77 69 74 68 20 74 68 65 20 43 20 41 42 49 20 66 6f 72 20 6f 74 68 65 72 | library.with.the.C.ABI.for.other |
| 7ad60 | 20 70 72 6f 67 72 61 6d 6d 69 6e 67 20 6c 61 6e 67 75 61 67 65 73 0a 20 20 20 20 20 20 74 6f 20 | .programming.languages.......to. |
| 7ad80 | 63 61 6c 6c 20 69 6e 74 6f 2e 20 54 68 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 | call.into..The.<code.class="zig" |
| 7ada0 | 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 |
| 7adc0 | 61 6e 3e 3c 2f 63 6f 64 65 3e 20 6b 65 79 77 6f 72 64 20 69 6e 20 66 72 6f 6e 74 20 6f 66 20 66 | an></code>.keyword.in.front.of.f |
| 7ade0 | 75 6e 63 74 69 6f 6e 73 2c 20 76 61 72 69 61 62 6c 65 73 2c 20 61 6e 64 20 74 79 70 65 73 20 63 | unctions,.variables,.and.types.c |
| 7ae00 | 61 75 73 65 73 20 74 68 65 6d 20 74 6f 0a 20 20 20 20 20 20 62 65 20 70 61 72 74 20 6f 66 20 74 | auses.them.to.......be.part.of.t |
| 7ae20 | 68 65 20 6c 69 62 72 61 72 79 20 41 50 49 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | he.library.API:.......</p>...... |
| 7ae40 | 20 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 6d 61 74 68 74 65 73 74 2e 7a 69 67 3c 2f 70 | .<p.class="file">mathtest.zig</p |
| 7ae60 | 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">< |
| 7ae80 | 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 |
| 7aea0 | 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> |
| 7aec0 | 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 3e | .<span.class="tok-fn">add</span> |
| 7aee0 | 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 2f | (a:.<span.class="tok-type">i32</ |
| 7af00 | 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 22 | span>,.b:.<span.class="tok-type" |
| 7af20 | 3e 69 33 32 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 | >i32</span>).<span.class="tok-ty |
| 7af40 | 70 65 22 3e 69 33 32 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | pe">i32</span>.{.....<span.class |
| 7af60 | 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 7d | ="tok-kw">return</span>.a.+.b;.} |
| 7af80 | 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 61 | </code></pre>.......<p>To.make.a |
| 7afa0 | 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 3e | .shared.library:</p>.......<pre> |
| 7afc0 | 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- |
| 7afe0 | 6c 69 62 20 6d 61 74 68 74 65 73 74 2e 7a 69 67 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 | lib.mathtest.zig.</code></pre>.. |
| 7b000 | 20 20 20 20 20 3c 70 3e 54 6f 20 6d 61 6b 65 20 61 20 73 74 61 74 69 63 20 6c 69 62 72 61 72 79 | .....<p>To.make.a.static.library |
| 7b020 | 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 73 68 | :</p>.......<pre><code.class="sh |
| 7b040 | 65 6c 6c 22 3e 24 20 7a 69 67 20 62 75 69 6c 64 2d 6c 69 62 20 6d 61 74 68 74 65 73 74 2e 7a 69 | ell">$.zig.build-lib.mathtest.zi |
| 7b060 | 67 20 2d 2d 73 74 61 74 69 63 0a 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c | g.--static.</code></pre>.......< |
| 7b080 | 70 3e 48 65 72 65 20 69 73 20 61 6e 20 65 78 61 6d 70 6c 65 20 77 69 74 68 20 74 68 65 20 3c 61 | p>Here.is.an.example.with.the.<a |
| 7b0a0 | 20 68 72 65 66 3d 22 23 5a 69 67 2d 42 75 69 6c 64 2d 53 79 73 74 65 6d 22 3e 5a 69 67 20 42 75 | .href="#Zig-Build-System">Zig.Bu |
| 7b0c0 | 69 6c 64 20 53 79 73 74 65 6d 3c 2f 61 3e 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 | ild.System</a>:</p>.......<p.cla |
| 7b0e0 | 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> |
| 7b100 | 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 |
| 7b120 | 20 69 73 20 67 65 6e 65 72 61 74 65 64 20 62 79 20 7a 69 67 20 66 72 6f 6d 20 6d 61 74 68 74 65 | .is.generated.by.zig.from.mathte |
| 7b140 | 73 74 2e 7a 69 67 0a 23 69 6e 63 6c 75 64 65 20 22 6d 61 74 68 74 65 73 74 2e 68 22 0a 23 69 6e | st.zig.#include."mathtest.h".#in |
| 7b160 | 63 6c 75 64 65 20 26 6c 74 3b 61 73 73 65 72 74 2e 68 26 67 74 3b 0a 0a 69 6e 74 20 6d 61 69 6e | clude.<assert.h>..int.main |
| 7b180 | 28 69 6e 74 20 61 72 67 63 2c 20 63 68 61 72 20 2a 2a 61 72 67 76 29 20 7b 0a 20 20 20 20 61 73 | (int.argc,.char.**argv).{.....as |
| 7b1a0 | 73 65 72 74 28 61 64 64 28 34 32 2c 20 31 33 33 37 29 20 3d 3d 20 31 33 37 39 29 3b 0a 20 20 20 | sert(add(42,.1337).==.1379);.... |
| 7b1c0 | 20 72 65 74 75 72 6e 20 30 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 | .return.0;.}</code></pre>....... |
| 7b1e0 | 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 62 75 69 6c 64 2e 7a 69 67 3c 2f 70 3e 0a 20 20 | <p.class="file">build.zig</p>... |
| 7b200 | 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 |
| 7b220 | 20 63 6c 61 73 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 | .class="tok-kw">const</span>.Bui |
| 7b240 | 6c 64 65 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 62 75 69 6c 74 69 6e 22 | lder.=.<span.class="tok-builtin" |
| 7b260 | 3e 40 69 6d 70 6f 72 74 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 |
| 7b280 | 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 62 75 | -str">"std"</span>).bu |
| 7b2a0 | 69 6c 64 2e 42 75 69 6c 64 65 72 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b | ild.Builder;..<span.class="tok-k |
| 7b2c0 | 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 |
| 7b2e0 | 77 22 3e 66 6e 3c 2f 73 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 |
| 7b300 | 22 3e 62 75 69 6c 64 3c 2f 73 70 61 6e 3e 28 62 3a 20 2a 42 75 69 6c 64 65 72 29 20 3c 73 70 61 | ">build</span>(b:.*Builder).<spa |
| 7b320 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b | n.class="tok-type">void</span>.{ |
| 7b340 | 0a 20 20 20 20 3c 73 70 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< |
| 7b360 | 2f 73 70 61 6e 3e 20 6c 69 62 20 3d 20 62 2e 61 64 64 53 68 61 72 65 64 4c 69 62 72 61 72 79 28 | /span>.lib.=.b.addSharedLibrary( |
| 7b380 | 3c 73 70 61 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 | <span.class="tok-str">"math |
| 7b3a0 | 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 73 73 3d 22 | test"</span>,.<span.class=" |
| 7b3c0 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 6d 61 74 68 74 65 73 74 2e 7a 69 67 26 71 75 6f 74 | tok-str">"mathtest.zig" |
| 7b3e0 | 3b 3c 2f 73 70 61 6e 3e 2c 20 62 2e 76 65 72 73 69 6f 6e 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d | ;</span>,.b.version(<span.class= |
| 7b400 | 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 31 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 | "tok-number">1</span>,.<span.cla |
| 7b420 | 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 | ss="tok-number">0</span>,.<span. |
| 7b440 | 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 0a | class="tok-number">0</span>));.. |
| 7b460 | 20 20 20 20 3c 73 70 61 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</ |
| 7b480 | 73 70 61 6e 3e 20 65 78 65 20 3d 20 62 2e 61 64 64 43 45 78 65 63 75 74 61 62 6c 65 28 3c 73 70 | span>.exe.=.b.addCExecutable(<sp |
| 7b4a0 | 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 65 73 74 26 71 75 | an.class="tok-str">"test&qu |
| 7b4c0 | 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 65 2e 61 64 64 43 6f 6d 70 69 6c 65 46 | ot;</span>);.....exe.addCompileF |
| 7b4e0 | 6c 61 67 73 28 5b 5d 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 | lags([][]<span.class="tok-kw">co |
| 7b500 | 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 |
| 7b520 | 22 3e 75 38 3c 2f 73 70 61 6e 3e 7b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 | ">u8</span>{<span.class="tok-str |
| 7b540 | 22 3e 26 71 75 6f 74 3b 2d 73 74 64 3d 63 39 39 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 7d 29 3b | ">"-std=c99"</span>}); |
| 7b560 | 0a 20 20 20 20 65 78 65 2e 61 64 64 53 6f 75 72 63 65 46 69 6c 65 28 3c 73 70 61 6e 20 63 6c 61 | .....exe.addSourceFile(<span.cla |
| 7b580 | 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 65 73 74 2e 63 26 71 75 6f 74 3b 3c | ss="tok-str">"test.c"< |
| 7b5a0 | 2f 73 70 61 6e 3e 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 | /span>);.....exe.linkLibrary(lib |
| 7b5c0 | 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 64 4f 6e 28 | );......b.default_step.dependOn( |
| 7b5e0 | 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 6c 61 73 73 | &exe.step);......<span.class |
| 7b600 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 72 75 6e 5f 63 6d 64 20 3d | ="tok-kw">const</span>.run_cmd.= |
| 7b620 | 20 62 2e 61 64 64 43 6f 6d 6d 61 6e 64 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 | .b.addCommand(<span.class="tok-s |
| 7b640 | 74 72 22 3e 26 71 75 6f 74 3b 2e 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 2c 20 62 2e 65 6e 76 5f | tr">"."</span>,.b.env_ |
| 7b660 | 6d 61 70 2c 20 5b 5d 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 | map,.[][]<span.class="tok-kw">co |
| 7b680 | 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 |
| 7b6a0 | 22 3e 75 38 3c 2f 73 70 61 6e 3e 7b 65 78 65 2e 67 65 74 4f 75 74 70 75 74 50 61 74 68 28 29 7d | ">u8</span>{exe.getOutputPath()} |
| 7b6c0 | 29 3b 0a 20 20 20 20 72 75 6e 5f 63 6d 64 2e 73 74 65 70 2e 64 65 70 65 6e 64 4f 6e 28 26 61 6d | );.....run_cmd.step.dependOn(&am |
| 7b6e0 | 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 6c 61 73 73 3d 22 74 | p;exe.step);......<span.class="t |
| 7b700 | 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 20 3d 20 | ok-kw">const</span>.test_step.=. |
| 7b720 | 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 26 71 75 | b.step(<span.class="tok-str">&qu |
| 7b740 | 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 73 | ot;test"</span>,.<span.clas |
| 7b760 | 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 6f 67 72 | s="tok-str">"Test.the.progr |
| 7b780 | 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 65 70 2e | am"</span>);.....test_step. |
| 7b7a0 | 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 7d 3c 2f | dependOn(&run_cmd.step);.}</ |
| 7b7c0 | 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 6c 65 | code></pre>.......<p.class="file |
| 7b7e0 | 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 64 65 20 | ">terminal</p>.......<pre><code. |
| 7b800 | 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 2e 2f 74 65 | class="shell">$.zig.build.$../te |
| 7b820 | 73 74 0a 24 20 65 63 68 6f 20 24 3f 0a 30 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 | st.$.echo.$?.0</code></pre>..... |
| 7b840 | 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 46 | .........<h2.id="Mixing-Object-F |
| 7b860 | 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 68 32 3e 0a 0a | iles">Mixing.Object.Files</h2>.. |
| 7b880 | 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 20 59 6f 75 20 63 61 6e 20 6d 69 78 20 5a 69 67 20 | ......<p>.......You.can.mix.Zig. |
| 7b8a0 | 6f 62 6a 65 63 74 20 66 69 6c 65 73 20 77 69 74 68 20 61 6e 79 20 6f 74 68 65 72 20 6f 62 6a 65 | object.files.with.any.other.obje |
| 7b8c0 | 63 74 20 66 69 6c 65 73 20 74 68 61 74 20 72 65 73 70 65 63 74 20 74 68 65 20 43 20 41 42 49 2e | ct.files.that.respect.the.C.ABI. |
| 7b8e0 | 20 45 78 61 6d 70 6c 65 3a 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c | .Example:.......</p>.......<p.cl |
| 7b900 | 61 73 73 3d 22 66 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 | ass="file">base64.zig</p>....... |
| 7b920 | 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 |
| 7b940 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 61 73 65 36 34 20 | ss="tok-kw">const</span>.base64. |
| 7b960 | 3d 20 3c 73 70 61 6e 20 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 |
| 7b980 | 6f 72 74 3c 2f 73 70 61 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" |
| 7b9a0 | 3e 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 62 61 73 65 36 34 3b | >"std"</span>).base64; |
| 7b9c0 | 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 65 78 70 6f 72 74 3c 2f 73 | ..<span.class="tok-kw">export</s |
| 7b9e0 | 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 66 6e 3c 2f 73 70 | pan>.<span.class="tok-kw">fn</sp |
| 7ba00 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 64 65 63 6f 64 65 5f | an>.<span.class="tok-fn">decode_ |
| 7ba20 | 62 61 73 65 5f 36 34 3c 2f 73 70 61 6e 3e 28 0a 20 20 20 20 64 65 73 74 5f 70 74 72 3a 20 5b 2a | base_64</span>(.....dest_ptr:.[* |
| 7ba40 | 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 |
| 7ba60 | 3e 2c 0a 20 20 20 20 64 65 73 74 5f 6c 65 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | >,.....dest_len:.<span.class="to |
| 7ba80 | 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 73 6f 75 72 63 65 | k-type">usize</span>,.....source |
| 7baa0 | 5f 70 74 72 3a 20 5b 2a 5d 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f | _ptr:.[*]<span.class="tok-kw">co |
| 7bac0 | 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 |
| 7bae0 | 22 3e 75 38 3c 2f 73 70 61 6e 3e 2c 0a 20 20 20 20 73 6f 75 72 63 65 5f 6c 65 6e 3a 20 3c 73 70 | ">u8</span>,.....source_len:.<sp |
| 7bb00 | 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> |
| 7bb20 | 2c 0a 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 | ,.).<span.class="tok-type">usize |
| 7bb40 | 3c 2f 73 70 61 6e 3e 20 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 |
| 7bb60 | 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 73 72 63 20 3d 20 73 6f 75 72 63 65 5f 70 74 72 | w">const</span>.src.=.source_ptr |
| 7bb80 | 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 |
| 7bba0 | 6e 3e 2e 2e 73 6f 75 72 63 65 5f 6c 65 6e 5d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 | n>..source_len];.....<span.class |
| 7bbc0 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 64 65 73 74 20 3d 20 64 65 | ="tok-kw">const</span>.dest.=.de |
| 7bbe0 | 73 74 5f 70 74 72 5b 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e | st_ptr[<span.class="tok-number"> |
| 7bc00 | 30 3c 2f 73 70 61 6e 3e 2e 2e 64 65 73 74 5f 6c 65 6e 5d 3b 0a 20 20 20 20 3c 73 70 61 6e 20 63 | 0</span>..dest_len];.....<span.c |
| 7bc20 | 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 62 61 73 65 36 | lass="tok-kw">const</span>.base6 |
| 7bc40 | 34 5f 64 65 63 6f 64 65 72 20 3d 20 62 61 73 65 36 34 2e 73 74 61 6e 64 61 72 64 5f 64 65 63 6f | 4_decoder.=.base64.standard_deco |
| 7bc60 | 64 65 72 5f 75 6e 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 | der_unsafe;.....<span.class="tok |
| 7bc80 | 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 64 65 63 6f 64 65 64 5f 73 69 7a 65 20 3d | -kw">const</span>.decoded_size.= |
| 7bca0 | 20 62 61 73 65 36 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 | .base64_decoder.calcSize(src);.. |
| 7bcc0 | 20 20 20 62 61 73 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 | ...base64_decoder.decode(dest[<s |
| 7bce0 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6e 75 6d 62 65 72 22 3e 30 3c 2f 73 70 61 6e 3e 2e | pan.class="tok-number">0</span>. |
| 7bd00 | 2e 64 65 63 6f 64 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 | .decoded_size],.src);.....<span. |
| 7bd20 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 64 65 63 | class="tok-kw">return</span>.dec |
| 7bd40 | 6f 64 65 64 5f 73 69 7a 65 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 | oded_size;.}</code></pre>....... |
| 7bd60 | 3c 70 20 63 6c 61 73 73 3d 22 66 69 6c 65 22 3e 74 65 73 74 2e 63 3c 2f 70 3e 0a 20 20 20 20 20 | <p.class="file">test.c</p>...... |
| 7bd80 | 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 63 70 70 22 3e 2f 2f 20 54 68 69 73 20 | .<pre><code.class="cpp">//.This. |
| 7bda0 | 68 65 61 64 65 72 20 69 73 20 67 65 6e 65 72 61 74 65 64 20 62 79 20 7a 69 67 20 66 72 6f 6d 20 | header.is.generated.by.zig.from. |
| 7bdc0 | 62 61 73 65 36 34 2e 7a 69 67 0a 23 69 6e 63 6c 75 64 65 20 22 62 61 73 65 36 34 2e 68 22 0a 0a | base64.zig.#include."base64.h".. |
| 7bde0 | 23 69 6e 63 6c 75 64 65 20 26 6c 74 3b 73 74 72 69 6e 67 2e 68 26 67 74 3b 0a 23 69 6e 63 6c 75 | #include.<string.h>.#inclu |
| 7be00 | 64 65 20 26 6c 74 3b 73 74 64 69 6f 2e 68 26 67 74 3b 0a 0a 69 6e 74 20 6d 61 69 6e 28 69 6e 74 | de.<stdio.h>..int.main(int |
| 7be20 | 20 61 72 67 63 2c 20 63 68 61 72 20 2a 2a 61 72 67 76 29 20 7b 0a 20 20 20 20 63 6f 6e 73 74 20 | .argc,.char.**argv).{.....const. |
| 7be40 | 63 68 61 72 20 2a 65 6e 63 6f 64 65 64 20 3d 20 22 59 57 78 73 49 48 6c 76 64 58 49 67 59 6d 46 | char.*encoded.=."YWxsIHlvdXIgYmF |
| 7be60 | 7a 5a 53 42 68 63 6d 55 67 59 6d 56 73 62 32 35 6e 49 48 52 76 49 48 56 7a 22 3b 0a 20 20 20 20 | zZSBhcmUgYmVsb25nIHRvIHVz";..... |
| 7be80 | 63 68 61 72 20 62 75 66 5b 32 30 30 5d 3b 0a 0a 20 20 20 20 73 69 7a 65 5f 74 20 6c 65 6e 20 3d | char.buf[200];......size_t.len.= |
| 7bea0 | 20 64 65 63 6f 64 65 5f 62 61 73 65 5f 36 34 28 62 75 66 2c 20 32 30 30 2c 20 65 6e 63 6f 64 65 | .decode_base_64(buf,.200,.encode |
| 7bec0 | 64 2c 20 73 74 72 6c 65 6e 28 65 6e 63 6f 64 65 64 29 29 3b 0a 20 20 20 20 62 75 66 5b 6c 65 6e | d,.strlen(encoded));.....buf[len |
| 7bee0 | 5d 20 3d 20 30 3b 0a 20 20 20 20 70 75 74 73 28 62 75 66 29 3b 0a 0a 20 20 20 20 72 65 74 75 72 | ].=.0;.....puts(buf);......retur |
| 7bf00 | 6e 20 30 3b 0a 7d 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 20 63 6c 61 | n.0;.}</code></pre>.......<p.cla |
| 7bf20 | 73 73 3d 22 66 69 6c 65 22 3e 62 75 69 6c 64 2e 7a 69 67 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 | ss="file">build.zig</p>.......<p |
| 7bf40 | 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 |
| 7bf60 | 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 42 75 69 6c 64 65 72 20 3d | ="tok-kw">const</span>.Builder.= |
| 7bf80 | 20 3c 73 70 61 6e 20 63 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 |
| 7bfa0 | 72 74 3c 2f 73 70 61 6e 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"> |
| 7bfc0 | 26 71 75 6f 74 3b 73 74 64 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 2e 62 75 69 6c 64 2e 42 75 | "std"</span>).build.Bu |
| 7bfe0 | 69 6c 64 65 72 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 70 75 62 | ilder;..<span.class="tok-kw">pub |
| 7c000 | 3c 2f 73 70 61 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< |
| 7c020 | 2f 73 70 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 62 75 69 6c | /span>.<span.class="tok-fn">buil |
| 7c040 | 64 3c 2f 73 70 61 6e 3e 28 62 3a 20 2a 42 75 69 6c 64 65 72 29 20 3c 73 70 61 6e 20 63 6c 61 73 | d</span>(b:.*Builder).<span.clas |
| 7c060 | 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>.{.....< |
| 7c080 | 73 70 61 6e 20 63 6c 61 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> |
| 7c0a0 | 20 6f 62 6a 20 3d 20 62 2e 61 64 64 4f 62 6a 65 63 74 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | .obj.=.b.addObject(<span.class=" |
| 7c0c0 | 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 62 61 73 65 36 34 26 71 75 6f 74 3b 3c 2f 73 70 61 | tok-str">"base64"</spa |
| 7c0e0 | 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b | n>,.<span.class="tok-str">" |
| 7c100 | 62 61 73 65 36 34 2e 7a 69 67 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 3c | base64.zig"</span>);......< |
| 7c120 | 73 70 61 6e 20 63 6c 61 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> |
| 7c140 | 20 65 78 65 20 3d 20 62 2e 61 64 64 43 45 78 65 63 75 74 61 62 6c 65 28 3c 73 70 61 6e 20 63 6c | .exe.=.b.addCExecutable(<span.cl |
| 7c160 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 65 73 74 26 71 75 6f 74 3b 3c 2f | ass="tok-str">"test"</ |
| 7c180 | 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 65 2e 61 64 64 43 6f 6d 70 69 6c 65 46 6c 61 67 73 28 | span>);.....exe.addCompileFlags( |
| 7c1a0 | 5b 5d 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</ |
| 7c1c0 | 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< |
| 7c1e0 | 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 |
| 7c200 | 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 |
| 7c220 | 6e 3e 2c 0a 20 20 20 20 7d 29 3b 0a 20 20 20 20 65 78 65 2e 61 64 64 53 6f 75 72 63 65 46 69 6c | n>,.....});.....exe.addSourceFil |
| 7c240 | 65 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 74 65 | e(<span.class="tok-str">"te |
| 7c260 | 73 74 2e 63 26 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 20 20 20 20 65 78 65 2e 61 64 64 4f | st.c"</span>);.....exe.addO |
| 7c280 | 62 6a 65 63 74 28 6f 62 6a 29 3b 0a 20 20 20 20 65 78 65 2e 73 65 74 4f 75 74 70 75 74 50 61 74 | bject(obj);.....exe.setOutputPat |
| 7c2a0 | 68 28 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 26 71 75 6f 74 3b 2e 26 | h(<span.class="tok-str">".& |
| 7c2c0 | 71 75 6f 74 3b 3c 2f 73 70 61 6e 3e 29 3b 0a 0a 20 20 20 20 62 2e 64 65 66 61 75 6c 74 5f 73 74 | quot;</span>);......b.default_st |
| 7c2e0 | 65 70 2e 64 65 70 65 6e 64 4f 6e 28 26 61 6d 70 3b 65 78 65 2e 73 74 65 70 29 3b 0a 7d 3c 2f 63 | ep.dependOn(&exe.step);.}</c |
| 7c300 | 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 6c 65 22 | ode></pre>.......<p.class="file" |
| 7c320 | 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 64 65 20 63 | >terminal</p>.......<pre><code.c |
| 7c340 | 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 2e 2f 74 65 73 | lass="shell">$.zig.build.$../tes |
| 7c360 | 74 0a 61 6c 6c 20 79 6f 75 72 20 62 61 73 65 20 61 72 65 20 62 65 6c 6f 6e 67 20 74 6f 20 75 73 | t.all.your.base.are.belong.to.us |
| 7c380 | 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 73 6f 3a | </code></pre>.......<p>See.also: |
| 7c3a0 | 3c 2f 70 3e 3c 75 6c 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 54 61 72 67 65 74 73 22 3e | </p><ul>.<li><a.href="#Targets"> |
| 7c3c0 | 54 61 72 67 65 74 73 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 23 5a | Targets</a></li>.<li><a.href="#Z |
| 7c3e0 | 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 74 65 | ig-Build-System">Zig.Build.Syste |
| 7c400 | 6d 3c 2f 61 3e 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 0a 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a | m</a></li>.</ul>................ |
| 7c420 | 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 54 61 72 67 65 74 73 22 3e 54 61 72 67 65 74 73 3c 2f | ......<h1.id="Targets">Targets</ |
| 7c440 | 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 74 | h1>........<p>.......Zig.support |
| 7c460 | 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 74 | s.generating.code.for.all.target |
| 7c480 | 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 20 | s.that.LLVM.supports..Here.is... |
| 7c4a0 | 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 74 | ....what.it.looks.like.to.execut |
| 7c4c0 | 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 20 | e.<code>zig.targets</code>.on.a. |
| 7c4e0 | 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 20 | Linux.x86_64.......computer:.... |
| 7c500 | 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=" |
| 7c520 | 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 72 | shell">$.zig.targets.Architectur |
| 7c540 | 65 73 3a 0a 20 20 61 72 6d 76 38 5f 32 61 0a 20 20 61 72 6d 76 38 5f 31 61 0a 20 20 61 72 6d 76 | es:...armv8_2a...armv8_1a...armv |
| 7c560 | 38 0a 20 20 61 72 6d 76 38 72 0a 20 20 61 72 6d 76 38 6d 5f 62 61 73 65 6c 69 6e 65 0a 20 20 61 | 8...armv8r...armv8m_baseline...a |
| 7c580 | 72 6d 76 38 6d 5f 6d 61 69 6e 6c 69 6e 65 0a 20 20 61 72 6d 76 37 0a 20 20 61 72 6d 76 37 65 6d | rmv8m_mainline...armv7...armv7em |
| 7c5a0 | 0a 20 20 61 72 6d 76 37 6d 0a 20 20 61 72 6d 76 37 73 0a 20 20 61 72 6d 76 37 6b 0a 20 20 61 72 | ...armv7m...armv7s...armv7k...ar |
| 7c5c0 | 6d 76 37 76 65 0a 20 20 61 72 6d 76 36 0a 20 20 61 72 6d 76 36 6d 0a 20 20 61 72 6d 76 36 6b 0a | mv7ve...armv6...armv6m...armv6k. |
| 7c5e0 | 20 20 61 72 6d 76 36 74 32 0a 20 20 61 72 6d 76 35 0a 20 20 61 72 6d 76 35 74 65 0a 20 20 61 72 | ..armv6t2...armv5...armv5te...ar |
| 7c600 | 6d 76 34 74 0a 20 20 61 72 6d 65 62 0a 20 20 61 61 72 63 68 36 34 0a 20 20 61 61 72 63 68 36 34 | mv4t...armeb...aarch64...aarch64 |
| 7c620 | 5f 62 65 0a 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 | _be...avr...bpfel...bpfeb...hexa |
| 7c640 | 67 6f 6e 0a 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 | gon...mips...mipsel...mips64...m |
| 7c660 | 69 70 73 36 34 65 6c 0a 20 20 6d 73 70 34 33 30 0a 20 20 6e 69 6f 73 32 0a 20 20 70 6f 77 65 72 | ips64el...msp430...nios2...power |
| 7c680 | 70 63 0a 20 20 70 6f 77 65 72 70 63 36 34 0a 20 20 70 6f 77 65 72 70 63 36 34 6c 65 0a 20 20 72 | pc...powerpc64...powerpc64le...r |
| 7c6a0 | 36 30 30 0a 20 20 61 6d 64 67 63 6e 0a 20 20 72 69 73 63 76 33 32 0a 20 20 72 69 73 63 76 36 34 | 600...amdgcn...riscv32...riscv64 |
| 7c6c0 | 0a 20 20 73 70 61 72 63 0a 20 20 73 70 61 72 63 76 39 0a 20 20 73 70 61 72 63 65 6c 0a 20 20 73 | ...sparc...sparcv9...sparcel...s |
| 7c6e0 | 33 39 30 78 0a 20 20 74 63 65 0a 20 20 74 63 65 6c 65 0a 20 20 74 68 75 6d 62 0a 20 20 74 68 75 | 390x...tce...tcele...thumb...thu |
| 7c700 | 6d 62 65 62 0a 20 20 69 33 38 36 0a 20 20 78 38 36 5f 36 34 20 28 6e 61 74 69 76 65 29 0a 20 20 | mbeb...i386...x86_64.(native)... |
| 7c720 | 78 63 6f 72 65 0a 20 20 6e 76 70 74 78 0a 20 20 6e 76 70 74 78 36 34 0a 20 20 6c 65 33 32 0a 20 | xcore...nvptx...nvptx64...le32.. |
| 7c740 | 20 6c 65 36 34 0a 20 20 61 6d 64 69 6c 0a 20 20 61 6d 64 69 6c 36 34 0a 20 20 68 73 61 69 6c 0a | .le64...amdil...amdil64...hsail. |
| 7c760 | 20 20 68 73 61 69 6c 36 34 0a 20 20 73 70 69 72 0a 20 20 73 70 69 72 36 34 0a 20 20 6b 61 6c 69 | ..hsail64...spir...spir64...kali |
| 7c780 | 6d 62 61 76 33 0a 20 20 6b 61 6c 69 6d 62 61 76 34 0a 20 20 6b 61 6c 69 6d 62 61 76 35 0a 20 20 | mbav3...kalimbav4...kalimbav5... |
| 7c7a0 | 73 68 61 76 65 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 | shave...lanai...wasm32...wasm64. |
| 7c7c0 | 20 20 72 65 6e 64 65 72 73 63 72 69 70 74 33 32 0a 20 20 72 65 6e 64 65 72 73 63 72 69 70 74 36 | ..renderscript32...renderscript6 |
| 7c7e0 | 34 0a 0a 4f 70 65 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 | 4..Operating.Systems:...freestan |
| 7c800 | 64 69 6e 67 0a 20 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 | ding...ananas...cloudabi...drago |
| 7c820 | 6e 66 6c 79 0a 20 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 | nfly...freebsd...fuchsia...ios.. |
| 7c840 | 20 6b 66 72 65 65 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 | .kfreebsd...linux.(native)...lv2 |
| 7c860 | 0a 20 20 6d 61 63 6f 73 78 0a 20 20 6e 65 74 62 73 64 0a 20 20 6f 70 65 6e 62 73 64 0a 20 20 73 | ...macosx...netbsd...openbsd...s |
| 7c880 | 6f 6c 61 72 69 73 0a 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 | olaris...windows...haiku...minix |
| 7c8a0 | 0a 20 20 72 74 65 6d 73 0a 20 20 6e 61 63 6c 0a 20 20 63 6e 6b 0a 20 20 62 69 74 72 69 67 0a 20 | ...rtems...nacl...cnk...bitrig.. |
| 7c8c0 | 20 61 69 78 0a 20 20 63 75 64 61 0a 20 20 6e 76 63 6c 0a 20 20 61 6d 64 68 73 61 0a 20 20 70 73 | .aix...cuda...nvcl...amdhsa...ps |
| 7c8e0 | 34 0a 20 20 65 6c 66 69 61 6d 63 75 0a 20 20 74 76 6f 73 0a 20 20 77 61 74 63 68 6f 73 0a 20 20 | 4...elfiamcu...tvos...watchos... |
| 7c900 | 6d 65 73 61 33 64 0a 20 20 63 6f 6e 74 69 6b 69 0a 20 20 7a 65 6e 0a 0a 45 6e 76 69 72 6f 6e 6d | mesa3d...contiki...zen..Environm |
| 7c920 | 65 6e 74 73 3a 0a 20 20 75 6e 6b 6e 6f 77 6e 0a 20 20 67 6e 75 20 28 6e 61 74 69 76 65 29 0a 20 | ents:...unknown...gnu.(native).. |
| 7c940 | 20 67 6e 75 61 62 69 36 34 0a 20 20 67 6e 75 65 61 62 69 0a 20 20 67 6e 75 65 61 62 69 68 66 0a | .gnuabi64...gnueabi...gnueabihf. |
| 7c960 | 20 20 67 6e 75 78 33 32 0a 20 20 63 6f 64 65 31 36 0a 20 20 65 61 62 69 0a 20 20 65 61 62 69 68 | ..gnux32...code16...eabi...eabih |
| 7c980 | 66 0a 20 20 61 6e 64 72 6f 69 64 0a 20 20 6d 75 73 6c 0a 20 20 6d 75 73 6c 65 61 62 69 0a 20 20 | f...android...musl...musleabi... |
| 7c9a0 | 6d 75 73 6c 65 61 62 69 68 66 0a 20 20 6d 73 76 63 0a 20 20 69 74 61 6e 69 75 6d 0a 20 20 63 79 | musleabihf...msvc...itanium...cy |
| 7c9c0 | 67 6e 75 73 0a 20 20 61 6d 64 6f 70 65 6e 63 6c 0a 20 20 63 6f 72 65 63 6c 72 0a 20 20 6f 70 65 | gnus...amdopencl...coreclr...ope |
| 7c9e0 | 6e 63 6c 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 20 20 | ncl</code></pre>.......<p>...... |
| 7ca00 | 20 54 68 65 20 5a 69 67 20 53 74 61 6e 64 61 72 64 20 4c 69 62 72 61 72 79 20 28 3c 63 6f 64 65 | .The.Zig.Standard.Library.(<code |
| 7ca20 | 20 63 6c 61 73 73 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 |
| 7ca40 | 69 6c 74 69 6e 22 3e 40 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 |
| 7ca60 | 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 |
| 7ca80 | 6e 3e 29 3c 2f 63 6f 64 65 3e 29 20 68 61 73 20 61 72 63 68 69 74 65 63 74 75 72 65 2c 20 65 6e | n>)</code>).has.architecture,.en |
| 7caa0 | 76 69 72 6f 6e 6d 65 6e 74 2c 20 61 6e 64 20 6f 70 65 72 61 74 69 6e 67 20 73 79 74 73 65 6d 0a | vironment,.and.operating.sytsem. |
| 7cac0 | 20 20 20 20 20 20 61 62 73 74 72 61 63 74 69 6f 6e 73 2c 20 61 6e 64 20 74 68 75 73 20 74 61 6b | ......abstractions,.and.thus.tak |
| 7cae0 | 65 73 20 61 64 64 69 74 69 6f 6e 61 6c 20 77 6f 72 6b 20 74 6f 20 73 75 70 70 6f 72 74 20 6d 6f | es.additional.work.to.support.mo |
| 7cb00 | 72 65 20 70 6c 61 74 66 6f 72 6d 73 2e 0a 20 20 20 20 20 20 4e 6f 74 20 61 6c 6c 20 73 74 61 6e | re.platforms........Not.all.stan |
| 7cb20 | 64 61 72 64 20 6c 69 62 72 61 72 79 20 63 6f 64 65 20 72 65 71 75 69 72 65 73 20 6f 70 65 72 61 | dard.library.code.requires.opera |
| 7cb40 | 74 69 6e 67 20 73 79 73 74 65 6d 20 61 62 73 74 72 61 63 74 69 6f 6e 73 2c 20 68 6f 77 65 76 65 | ting.system.abstractions,.howeve |
| 7cb60 | 72 2c 0a 20 20 20 20 20 20 73 6f 20 74 68 69 6e 67 73 20 73 75 63 68 20 61 73 20 67 65 6e 65 72 | r,.......so.things.such.as.gener |
| 7cb80 | 69 63 20 64 61 74 61 20 73 74 72 75 63 74 75 72 65 73 20 77 6f 72 6b 20 61 6e 20 61 6c 6c 20 61 | ic.data.structures.work.an.all.a |
| 7cba0 | 62 6f 76 65 20 70 6c 61 74 66 6f 72 6d 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 | bove.platforms........</p>...... |
| 7cbc0 | 20 3c 70 3e 54 68 65 20 63 75 72 72 65 6e 74 20 6c 69 73 74 20 6f 66 20 74 61 72 67 65 74 73 20 | .<p>The.current.list.of.targets. |
| 7cbe0 | 73 75 70 70 6f 72 74 65 64 20 62 79 20 74 68 65 20 5a 69 67 20 53 74 61 6e 64 61 72 64 20 4c 69 | supported.by.the.Zig.Standard.Li |
| 7cc00 | 62 72 61 72 79 20 69 73 3a 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 3c | brary.is:</p>.......<ul>.......< |
| 7cc20 | 6c 69 3e 4c 69 6e 75 78 20 78 38 36 5f 36 34 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 6c 69 3e 57 | li>Linux.x86_64</li>.......<li>W |
| 7cc40 | 69 6e 64 6f 77 73 20 78 38 36 5f 36 34 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 6c 69 3e 4d 61 63 | indows.x86_64</li>.......<li>Mac |
| 7cc60 | 4f 53 20 78 38 36 5f 36 34 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 | OS.x86_64</li>.......</ul>...... |
| 7cc80 | 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 53 74 79 6c 65 2d 47 75 69 64 65 22 3e 53 74 79 | ........<h1.id="Style-Guide">Sty |
| 7cca0 | 6c 65 20 47 75 69 64 65 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 0a 54 68 65 73 65 20 63 | le.Guide</h1>........<p>.These.c |
| 7ccc0 | 6f 64 69 6e 67 20 63 6f 6e 76 65 6e 74 69 6f 6e 73 20 61 72 65 20 6e 6f 74 20 65 6e 66 6f 72 63 | oding.conventions.are.not.enforc |
| 7cce0 | 65 64 20 62 79 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 2c 20 62 75 74 20 74 68 65 79 20 61 72 65 | ed.by.the.compiler,.but.they.are |
| 7cd00 | 20 73 68 69 70 70 65 64 20 69 6e 0a 74 68 69 73 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 61 | .shipped.in.this.documentation.a |
| 7cd20 | 6c 6f 6e 67 20 77 69 74 68 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 69 6e 20 6f 72 64 65 72 20 | long.with.the.compiler.in.order. |
| 7cd40 | 74 6f 20 70 72 6f 76 69 64 65 20 61 20 70 6f 69 6e 74 20 6f 66 0a 72 65 66 65 72 65 6e 63 65 2c | to.provide.a.point.of.reference, |
| 7cd60 | 20 73 68 6f 75 6c 64 20 61 6e 79 6f 6e 65 20 77 69 73 68 20 74 6f 20 70 6f 69 6e 74 20 74 6f 20 | .should.anyone.wish.to.point.to. |
| 7cd80 | 61 6e 20 61 75 74 68 6f 72 69 74 79 20 6f 6e 20 61 67 72 65 65 64 20 75 70 6f 6e 20 5a 69 67 0a | an.authority.on.agreed.upon.Zig. |
| 7cda0 | 63 6f 64 69 6e 67 20 73 74 79 6c 65 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c | coding.style........</p>.......< |
| 7cdc0 | 68 32 20 69 64 3d 22 57 68 69 74 65 73 70 61 63 65 22 3e 57 68 69 74 65 73 70 61 63 65 3c 2f 68 | h2.id="Whitespace">Whitespace</h |
| 7cde0 | 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 20 20 20 | 2>........<ul>.........<li>..... |
| 7ce00 | 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 20 20 20 | ......4.space.indentation....... |
| 7ce20 | 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 4f | ..</li>.........<li>...........O |
| 7ce40 | 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 73 73 20 | pen.braces.on.same.line,.unless. |
| 7ce60 | 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 69 3e 0a | you.need.to.wrap..........</li>. |
| 7ce80 | 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 67 73 20 | ........<li>If.a.list.of.things. |
| 7cea0 | 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 65 6d 20 | is.longer.than.2,.put.each.item. |
| 7cec0 | 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 20 65 78 | on.its.own.line.and...........ex |
| 7cee0 | 65 72 63 69 73 65 20 74 68 65 20 61 62 69 6c 74 79 20 74 6f 20 70 75 74 20 61 6e 20 65 78 74 72 | ercise.the.abilty.to.put.an.extr |
| 7cf00 | 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 3c 2f 6c 69 | a.comma.at.the.end..........</li |
| 7cf20 | 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 65 20 6c 65 | >.........<li>...........Line.le |
| 7cf40 | 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 6e 20 73 65 | ngth:.aim.for.100;.use.common.se |
| 7cf60 | 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 6c 3e 0a 20 | nse..........</li>.......</ul>.. |
| 7cf80 | 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 4e 61 6d 65 73 | ............<h2.id="Names">Names |
| 7cfa0 | 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 73 | </h2>........<p>.......Roughly.s |
| 7cfc0 | 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 6c | peaking:.<code.class="zig">camel |
| 7cfe0 | 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 63 | CaseFunctionName</code>,.<code.c |
| 7d000 | 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 6f | lass="zig">TitleCaseTypeName</co |
| 7d020 | 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 22 | de>,...............<code.class=" |
| 7d040 | 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 63 | zig">snake_case_variable_name</c |
| 7d060 | 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 3e | ode>..More.precisely:.......</p> |
| 7d080 | 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 20 | .......<ul>.........<li>........ |
| 7d0a0 | 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 64 | .....If.<code.class="zig">x</cod |
| 7d0c0 | 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 20 | e>.is.a.<code.class="zig"><span. |
| 7d0e0 | 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 |
| 7d100 | 64 65 3e 20 28 6f 72 20 61 6e 20 61 6c 69 61 73 20 6f 66 20 61 20 3c 63 6f 64 65 20 63 6c 61 73 | de>.(or.an.alias.of.a.<code.clas |
| 7d120 | 73 3d 22 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 | s="zig"><span.class="tok-kw">str |
| 7d140 | 75 63 74 3c 2f 73 70 61 6e 3e 3c 2f 63 6f 64 65 3e 29 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 | uct</span></code>),............. |
| 7d160 | 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 73 3d 22 7a 69 | ............then.<code.class="zi |
| 7d180 | 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 20 63 6c 61 73 | g">x</code>.should.be.<code.clas |
| 7d1a0 | 73 3d 22 7a 69 67 22 3e 54 69 74 6c 65 43 61 73 65 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 | s="zig">TitleCase</code>........ |
| 7d1c0 | 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 | ..</li>.........<li>............ |
| 7d1e0 | 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 64 65 3e 20 6f | .If.<code.class="zig">x</code>.o |
| 7d200 | 74 68 65 72 77 69 73 65 20 69 64 65 6e 74 69 66 69 65 73 20 61 20 74 79 70 65 2c 20 3c 63 6f 64 | therwise.identifies.a.type,.<cod |
| 7d220 | 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 78 3c 2f 63 6f 64 65 3e 20 73 68 6f 75 6c 64 20 68 61 | e.class="zig">x</code>.should.ha |
| 7d240 | 76 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 61 73 65 3c | ve.<code.class="zig">snake_case< |
| 7d260 | 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c | /code>..........</li>.........<l |
| 7d280 | 69 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 49 66 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a | i>.............If.<code.class="z |
| 7d2a0 | 69 67 22 3e 78 3c 2f 63 6f 64 65 3e 20 69 73 20 63 61 6c 6c 61 62 6c 65 2c 20 61 6e 64 20 3c 63 | ig">x</code>.is.callable,.and.<c |
| 7d2c0 | 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 78 3c 2f 63 6f 64 65 3e 27 73 20 72 65 74 75 72 | ode.class="zig">x</code>'s.retur |
| 7d2e0 | 6e 20 74 79 70 65 20 69 73 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 3c 73 70 61 | n.type.is.<code.class="zig"><spa |
| 7d300 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 3c 2f | n.class="tok-type">type</span></ |
| 7d320 | 63 6f 64 65 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 | code>,.then.<code.class="zig">x< |
| 7d340 | 2f 63 6f 64 65 3e 20 73 68 6f 75 6c 64 20 62 65 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | /code>.should.be.<code.class="zi |
| 7d360 | 67 22 3e 54 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 | g">TitleCase</code>..........</l |
| 7d380 | 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 66 20 3c | i>.........<li>.............If.< |
| 7d3a0 | 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 6f 74 68 | code.class="zig">x</code>.is.oth |
| 7d3c0 | 65 72 77 69 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 | erwise.callable,.then.<code.clas |
| 7d3e0 | 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 |
| 7d400 | 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e 63 61 6d 65 6c 43 61 73 65 3c 2f 63 6f 64 65 3e 2e 0a 20 | .class="zig">camelCase</code>... |
| 7d420 | 20 20 20 20 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 0a 20 20 20 20 20 20 | .......</li>.........<li>....... |
| 7d440 | 20 20 20 20 20 20 4f 74 68 65 72 77 69 73 65 2c 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 | ......Otherwise,.<code.class="zi |
| 7d460 | 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 20 63 6c 61 73 | g">x</code>.should.be.<code.clas |
| 7d480 | 73 3d 22 7a 69 67 22 3e 73 6e 61 6b 65 5f 63 61 73 65 3c 2f 63 6f 64 65 3e 2e 0a 20 20 20 20 20 | s="zig">snake_case</code>....... |
| 7d4a0 | 20 20 20 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 | ...</li>.......</ul>.......<p>.. |
| 7d4c0 | 20 20 20 20 20 41 63 72 6f 6e 79 6d 73 2c 20 69 6e 69 74 69 61 6c 69 73 6d 73 2c 20 70 72 6f 70 | .....Acronyms,.initialisms,.prop |
| 7d4e0 | 65 72 20 6e 6f 75 6e 73 2c 20 6f 72 20 61 6e 79 20 6f 74 68 65 72 20 77 6f 72 64 20 74 68 61 74 | er.nouns,.or.any.other.word.that |
| 7d500 | 20 68 61 73 20 63 61 70 69 74 61 6c 69 7a 61 74 69 6f 6e 0a 20 20 20 20 20 20 72 75 6c 65 73 20 | .has.capitalization.......rules. |
| 7d520 | 69 6e 20 77 72 69 74 74 65 6e 20 45 6e 67 6c 69 73 68 20 61 72 65 20 73 75 62 6a 65 63 74 20 74 | in.written.English.are.subject.t |
| 7d540 | 6f 20 6e 61 6d 69 6e 67 20 63 6f 6e 76 65 6e 74 69 6f 6e 73 20 6a 75 73 74 20 6c 69 6b 65 20 61 | o.naming.conventions.just.like.a |
| 7d560 | 6e 79 20 6f 74 68 65 72 0a 20 20 20 20 20 20 77 6f 72 64 2e 20 45 76 65 6e 20 61 63 72 6f 6e 79 | ny.other.......word..Even.acrony |
| 7d580 | 6d 73 20 74 68 61 74 20 61 72 65 20 6f 6e 6c 79 20 32 20 6c 65 74 74 65 72 73 20 6c 6f 6e 67 20 | ms.that.are.only.2.letters.long. |
| 7d5a0 | 61 72 65 20 73 75 62 6a 65 63 74 20 74 6f 20 74 68 65 73 65 0a 20 20 20 20 20 20 63 6f 6e 76 65 | are.subject.to.these.......conve |
| 7d5c0 | 6e 74 69 6f 6e 73 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 3c 70 3e 0a 20 20 20 | ntions........</p>.......<p>.... |
| 7d5e0 | 20 20 20 54 68 65 73 65 20 61 72 65 20 67 65 6e 65 72 61 6c 20 72 75 6c 65 73 20 6f 66 20 74 68 | ...These.are.general.rules.of.th |
| 7d600 | 75 6d 62 3b 20 69 66 20 69 74 20 6d 61 6b 65 73 20 73 65 6e 73 65 20 74 6f 20 64 6f 20 73 6f 6d | umb;.if.it.makes.sense.to.do.som |
| 7d620 | 65 74 68 69 6e 67 20 64 69 66 66 65 72 65 6e 74 2c 0a 20 20 20 20 20 20 64 6f 20 77 68 61 74 20 | ething.different,.......do.what. |
| 7d640 | 6d 61 6b 65 73 20 73 65 6e 73 65 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 69 66 20 74 68 65 | makes.sense..For.example,.if.the |
| 7d660 | 72 65 20 69 73 20 61 6e 20 65 73 74 61 62 6c 69 73 68 65 64 20 63 6f 6e 76 65 6e 74 69 6f 6e 20 | re.is.an.established.convention. |
| 7d680 | 73 75 63 68 20 61 73 0a 20 20 20 20 20 20 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 7a 69 67 22 3e | such.as.......<code.class="zig"> |
| 7d6a0 | 45 4e 4f 45 4e 54 3c 2f 63 6f 64 65 3e 2c 20 66 6f 6c 6c 6f 77 20 74 68 65 20 65 73 74 61 62 6c | ENOENT</code>,.follow.the.establ |
| 7d6c0 | 69 73 68 65 64 20 63 6f 6e 76 65 6e 74 69 6f 6e 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 | ished.convention........</p>.... |
| 7d6e0 | 20 20 20 0a 20 20 20 20 20 20 3c 68 32 20 69 64 3d 22 45 78 61 6d 70 6c 65 73 22 3e 45 78 61 6d | ..........<h2.id="Examples">Exam |
| 7d700 | 70 6c 65 73 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 | ples</h2>........<pre><code.clas |
| 7d720 | 73 3d 22 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 |
| 7d740 | 73 74 3c 2f 73 70 61 6e 3e 20 6e 61 6d 65 73 70 61 63 65 5f 6e 61 6d 65 20 3d 20 3c 73 70 61 6e | st</span>.namespace_name.=.<span |
| 7d760 | 20 63 6c 61 73 73 3d 22 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 |
| 7d780 | 61 6e 3e 28 3c 73 70 61 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">" |
| 7d7a0 | 64 69 72 5f 6e 61 6d 65 2f 66 69 6c 65 5f 6e 61 6d 65 2e 7a 69 67 26 71 75 6f 74 3b 3c 2f 73 70 | dir_name/file_name.zig"</sp |
| 7d7c0 | 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 72 3c 2f | an>);.<span.class="tok-kw">var</ |
| 7d7e0 | 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 3d 22 74 | span>.global_var:.<span.class="t |
| 7d800 | 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 |
| 7d820 | 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 3c | s="tok-null">undefined</span>;.< |
| 7d840 | 73 70 61 6e 20 63 6c 61 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> |
| 7d860 | 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 6b 2d 6e | .const_name.=.<span.class="tok-n |
| 7d880 | 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 3d 22 74 | umber">42</span>;.<span.class="t |
| 7d8a0 | 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 5f 74 79 | ok-kw">const</span>.primitive_ty |
| 7d8c0 | 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 79 70 65 | pe_alias.=.<span.class="tok-type |
| 7d8e0 | 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 6b 2d 6b | ">f32</span>;.<span.class="tok-k |
| 7d900 | 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 3d 20 5b | w">const</span>.string_alias.=.[ |
| 7d920 | 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 |
| 7d940 | 3e 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f | >;..<span.class="tok-kw">const</ |
| 7d960 | 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 73 3d 22 | span>.StructName.=.<span.class=" |
| 7d980 | 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c 2f 73 70 61 6e 3e 20 7b 7d 3b 0a 3c 73 70 61 6e 20 | tok-kw">struct</span>.{};.<span. |
| 7d9a0 | 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 53 74 72 75 | class="tok-kw">const</span>.Stru |
| 7d9c0 | 63 74 41 6c 69 61 73 20 3d 20 53 74 72 75 63 74 4e 61 6d 65 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 | ctAlias.=.StructName;..<span.cla |
| 7d9e0 | 73 73 3d 22 74 6f 6b 2d 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 |
| 7da00 | 73 3d 22 74 6f 6b 2d 66 6e 22 3e 66 75 6e 63 74 69 6f 6e 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 70 | s="tok-fn">functionName</span>(p |
| 7da20 | 61 72 61 6d 5f 6e 61 6d 65 3a 20 54 79 70 65 4e 61 6d 65 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 | aram_name:.TypeName).<span.class |
| 7da40 | 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 |
| 7da60 | 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 76 61 72 3c 2f 73 70 61 6e 3e 20 66 75 | pan.class="tok-kw">var</span>.fu |
| 7da80 | 6e 63 74 69 6f 6e 50 6f 69 6e 74 65 72 20 3d 20 66 75 6e 63 74 69 6f 6e 4e 61 6d 65 3b 0a 20 20 | nctionPointer.=.functionName;... |
| 7daa0 | 20 20 66 75 6e 63 74 69 6f 6e 50 6f 69 6e 74 65 72 28 29 3b 0a 20 20 20 20 66 75 6e 63 74 69 6f | ..functionPointer();.....functio |
| 7dac0 | 6e 50 6f 69 6e 74 65 72 20 3d 20 6f 74 68 65 72 46 75 6e 63 74 69 6f 6e 3b 0a 20 20 20 20 66 75 | nPointer.=.otherFunction;.....fu |
| 7dae0 | 6e 63 74 69 6f 6e 50 6f 69 6e 74 65 72 28 29 3b 0a 7d 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | nctionPointer();.}.<span.class=" |
| 7db00 | 74 6f 6b 2d 6b 77 22 3e 63 6f 6e 73 74 3c 2f 73 70 61 6e 3e 20 66 75 6e 63 74 69 6f 6e 41 6c 69 | tok-kw">const</span>.functionAli |
| 7db20 | 61 73 20 3d 20 66 75 6e 63 74 69 6f 6e 4e 61 6d 65 3b 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d | as.=.functionName;..<span.class= |
| 7db40 | 22 74 6f 6b 2d 6b 77 22 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=" |
| 7db60 | 74 6f 6b 2d 66 6e 22 3e 4c 69 73 74 54 65 6d 70 6c 61 74 65 46 75 6e 63 74 69 6f 6e 3c 2f 73 70 | tok-fn">ListTemplateFunction</sp |
| 7db80 | 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 |
| 7dba0 | 65 3c 2f 73 70 61 6e 3e 20 43 68 69 6c 64 54 79 70 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d | e</span>.ChildType:.<span.class= |
| 7dbc0 | 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 |
| 7dbe0 | 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 66 69 78 | ass="tok-kw">comptime</span>.fix |
| 7dc00 | 65 64 5f 73 69 7a 65 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e | ed_size:.<span.class="tok-type"> |
| 7dc20 | 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 | usize</span>).<span.class="tok-t |
| 7dc40 | 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 |
| 7dc60 | 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 72 65 74 75 72 6e 3c 2f 73 70 61 6e 3e 20 4c 69 73 74 28 43 | ss="tok-kw">return</span>.List(C |
| 7dc80 | 68 69 6c 64 54 79 70 65 2c 20 66 69 78 65 64 5f 73 69 7a 65 29 3b 0a 7d 0a 0a 3c 73 70 61 6e 20 | hildType,.fixed_size);.}..<span. |
| 7dca0 | 63 6c 61 73 73 3d 22 74 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 |
| 7dcc0 | 6c 61 73 73 3d 22 74 6f 6b 2d 66 6e 22 3e 53 68 6f 72 74 4c 69 73 74 3c 2f 73 70 61 6e 3e 28 3c | lass="tok-fn">ShortList</span>(< |
| 7dce0 | 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 |
| 7dd00 | 61 6e 3e 20 54 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 | an>.T:.<span.class="tok-type">ty |
| 7dd20 | 70 65 3c 2f 73 70 61 6e 3e 2c 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | pe</span>,.<span.class="tok-kw"> |
| 7dd40 | 63 6f 6d 70 74 69 6d 65 3c 2f 73 70 61 6e 3e 20 6e 3a 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | comptime</span>.n:.<span.class=" |
| 7dd60 | 74 6f 6b 2d 74 79 70 65 22 3e 75 73 69 7a 65 3c 2f 73 70 61 6e 3e 29 20 3c 73 70 61 6e 20 63 6c | tok-type">usize</span>).<span.cl |
| 7dd80 | 61 73 73 3d 22 74 6f 6b 2d 74 79 70 65 22 3e 74 79 70 65 3c 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 | ass="tok-type">type</span>.{.... |
| 7dda0 | 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 |
| 7ddc0 | 61 6e 3e 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e 73 74 72 75 63 74 3c | an>.<span.class="tok-kw">struct< |
| 7dde0 | 2f 73 70 61 6e 3e 20 7b 0a 20 20 20 20 20 20 20 20 66 69 65 6c 64 5f 6e 61 6d 65 3a 20 5b 6e 5d | /span>.{.........field_name:.[n] |
| 7de00 | 54 2c 0a 20 20 20 20 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 6b 77 22 3e | T,.........<span.class="tok-kw"> |
| 7de20 | 66 6e 3c 2f 73 70 61 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 |
| 7de40 | 65 74 68 6f 64 4e 61 6d 65 3c 2f 73 70 61 6e 3e 28 29 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 | ethodName</span>().<span.class=" |
| 7de60 | 74 6f 6b 2d 74 79 70 65 22 3e 76 6f 69 64 3c 2f 73 70 61 6e 3e 20 7b 7d 0a 20 20 20 20 7d 3b 0a | tok-type">void</span>.{}.....};. |
| 7de80 | 7d 0a 0a 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 63 6f 6d 6d 65 6e 74 22 3e 2f 2f 20 | }..<span.class="tok-comment">//. |
| 7dea0 | 54 68 65 20 77 6f 72 64 20 58 4d 4c 20 6c 6f 73 65 73 20 69 74 73 20 63 61 73 69 6e 67 20 77 68 | The.word.XML.loses.its.casing.wh |
| 7dec0 | 65 6e 20 75 73 65 64 20 69 6e 20 5a 69 67 20 69 64 65 6e 74 69 66 69 65 72 73 2e 3c 2f 73 70 61 | en.used.in.Zig.identifiers.</spa |
| 7dee0 | 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 |
| 7df00 | 70 61 6e 3e 20 78 6d 6c 5f 64 6f 63 75 6d 65 6e 74 20 3d 0a 20 20 20 20 3c 73 70 61 6e 20 63 6c | pan>.xml_document.=.....<span.cl |
| 7df20 | 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 5c 5c 26 6c 74 3b 3f 78 6d 6c 20 76 65 72 73 69 6f 6e | ass="tok-str">\\<?xml.version |
| 7df40 | 3d 26 71 75 6f 74 3b 31 2e 30 26 71 75 6f 74 3b 20 65 6e 63 6f 64 69 6e 67 3d 26 71 75 6f 74 3b | ="1.0".encoding=" |
| 7df60 | 55 54 46 2d 38 26 71 75 6f 74 3b 3f 26 67 74 3b 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 3c 73 70 61 | UTF-8"?>.</span>....<spa |
| 7df80 | 6e 20 63 6c 61 73 73 3d 22 74 6f 6b 2d 73 74 72 22 3e 5c 5c 26 6c 74 3b 64 6f 63 75 6d 65 6e 74 | n.class="tok-str">\\<document |
| 7dfa0 | 26 67 74 3b 0a 3c 2f 73 70 61 6e 3e 20 20 20 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f 6b | >.</span>....<span.class="tok |
| 7dfc0 | 2d 73 74 72 22 3e 5c 5c 26 6c 74 3b 2f 64 6f 63 75 6d 65 6e 74 26 67 74 3b 0a 3c 2f 73 70 61 6e | -str">\\</document>.</span |
| 7dfe0 | 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 |
| 7e000 | 70 61 6e 3e 20 58 6d 6c 50 61 72 73 65 72 20 3d 20 3c 73 70 61 6e 20 63 6c 61 73 73 3d 22 74 6f | pan>.XmlParser.=.<span.class="to |
| 7e020 | 6b 2d 6b 77 22 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 | k-kw">struct</span>.{};..<span.c |
| 7e040 | 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 61 | lass="tok-comment">//.The.initia |
| 7e060 | 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 74 | ls.BE.(Big.Endian).are.just.anot |
| 7e080 | 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 73 | her.word.in.Zig.identifier.names |
| 7e0a0 | 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 6e | .</span>.<span.class="tok-kw">fn |
| 7e0c0 | 3c 2f 73 70 61 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 61 | </span>.<span.class="tok-fn">rea |
| 7e0e0 | 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 6b | dU32Be</span>().<span.class="tok |
| 7e100 | 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 65 | -type">u32</span>.{}</code></pre |
| 7e120 | 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 74 | >.......<p>.......See.the.Zig.St |
| 7e140 | 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 73 | andard.Library.for.more.examples |
| 7e160 | 2e 0a 20 20 20 20 20 20 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 20 0a 20 20 20 20 20 | ........</p>.................... |
| 7e180 | 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 53 6f 75 72 63 65 | .<h1.id="Source-Encoding">Source |
| 7e1a0 | 20 45 6e 63 6f 64 69 6e 67 3c 2f 68 31 3e 0a 0a 20 20 20 20 20 20 3c 70 3e 5a 69 67 20 73 6f 75 | .Encoding</h1>........<p>Zig.sou |
| 7e1c0 | 72 63 65 20 63 6f 64 65 20 69 73 20 65 6e 63 6f 64 65 64 20 69 6e 20 55 54 46 2d 38 2e 20 41 6e | rce.code.is.encoded.in.UTF-8..An |
| 7e1e0 | 20 69 6e 76 61 6c 69 64 20 55 54 46 2d 38 20 62 79 74 65 20 73 65 71 75 65 6e 63 65 20 72 65 73 | .invalid.UTF-8.byte.sequence.res |
| 7e200 | 75 6c 74 73 20 69 6e 20 61 20 63 6f 6d 70 69 6c 65 20 65 72 72 6f 72 2e 3c 2f 70 3e 0a 20 20 20 | ults.in.a.compile.error.</p>.... |
| 7e220 | 20 20 20 3c 70 3e 54 68 72 6f 75 67 68 6f 75 74 20 61 6c 6c 20 7a 69 67 20 73 6f 75 72 63 65 20 | ...<p>Throughout.all.zig.source. |
| 7e240 | 63 6f 64 65 20 28 69 6e 63 6c 75 64 69 6e 67 20 69 6e 20 63 6f 6d 6d 65 6e 74 73 29 2c 20 73 6f | code.(including.in.comments),.so |
| 7e260 | 6d 65 20 63 6f 64 65 70 6f 69 6e 74 73 20 61 72 65 20 6e 65 76 65 72 20 61 6c 6c 6f 77 65 64 3a | me.codepoints.are.never.allowed: |
| 7e280 | 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 73 63 69 | </p>.......<ul>.........<li>Asci |
| 7e2a0 | 69 20 63 6f 6e 74 72 6f 6c 20 63 68 61 72 61 63 74 65 72 73 2c 20 65 78 63 65 70 74 20 66 6f 72 | i.control.characters,.except.for |
| 7e2c0 | 20 55 2b 30 30 30 61 20 28 4c 46 29 3a 20 55 2b 30 30 30 30 20 2d 20 55 2b 30 30 30 39 2c 20 55 | .U+000a.(LF):.U+0000.-.U+0009,.U |
| 7e2e0 | 2b 30 30 30 62 20 2d 20 55 2b 30 30 30 31 66 2c 20 55 2b 30 30 37 66 2e 20 28 4e 6f 74 65 20 74 | +000b.-.U+0001f,.U+007f..(Note.t |
| 7e300 | 68 61 74 20 57 69 6e 64 6f 77 73 20 6c 69 6e 65 20 65 6e 64 69 6e 67 73 20 28 43 52 4c 46 29 20 | hat.Windows.line.endings.(CRLF). |
| 7e320 | 61 72 65 20 6e 6f 74 20 61 6c 6c 6f 77 65 64 2c 20 61 6e 64 20 68 61 72 64 20 74 61 62 73 20 61 | are.not.allowed,.and.hard.tabs.a |
| 7e340 | 72 65 20 6e 6f 74 20 61 6c 6c 6f 77 65 64 2e 29 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c | re.not.allowed.)</li>.........<l |
| 7e360 | 69 3e 4e 6f 6e 2d 41 73 63 69 69 20 55 6e 69 63 6f 64 65 20 6c 69 6e 65 20 65 6e 64 69 6e 67 73 | i>Non-Ascii.Unicode.line.endings |
| 7e380 | 3a 20 55 2b 30 30 38 35 20 28 4e 45 4c 29 2c 20 55 2b 32 30 32 38 20 28 4c 53 29 2c 20 55 2b 32 | :.U+0085.(NEL),.U+2028.(LS),.U+2 |
| 7e3a0 | 30 32 39 20 28 50 53 29 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 20 20 20 20 | 029.(PS).</li>.......</ul>...... |
| 7e3c0 | 20 3c 70 3e 54 68 65 20 63 6f 64 65 70 6f 69 6e 74 20 55 2b 30 30 30 61 20 28 4c 46 29 20 28 77 | .<p>The.codepoint.U+000a.(LF).(w |
| 7e3e0 | 68 69 63 68 20 69 73 20 65 6e 63 6f 64 65 64 20 61 73 20 74 68 65 20 73 69 6e 67 6c 65 2d 62 79 | hich.is.encoded.as.the.single-by |
| 7e400 | 74 65 20 76 61 6c 75 65 20 30 78 30 61 29 20 69 73 20 74 68 65 20 6c 69 6e 65 20 74 65 72 6d 69 | te.value.0x0a).is.the.line.termi |
| 7e420 | 6e 61 74 6f 72 20 63 68 61 72 61 63 74 65 72 2e 20 54 68 69 73 20 63 68 61 72 61 63 74 65 72 20 | nator.character..This.character. |
| 7e440 | 61 6c 77 61 79 73 20 74 65 72 6d 69 6e 61 74 65 73 20 61 20 6c 69 6e 65 20 6f 66 20 7a 69 67 20 | always.terminates.a.line.of.zig. |
| 7e460 | 73 6f 75 72 63 65 20 63 6f 64 65 20 28 65 78 63 65 70 74 20 70 6f 73 73 62 6c 79 20 74 68 65 20 | source.code.(except.possbly.the. |
| 7e480 | 6c 61 73 74 20 6c 69 6e 65 20 6f 66 20 74 68 65 20 66 69 6c 65 29 2e 3c 2f 70 3e 0a 20 20 20 20 | last.line.of.the.file).</p>..... |
| 7e4a0 | 20 20 3c 70 3e 46 6f 72 20 73 6f 6d 65 20 64 69 73 63 75 73 73 69 6f 6e 20 6f 6e 20 74 68 65 20 | ..<p>For.some.discussion.on.the. |
| 7e4c0 | 72 61 74 69 6f 6e 61 6c 65 20 62 65 68 69 6e 64 20 74 68 65 73 65 20 64 65 73 69 67 6e 20 64 65 | rationale.behind.these.design.de |
| 7e4e0 | 63 69 73 69 6f 6e 73 2c 20 73 65 65 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 67 69 | cisions,.see.<a.href="https://gi |
| 7e500 | 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 36 36 33 22 | thub.com/ziglang/zig/issues/663" |
| 7e520 | 3e 69 73 73 75 65 20 23 36 36 33 3c 2f 61 3e 3c 2f 70 3e 0a 20 20 20 20 20 20 0a 20 20 20 20 20 | >issue.#663</a></p>............. |
| 7e540 | 20 3c 68 31 20 69 64 3d 22 47 72 61 6d 6d 61 72 22 3e 47 72 61 6d 6d 61 72 3c 2f 68 31 3e 0a 0a | .<h1.id="Grammar">Grammar</h1>.. |
| 7e560 | 20 20 20 20 20 20 3c 70 72 65 3e 3c 63 6f 64 65 20 63 6c 61 73 73 3d 22 6e 6f 68 69 67 68 6c 69 | ......<pre><code.class="nohighli |
| 7e580 | 67 68 74 22 3e 52 6f 6f 74 20 3d 20 6d 61 6e 79 28 54 6f 70 4c 65 76 65 6c 49 74 65 6d 29 20 45 | ght">Root.=.many(TopLevelItem).E |
| 7e5a0 | 4f 46 0a 0a 54 6f 70 4c 65 76 65 6c 49 74 65 6d 20 3d 20 43 6f 6d 70 54 69 6d 65 45 78 70 72 65 | OF..TopLevelItem.=.CompTimeExpre |
| 7e5c0 | 73 73 69 6f 6e 28 42 6c 6f 63 6b 29 20 7c 20 54 6f 70 4c 65 76 65 6c 44 65 63 6c 20 7c 20 54 65 | ssion(Block).|.TopLevelDecl.|.Te |
| 7e5e0 | 73 74 44 65 63 6c 0a 0a 54 65 73 74 44 65 63 6c 20 3d 20 22 74 65 73 74 22 20 53 74 72 69 6e 67 | stDecl..TestDecl.=."test".String |
| 7e600 | 20 42 6c 6f 63 6b 0a 0a 54 6f 70 4c 65 76 65 6c 44 65 63 6c 20 3d 20 6f 70 74 69 6f 6e 28 22 70 | .Block..TopLevelDecl.=.option("p |
| 7e620 | 75 62 22 29 20 28 46 6e 44 65 66 20 7c 20 45 78 74 65 72 6e 44 65 63 6c 20 7c 20 47 6c 6f 62 61 | ub").(FnDef.|.ExternDecl.|.Globa |
| 7e640 | 6c 56 61 72 44 65 63 6c 20 7c 20 55 73 65 44 65 63 6c 29 0a 0a 47 6c 6f 62 61 6c 56 61 72 44 65 | lVarDecl.|.UseDecl)..GlobalVarDe |
| 7e660 | 63 6c 20 3d 20 6f 70 74 69 6f 6e 28 22 65 78 70 6f 72 74 22 29 20 56 61 72 69 61 62 6c 65 44 65 | cl.=.option("export").VariableDe |
| 7e680 | 63 6c 61 72 61 74 69 6f 6e 20 22 3b 22 0a 0a 4c 6f 63 61 6c 56 61 72 44 65 63 6c 20 3d 20 6f 70 | claration.";"..LocalVarDecl.=.op |
| 7e6a0 | 74 69 6f 6e 28 22 63 6f 6d 70 74 69 6d 65 22 29 20 56 61 72 69 61 62 6c 65 44 65 63 6c 61 72 61 | tion("comptime").VariableDeclara |
| 7e6c0 | 74 69 6f 6e 0a 0a 56 61 72 69 61 62 6c 65 44 65 63 6c 61 72 61 74 69 6f 6e 20 3d 20 28 22 76 61 | tion..VariableDeclaration.=.("va |
| 7e6e0 | 72 22 20 7c 20 22 63 6f 6e 73 74 22 29 20 53 79 6d 62 6f 6c 20 6f 70 74 69 6f 6e 28 22 3a 22 20 | r".|."const").Symbol.option(":". |
| 7e700 | 54 79 70 65 45 78 70 72 29 20 6f 70 74 69 6f 6e 28 22 61 6c 69 67 6e 22 20 22 28 22 20 45 78 70 | TypeExpr).option("align"."(".Exp |
| 7e720 | 72 65 73 73 69 6f 6e 20 22 29 22 29 20 6f 70 74 69 6f 6e 28 22 73 65 63 74 69 6f 6e 22 20 22 28 | ression.")").option("section"."( |
| 7e740 | 22 20 45 78 70 72 65 73 73 69 6f 6e 20 22 29 22 29 20 22 3d 22 20 45 78 70 72 65 73 73 69 6f 6e | ".Expression.")")."=".Expression |
| 7e760 | 0a 0a 43 6f 6e 74 61 69 6e 65 72 4d 65 6d 62 65 72 20 3d 20 28 43 6f 6e 74 61 69 6e 65 72 46 69 | ..ContainerMember.=.(ContainerFi |
| 7e780 | 65 6c 64 20 7c 20 46 6e 44 65 66 20 7c 20 47 6c 6f 62 61 6c 56 61 72 44 65 63 6c 29 0a 0a 43 6f | eld.|.FnDef.|.GlobalVarDecl)..Co |
| 7e7a0 | 6e 74 61 69 6e 65 72 46 69 65 6c 64 20 3d 20 53 79 6d 62 6f 6c 20 6f 70 74 69 6f 6e 28 22 3a 22 | ntainerField.=.Symbol.option(":" |
| 7e7c0 | 20 50 72 65 66 69 78 4f 70 45 78 70 72 65 73 73 69 6f 6e 29 20 6f 70 74 69 6f 6e 28 22 3d 22 20 | .PrefixOpExpression).option("=". |
| 7e7e0 | 50 72 65 66 69 78 4f 70 45 78 70 72 65 73 73 69 6f 6e 29 20 22 2c 22 0a 0a 55 73 65 44 65 63 6c | PrefixOpExpression).","..UseDecl |
| 7e800 | 20 3d 20 22 75 73 65 22 20 45 78 70 72 65 73 73 69 6f 6e 20 22 3b 22 0a 0a 45 78 74 65 72 6e 44 | .=."use".Expression.";"..ExternD |
| 7e820 | 65 63 6c 20 3d 20 22 65 78 74 65 72 6e 22 20 6f 70 74 69 6f 6e 28 53 74 72 69 6e 67 29 20 28 46 | ecl.=."extern".option(String).(F |
| 7e840 | 6e 50 72 6f 74 6f 20 7c 20 56 61 72 69 61 62 6c 65 44 65 63 6c 61 72 61 74 69 6f 6e 29 20 22 3b | nProto.|.VariableDeclaration)."; |
| 7e860 | 22 0a 0a 46 6e 50 72 6f 74 6f 20 3d 20 6f 70 74 69 6f 6e 28 22 6e 61 6b 65 64 63 63 22 20 7c 20 | "..FnProto.=.option("nakedcc".|. |
| 7e880 | 22 73 74 64 63 61 6c 6c 63 63 22 20 7c 20 22 65 78 74 65 72 6e 22 20 7c 20 28 22 61 73 79 6e 63 | "stdcallcc".|."extern".|.("async |
| 7e8a0 | 22 20 6f 70 74 69 6f 6e 28 22 26 6c 74 3b 22 20 45 78 70 72 65 73 73 69 6f 6e 20 22 26 67 74 3b | ".option("<".Expression."> |
| 7e8c0 | 22 29 29 29 20 22 66 6e 22 20 6f 70 74 69 6f 6e 28 53 79 6d 62 6f 6c 29 20 50 61 72 61 6d 44 65 | ")))."fn".option(Symbol).ParamDe |
| 7e8e0 | 63 6c 4c 69 73 74 20 6f 70 74 69 6f 6e 28 22 61 6c 69 67 6e 22 20 22 28 22 20 45 78 70 72 65 73 | clList.option("align"."(".Expres |
| 7e900 | 73 69 6f 6e 20 22 29 22 29 20 6f 70 74 69 6f 6e 28 22 73 65 63 74 69 6f 6e 22 20 22 28 22 20 45 | sion.")").option("section"."(".E |
| 7e920 | 78 70 72 65 73 73 69 6f 6e 20 22 29 22 29 20 6f 70 74 69 6f 6e 28 22 21 22 29 20 28 54 79 70 65 | xpression.")").option("!").(Type |
| 7e940 | 45 78 70 72 20 7c 20 22 76 61 72 22 29 0a 0a 46 6e 44 65 66 20 3d 20 6f 70 74 69 6f 6e 28 22 69 | Expr.|."var")..FnDef.=.option("i |
| 7e960 | 6e 6c 69 6e 65 22 20 7c 20 22 65 78 70 6f 72 74 22 29 20 46 6e 50 72 6f 74 6f 20 42 6c 6f 63 6b | nline".|."export").FnProto.Block |
| 7e980 | 0a 0a 50 61 72 61 6d 44 65 63 6c 4c 69 73 74 20 3d 20 22 28 22 20 6c 69 73 74 28 50 61 72 61 6d | ..ParamDeclList.=."(".list(Param |
| 7e9a0 | 44 65 63 6c 2c 20 22 2c 22 29 20 22 29 22 0a 0a 50 61 72 61 6d 44 65 63 6c 20 3d 20 6f 70 74 69 | Decl,.",").")"..ParamDecl.=.opti |
| 7e9c0 | 6f 6e 28 22 6e 6f 61 6c 69 61 73 22 20 7c 20 22 63 6f 6d 70 74 69 6d 65 22 29 20 6f 70 74 69 6f | on("noalias".|."comptime").optio |
| 7e9e0 | 6e 28 53 79 6d 62 6f 6c 20 22 3a 22 29 20 28 54 79 70 65 45 78 70 72 20 7c 20 22 76 61 72 22 20 | n(Symbol.":").(TypeExpr.|."var". |
| 7ea00 | 7c 20 22 2e 2e 2e 22 29 0a 0a 42 6c 6f 63 6b 20 3d 20 6f 70 74 69 6f 6e 28 53 79 6d 62 6f 6c 20 | |."...")..Block.=.option(Symbol. |
| 7ea20 | 22 3a 22 29 20 22 7b 22 20 6d 61 6e 79 28 53 74 61 74 65 6d 65 6e 74 29 20 22 7d 22 0a 0a 53 74 | ":")."{".many(Statement)."}"..St |
| 7ea40 | 61 74 65 6d 65 6e 74 20 3d 20 4c 6f 63 61 6c 56 61 72 44 65 63 6c 20 22 3b 22 20 7c 20 44 65 66 | atement.=.LocalVarDecl.";".|.Def |
| 7ea60 | 65 72 28 42 6c 6f 63 6b 29 20 7c 20 44 65 66 65 72 28 45 78 70 72 65 73 73 69 6f 6e 29 20 22 3b | er(Block).|.Defer(Expression)."; |
| 7ea80 | 22 20 7c 20 42 6c 6f 63 6b 45 78 70 72 65 73 73 69 6f 6e 28 42 6c 6f 63 6b 29 20 7c 20 45 78 70 | ".|.BlockExpression(Block).|.Exp |
| 7eaa0 | 72 65 73 73 69 6f 6e 20 22 3b 22 20 7c 20 22 3b 22 0a 0a 54 79 70 65 45 78 70 72 20 3d 20 28 50 | ression.";".|.";"..TypeExpr.=.(P |
| 7eac0 | 72 65 66 69 78 4f 70 45 78 70 72 65 73 73 69 6f 6e 20 22 21 22 20 50 72 65 66 69 78 4f 70 45 78 | refixOpExpression."!".PrefixOpEx |
| 7eae0 | 70 72 65 73 73 69 6f 6e 29 20 7c 20 50 72 65 66 69 78 4f 70 45 78 70 72 65 73 73 69 6f 6e 0a 0a | pression).|.PrefixOpExpression.. |
| 7eb00 | 42 6c 6f 63 6b 4f 72 45 78 70 72 65 73 73 69 6f 6e 20 3d 20 42 6c 6f 63 6b 20 7c 20 45 78 70 72 | BlockOrExpression.=.Block.|.Expr |
| 7eb20 | 65 73 73 69 6f 6e 0a 0a 45 78 70 72 65 73 73 69 6f 6e 20 3d 20 54 72 79 45 78 70 72 65 73 73 69 | ession..Expression.=.TryExpressi |
| 7eb40 | 6f 6e 20 7c 20 52 65 74 75 72 6e 45 78 70 72 65 73 73 69 6f 6e 20 7c 20 42 72 65 61 6b 45 78 70 | on.|.ReturnExpression.|.BreakExp |
| 7eb60 | 72 65 73 73 69 6f 6e 20 7c 20 41 73 73 69 67 6e 6d 65 6e 74 45 78 70 72 65 73 73 69 6f 6e 20 7c | ression.|.AssignmentExpression.| |
| 7eb80 | 20 43 61 6e 63 65 6c 45 78 70 72 65 73 73 69 6f 6e 20 7c 20 52 65 73 75 6d 65 45 78 70 72 65 73 | .CancelExpression.|.ResumeExpres |
| 7eba0 | 73 69 6f 6e 0a 0a 41 73 6d 45 78 70 72 65 73 73 69 6f 6e 20 3d 20 22 61 73 6d 22 20 6f 70 74 69 | sion..AsmExpression.=."asm".opti |
| 7ebc0 | 6f 6e 28 22 76 6f 6c 61 74 69 6c 65 22 29 20 22 28 22 20 53 74 72 69 6e 67 20 6f 70 74 69 6f 6e | on("volatile")."(".String.option |
| 7ebe0 | 28 41 73 6d 4f 75 74 70 75 74 29 20 22 29 22 0a 0a 41 73 6d 4f 75 74 70 75 74 20 3d 20 22 3a 22 | (AsmOutput).")"..AsmOutput.=.":" |
| 7ec00 | 20 6c 69 73 74 28 41 73 6d 4f 75 74 70 75 74 49 74 65 6d 2c 20 22 2c 22 29 20 6f 70 74 69 6f 6e | .list(AsmOutputItem,.",").option |
| 7ec20 | 28 41 73 6d 49 6e 70 75 74 29 0a 0a 41 73 6d 49 6e 70 75 74 20 3d 20 22 3a 22 20 6c 69 73 74 28 | (AsmInput)..AsmInput.=.":".list( |
| 7ec40 | 41 73 6d 49 6e 70 75 74 49 74 65 6d 2c 20 22 2c 22 29 20 6f 70 74 69 6f 6e 28 41 73 6d 43 6c 6f | AsmInputItem,.",").option(AsmClo |
| 7ec60 | 62 62 65 72 73 29 0a 0a 41 73 6d 4f 75 74 70 75 74 49 74 65 6d 20 3d 20 22 5b 22 20 53 79 6d 62 | bbers)..AsmOutputItem.=."[".Symb |
| 7ec80 | 6f 6c 20 22 5d 22 20 53 74 72 69 6e 67 20 22 28 22 20 28 53 79 6d 62 6f 6c 20 7c 20 22 2d 26 67 | ol."]".String."(".(Symbol.|."-&g |
| 7eca0 | 74 3b 22 20 54 79 70 65 45 78 70 72 29 20 22 29 22 0a 0a 41 73 6d 49 6e 70 75 74 49 74 65 6d 20 | t;".TypeExpr).")"..AsmInputItem. |
| 7ecc0 | 3d 20 22 5b 22 20 53 79 6d 62 6f 6c 20 22 5d 22 20 53 74 72 69 6e 67 20 22 28 22 20 45 78 70 72 | =."[".Symbol."]".String."(".Expr |
| 7ece0 | 65 73 73 69 6f 6e 20 22 29 22 0a 0a 41 73 6d 43 6c 6f 62 62 65 72 73 3d 20 22 3a 22 20 6c 69 73 | ession.")"..AsmClobbers=.":".lis |
| 7ed00 | 74 28 53 74 72 69 6e 67 2c 20 22 2c 22 29 0a 0a 55 6e 77 72 61 70 45 78 70 72 65 73 73 69 6f 6e | t(String,.",")..UnwrapExpression |
| 7ed20 | 20 3d 20 42 6f 6f 6c 4f 72 45 78 70 72 65 73 73 69 6f 6e 20 28 55 6e 77 72 61 70 4f 70 74 69 6f | .=.BoolOrExpression.(UnwrapOptio |
| 7ed40 | 6e 61 6c 20 7c 20 55 6e 77 72 61 70 45 72 72 6f 72 29 20 7c 20 42 6f 6f 6c 4f 72 45 78 70 72 65 | nal.|.UnwrapError).|.BoolOrExpre |
| 7ed60 | 73 73 69 6f 6e 0a 0a 55 6e 77 72 61 70 4f 70 74 69 6f 6e 61 6c 20 3d 20 22 6f 72 65 6c 73 65 22 | ssion..UnwrapOptional.=."orelse" |
| 7ed80 | 20 45 78 70 72 65 73 73 69 6f 6e 0a 0a 55 6e 77 72 61 70 45 72 72 6f 72 20 3d 20 22 63 61 74 63 | .Expression..UnwrapError.=."catc |
| 7eda0 | 68 22 20 6f 70 74 69 6f 6e 28 22 7c 22 20 53 79 6d 62 6f 6c 20 22 7c 22 29 20 45 78 70 72 65 73 | h".option("|".Symbol."|").Expres |
| 7edc0 | 73 69 6f 6e 0a 0a 41 73 73 69 67 6e 6d 65 6e 74 45 78 70 72 65 73 73 69 6f 6e 20 3d 20 55 6e 77 | sion..AssignmentExpression.=.Unw |
| 7ede0 | 72 61 70 45 78 70 72 65 73 73 69 6f 6e 20 41 73 73 69 67 6e 6d 65 6e 74 4f 70 65 72 61 74 6f 72 | rapExpression.AssignmentOperator |
| 7ee00 | 20 55 6e 77 72 61 70 45 78 70 72 65 73 73 69 6f 6e 20 7c 20 55 6e 77 72 61 70 45 78 70 72 65 73 | .UnwrapExpression.|.UnwrapExpres |
| 7ee20 | 73 69 6f 6e 0a 0a 41 73 73 69 67 6e 6d 65 6e 74 4f 70 65 72 61 74 6f 72 20 3d 20 22 3d 22 20 7c | sion..AssignmentOperator.=."=".| |
| 7ee40 | 20 22 2a 3d 22 20 7c 20 22 2f 3d 22 20 7c 20 22 25 3d 22 20 7c 20 22 2b 3d 22 20 7c 20 22 2d 3d | ."*=".|."/=".|."%=".|."+=".|."-= |
| 7ee60 | 22 20 7c 20 22 26 6c 74 3b 26 6c 74 3b 3d 22 20 7c 20 22 26 67 74 3b 26 67 74 3b 3d 22 20 7c 20 | ".|."<<=".|.">>=".|. |
| 7ee80 | 22 26 61 6d 70 3b 3d 22 20 7c 20 22 5e 3d 22 20 7c 20 22 7c 3d 22 20 7c 20 22 2a 25 3d 22 20 7c | "&=".|."^=".|."|=".|."*%=".| |
| 7eea0 | 20 22 2b 25 3d 22 20 7c 20 22 2d 25 3d 22 0a 0a 42 6c 6f 63 6b 45 78 70 72 65 73 73 69 6f 6e 28 | ."+%=".|."-%="..BlockExpression( |
| 7eec0 | 62 6f 64 79 29 20 3d 20 42 6c 6f 63 6b 20 7c 20 49 66 45 78 70 72 65 73 73 69 6f 6e 28 62 6f 64 | body).=.Block.|.IfExpression(bod |
| 7eee0 | 79 29 20 7c 20 49 66 45 72 72 6f 72 45 78 70 72 65 73 73 69 6f 6e 28 62 6f 64 79 29 20 7c 20 54 | y).|.IfErrorExpression(body).|.T |
| 7ef00 | 65 73 74 45 78 70 72 65 73 73 69 6f 6e 28 62 6f 64 79 29 20 7c 20 57 68 69 6c 65 45 78 70 72 65 | estExpression(body).|.WhileExpre |
| 7ef20 | 73 73 69 6f 6e 28 62 6f 64 79 29 20 7c 20 46 6f 72 45 78 70 72 65 73 73 69 6f 6e 28 62 6f 64 79 | ssion(body).|.ForExpression(body |
| 7ef40 | 29 20 7c 20 53 77 69 74 63 68 45 78 70 72 65 73 73 69 6f 6e 20 7c 20 43 6f 6d 70 54 69 6d 65 45 | ).|.SwitchExpression.|.CompTimeE |
| 7ef60 | 78 70 72 65 73 73 69 6f 6e 28 62 6f 64 79 29 20 7c 20 53 75 73 70 65 6e 64 45 78 70 72 65 73 73 | xpression(body).|.SuspendExpress |
| 7ef80 | 69 6f 6e 28 62 6f 64 79 29 0a 0a 43 6f 6d 70 54 69 6d 65 45 78 70 72 65 73 73 69 6f 6e 28 62 6f | ion(body)..CompTimeExpression(bo |
| 7efa0 | 64 79 29 20 3d 20 22 63 6f 6d 70 74 69 6d 65 22 20 62 6f 64 79 0a 0a 53 77 69 74 63 68 45 78 70 | dy).=."comptime".body..SwitchExp |
| 7efc0 | 72 65 73 73 69 6f 6e 20 3d 20 22 73 77 69 74 63 68 22 20 22 28 22 20 45 78 70 72 65 73 73 69 6f | ression.=."switch"."(".Expressio |
| 7efe0 | 6e 20 22 29 22 20 22 7b 22 20 6d 61 6e 79 28 53 77 69 74 63 68 50 72 6f 6e 67 29 20 22 7d 22 0a | n.")"."{".many(SwitchProng)."}". |
| 7f000 | 0a 53 77 69 74 63 68 50 72 6f 6e 67 20 3d 20 28 6c 69 73 74 28 53 77 69 74 63 68 49 74 65 6d 2c | .SwitchProng.=.(list(SwitchItem, |
| 7f020 | 20 22 2c 22 29 20 7c 20 22 65 6c 73 65 22 29 20 22 3d 26 67 74 3b 22 20 6f 70 74 69 6f 6e 28 22 | .",").|."else")."=>".option(" |
| 7f040 | 7c 22 20 6f 70 74 69 6f 6e 28 22 2a 22 29 20 53 79 6d 62 6f 6c 20 22 7c 22 29 20 45 78 70 72 65 | |".option("*").Symbol."|").Expre |
| 7f060 | 73 73 69 6f 6e 20 22 2c 22 0a 0a 53 77 69 74 63 68 49 74 65 6d 20 3d 20 45 78 70 72 65 73 73 69 | ssion.","..SwitchItem.=.Expressi |
| 7f080 | 6f 6e 20 7c 20 28 45 78 70 72 65 73 73 69 6f 6e 20 22 2e 2e 2e 22 20 45 78 70 72 65 73 73 69 6f | on.|.(Expression."...".Expressio |
| 7f0a0 | 6e 29 0a 0a 46 6f 72 45 78 70 72 65 73 73 69 6f 6e 28 62 6f 64 79 29 20 3d 20 6f 70 74 69 6f 6e | n)..ForExpression(body).=.option |
| 7f0c0 | 28 53 79 6d 62 6f 6c 20 22 3a 22 29 20 6f 70 74 69 6f 6e 28 22 69 6e 6c 69 6e 65 22 29 20 22 66 | (Symbol.":").option("inline")."f |
| 7f0e0 | 6f 72 22 20 22 28 22 20 45 78 70 72 65 73 73 69 6f 6e 20 22 29 22 20 6f 70 74 69 6f 6e 28 22 7c | or"."(".Expression.")".option("| |
| 7f100 | 22 20 6f 70 74 69 6f 6e 28 22 2a 22 29 20 53 79 6d 62 6f 6c 20 6f 70 74 69 6f 6e 28 22 2c 22 20 | ".option("*").Symbol.option(",". |
| 7f120 | 53 79 6d 62 6f 6c 29 20 22 7c 22 29 20 62 6f 64 79 20 6f 70 74 69 6f 6e 28 22 65 6c 73 65 22 20 | Symbol)."|").body.option("else". |
| 7f140 | 42 6c 6f 63 6b 45 78 70 72 65 73 73 69 6f 6e 28 62 6f 64 79 29 29 0a 0a 42 6f 6f 6c 4f 72 45 78 | BlockExpression(body))..BoolOrEx |
| 7f160 | 70 72 65 73 73 69 6f 6e 20 3d 20 42 6f 6f 6c 41 6e 64 45 78 70 72 65 73 73 69 6f 6e 20 22 6f 72 | pression.=.BoolAndExpression."or |
| 7f180 | 22 20 42 6f 6f 6c 4f 72 45 78 70 72 65 73 73 69 6f 6e 20 7c 20 42 6f 6f 6c 41 6e 64 45 78 70 72 | ".BoolOrExpression.|.BoolAndExpr |
| 7f1a0 | 65 73 73 69 6f 6e 0a 0a 52 65 74 75 72 6e 45 78 70 72 65 73 73 69 6f 6e 20 3d 20 22 72 65 74 75 | ession..ReturnExpression.=."retu |
| 7f1c0 | 72 6e 22 20 6f 70 74 69 6f 6e 28 45 78 70 72 65 73 73 69 6f 6e 29 0a 0a 54 72 79 45 78 70 72 65 | rn".option(Expression)..TryExpre |
| 7f1e0 | 73 73 69 6f 6e 20 3d 20 22 74 72 79 22 20 45 78 70 72 65 73 73 69 6f 6e 0a 0a 41 77 61 69 74 45 | ssion.=."try".Expression..AwaitE |
| 7f200 | 78 70 72 65 73 73 69 6f 6e 20 3d 20 22 61 77 61 69 74 22 20 45 78 70 72 65 73 73 69 6f 6e 0a 0a | xpression.=."await".Expression.. |
| 7f220 | 42 72 65 61 6b 45 78 70 72 65 73 73 69 6f 6e 20 3d 20 22 62 72 65 61 6b 22 20 6f 70 74 69 6f 6e | BreakExpression.=."break".option |
| 7f240 | 28 22 3a 22 20 53 79 6d 62 6f 6c 29 20 6f 70 74 69 6f 6e 28 45 78 70 72 65 73 73 69 6f 6e 29 0a | (":".Symbol).option(Expression). |
| 7f260 | 0a 43 61 6e 63 65 6c 45 78 70 72 65 73 73 69 6f 6e 20 3d 20 22 63 61 6e 63 65 6c 22 20 45 78 70 | .CancelExpression.=."cancel".Exp |
| 7f280 | 72 65 73 73 69 6f 6e 3b 0a 0a 52 65 73 75 6d 65 45 78 70 72 65 73 73 69 6f 6e 20 3d 20 22 72 65 | ression;..ResumeExpression.=."re |
| 7f2a0 | 73 75 6d 65 22 20 45 78 70 72 65 73 73 69 6f 6e 3b 0a 0a 44 65 66 65 72 28 62 6f 64 79 29 20 3d | sume".Expression;..Defer(body).= |
| 7f2c0 | 20 28 22 64 65 66 65 72 22 20 7c 20 22 64 65 66 65 72 72 6f 72 22 29 20 62 6f 64 79 0a 0a 49 66 | .("defer".|."deferror").body..If |
| 7f2e0 | 45 78 70 72 65 73 73 69 6f 6e 28 62 6f 64 79 29 20 3d 20 22 69 66 22 20 22 28 22 20 45 78 70 72 | Expression(body).=."if"."(".Expr |
| 7f300 | 65 73 73 69 6f 6e 20 22 29 22 20 62 6f 64 79 20 6f 70 74 69 6f 6e 28 22 65 6c 73 65 22 20 42 6c | ession.")".body.option("else".Bl |
| 7f320 | 6f 63 6b 45 78 70 72 65 73 73 69 6f 6e 28 62 6f 64 79 29 29 0a 0a 53 75 73 70 65 6e 64 45 78 70 | ockExpression(body))..SuspendExp |
| 7f340 | 72 65 73 73 69 6f 6e 28 62 6f 64 79 29 20 3d 20 22 73 75 73 70 65 6e 64 22 20 6f 70 74 69 6f 6e | ression(body).=."suspend".option |
| 7f360 | 28 20 62 6f 64 79 20 29 0a 0a 49 66 45 72 72 6f 72 45 78 70 72 65 73 73 69 6f 6e 28 62 6f 64 79 | (.body.)..IfErrorExpression(body |
| 7f380 | 29 20 3d 20 22 69 66 22 20 22 28 22 20 45 78 70 72 65 73 73 69 6f 6e 20 22 29 22 20 6f 70 74 69 | ).=."if"."(".Expression.")".opti |
| 7f3a0 | 6f 6e 28 22 7c 22 20 6f 70 74 69 6f 6e 28 22 2a 22 29 20 53 79 6d 62 6f 6c 20 22 7c 22 29 20 62 | on("|".option("*").Symbol."|").b |
| 7f3c0 | 6f 64 79 20 22 65 6c 73 65 22 20 22 7c 22 20 53 79 6d 62 6f 6c 20 22 7c 22 20 42 6c 6f 63 6b 45 | ody."else"."|".Symbol."|".BlockE |
| 7f3e0 | 78 70 72 65 73 73 69 6f 6e 28 62 6f 64 79 29 0a 0a 54 65 73 74 45 78 70 72 65 73 73 69 6f 6e 28 | xpression(body)..TestExpression( |
| 7f400 | 62 6f 64 79 29 20 3d 20 22 69 66 22 20 22 28 22 20 45 78 70 72 65 73 73 69 6f 6e 20 22 29 22 20 | body).=."if"."(".Expression.")". |
| 7f420 | 6f 70 74 69 6f 6e 28 22 7c 22 20 6f 70 74 69 6f 6e 28 22 2a 22 29 20 53 79 6d 62 6f 6c 20 22 7c | option("|".option("*").Symbol."| |
| 7f440 | 22 29 20 62 6f 64 79 20 6f 70 74 69 6f 6e 28 22 65 6c 73 65 22 20 42 6c 6f 63 6b 45 78 70 72 65 | ").body.option("else".BlockExpre |
| 7f460 | 73 73 69 6f 6e 28 62 6f 64 79 29 29 0a 0a 57 68 69 6c 65 45 78 70 72 65 73 73 69 6f 6e 28 62 6f | ssion(body))..WhileExpression(bo |
| 7f480 | 64 79 29 20 3d 20 6f 70 74 69 6f 6e 28 53 79 6d 62 6f 6c 20 22 3a 22 29 20 6f 70 74 69 6f 6e 28 | dy).=.option(Symbol.":").option( |
| 7f4a0 | 22 69 6e 6c 69 6e 65 22 29 20 22 77 68 69 6c 65 22 20 22 28 22 20 45 78 70 72 65 73 73 69 6f 6e | "inline")."while"."(".Expression |
| 7f4c0 | 20 22 29 22 20 6f 70 74 69 6f 6e 28 22 7c 22 20 6f 70 74 69 6f 6e 28 22 2a 22 29 20 53 79 6d 62 | .")".option("|".option("*").Symb |
| 7f4e0 | 6f 6c 20 22 7c 22 29 20 6f 70 74 69 6f 6e 28 22 3a 22 20 22 28 22 20 45 78 70 72 65 73 73 69 6f | ol."|").option(":"."(".Expressio |
| 7f500 | 6e 20 22 29 22 29 20 62 6f 64 79 20 6f 70 74 69 6f 6e 28 22 65 6c 73 65 22 20 6f 70 74 69 6f 6e | n.")").body.option("else".option |
| 7f520 | 28 22 7c 22 20 53 79 6d 62 6f 6c 20 22 7c 22 29 20 42 6c 6f 63 6b 45 78 70 72 65 73 73 69 6f 6e | ("|".Symbol."|").BlockExpression |
| 7f540 | 28 62 6f 64 79 29 29 0a 0a 42 6f 6f 6c 41 6e 64 45 78 70 72 65 73 73 69 6f 6e 20 3d 20 43 6f 6d | (body))..BoolAndExpression.=.Com |
| 7f560 | 70 61 72 69 73 6f 6e 45 78 70 72 65 73 73 69 6f 6e 20 22 61 6e 64 22 20 42 6f 6f 6c 41 6e 64 45 | parisonExpression."and".BoolAndE |
| 7f580 | 78 70 72 65 73 73 69 6f 6e 20 7c 20 43 6f 6d 70 61 72 69 73 6f 6e 45 78 70 72 65 73 73 69 6f 6e | xpression.|.ComparisonExpression |
| 7f5a0 | 0a 0a 43 6f 6d 70 61 72 69 73 6f 6e 45 78 70 72 65 73 73 69 6f 6e 20 3d 20 42 69 6e 61 72 79 4f | ..ComparisonExpression.=.BinaryO |
| 7f5c0 | 72 45 78 70 72 65 73 73 69 6f 6e 20 43 6f 6d 70 61 72 69 73 6f 6e 4f 70 65 72 61 74 6f 72 20 42 | rExpression.ComparisonOperator.B |
| 7f5e0 | 69 6e 61 72 79 4f 72 45 78 70 72 65 73 73 69 6f 6e 20 7c 20 42 69 6e 61 72 79 4f 72 45 78 70 72 | inaryOrExpression.|.BinaryOrExpr |
| 7f600 | 65 73 73 69 6f 6e 0a 0a 43 6f 6d 70 61 72 69 73 6f 6e 4f 70 65 72 61 74 6f 72 20 3d 20 22 3d 3d | ession..ComparisonOperator.=."== |
| 7f620 | 22 20 7c 20 22 21 3d 22 20 7c 20 22 26 6c 74 3b 22 20 7c 20 22 26 67 74 3b 22 20 7c 20 22 26 6c | ".|."!=".|."<".|.">".|."&l |
| 7f640 | 74 3b 3d 22 20 7c 20 22 26 67 74 3b 3d 22 0a 0a 42 69 6e 61 72 79 4f 72 45 78 70 72 65 73 73 69 | t;=".|.">="..BinaryOrExpressi |
| 7f660 | 6f 6e 20 3d 20 42 69 6e 61 72 79 58 6f 72 45 78 70 72 65 73 73 69 6f 6e 20 22 7c 22 20 42 69 6e | on.=.BinaryXorExpression."|".Bin |
| 7f680 | 61 72 79 4f 72 45 78 70 72 65 73 73 69 6f 6e 20 7c 20 42 69 6e 61 72 79 58 6f 72 45 78 70 72 65 | aryOrExpression.|.BinaryXorExpre |
| 7f6a0 | 73 73 69 6f 6e 0a 0a 42 69 6e 61 72 79 58 6f 72 45 78 70 72 65 73 73 69 6f 6e 20 3d 20 42 69 6e | ssion..BinaryXorExpression.=.Bin |
| 7f6c0 | 61 72 79 41 6e 64 45 78 70 72 65 73 73 69 6f 6e 20 22 5e 22 20 42 69 6e 61 72 79 58 6f 72 45 78 | aryAndExpression."^".BinaryXorEx |
| 7f6e0 | 70 72 65 73 73 69 6f 6e 20 7c 20 42 69 6e 61 72 79 41 6e 64 45 78 70 72 65 73 73 69 6f 6e 0a 0a | pression.|.BinaryAndExpression.. |
| 7f700 | 42 69 6e 61 72 79 41 6e 64 45 78 70 72 65 73 73 69 6f 6e 20 3d 20 42 69 74 53 68 69 66 74 45 78 | BinaryAndExpression.=.BitShiftEx |
| 7f720 | 70 72 65 73 73 69 6f 6e 20 22 26 61 6d 70 3b 22 20 42 69 6e 61 72 79 41 6e 64 45 78 70 72 65 73 | pression."&".BinaryAndExpres |
| 7f740 | 73 69 6f 6e 20 7c 20 42 69 74 53 68 69 66 74 45 78 70 72 65 73 73 69 6f 6e 0a 0a 42 69 74 53 68 | sion.|.BitShiftExpression..BitSh |
| 7f760 | 69 66 74 45 78 70 72 65 73 73 69 6f 6e 20 3d 20 41 64 64 69 74 69 6f 6e 45 78 70 72 65 73 73 69 | iftExpression.=.AdditionExpressi |
| 7f780 | 6f 6e 20 42 69 74 53 68 69 66 74 4f 70 65 72 61 74 6f 72 20 42 69 74 53 68 69 66 74 45 78 70 72 | on.BitShiftOperator.BitShiftExpr |
| 7f7a0 | 65 73 73 69 6f 6e 20 7c 20 41 64 64 69 74 69 6f 6e 45 78 70 72 65 73 73 69 6f 6e 0a 0a 42 69 74 | ession.|.AdditionExpression..Bit |
| 7f7c0 | 53 68 69 66 74 4f 70 65 72 61 74 6f 72 20 3d 20 22 26 6c 74 3b 26 6c 74 3b 22 20 7c 20 22 26 67 | ShiftOperator.=."<<".|."&g |
| 7f7e0 | 74 3b 26 67 74 3b 22 0a 0a 41 64 64 69 74 69 6f 6e 45 78 70 72 65 73 73 69 6f 6e 20 3d 20 4d 75 | t;>"..AdditionExpression.=.Mu |
| 7f800 | 6c 74 69 70 6c 79 45 78 70 72 65 73 73 69 6f 6e 20 41 64 64 69 74 69 6f 6e 4f 70 65 72 61 74 6f | ltiplyExpression.AdditionOperato |
| 7f820 | 72 20 41 64 64 69 74 69 6f 6e 45 78 70 72 65 73 73 69 6f 6e 20 7c 20 4d 75 6c 74 69 70 6c 79 45 | r.AdditionExpression.|.MultiplyE |
| 7f840 | 78 70 72 65 73 73 69 6f 6e 0a 0a 41 64 64 69 74 69 6f 6e 4f 70 65 72 61 74 6f 72 20 3d 20 22 2b | xpression..AdditionOperator.=."+ |
| 7f860 | 22 20 7c 20 22 2d 22 20 7c 20 22 2b 2b 22 20 7c 20 22 2b 25 22 20 7c 20 22 2d 25 22 0a 0a 4d 75 | ".|."-".|."++".|."+%".|."-%"..Mu |
| 7f880 | 6c 74 69 70 6c 79 45 78 70 72 65 73 73 69 6f 6e 20 3d 20 43 75 72 6c 79 53 75 66 66 69 78 45 78 | ltiplyExpression.=.CurlySuffixEx |
| 7f8a0 | 70 72 65 73 73 69 6f 6e 20 4d 75 6c 74 69 70 6c 79 4f 70 65 72 61 74 6f 72 20 4d 75 6c 74 69 70 | pression.MultiplyOperator.Multip |
| 7f8c0 | 6c 79 45 78 70 72 65 73 73 69 6f 6e 20 7c 20 43 75 72 6c 79 53 75 66 66 69 78 45 78 70 72 65 73 | lyExpression.|.CurlySuffixExpres |
| 7f8e0 | 73 69 6f 6e 0a 0a 43 75 72 6c 79 53 75 66 66 69 78 45 78 70 72 65 73 73 69 6f 6e 20 3d 20 54 79 | sion..CurlySuffixExpression.=.Ty |
| 7f900 | 70 65 45 78 70 72 20 6f 70 74 69 6f 6e 28 43 6f 6e 74 61 69 6e 65 72 49 6e 69 74 45 78 70 72 65 | peExpr.option(ContainerInitExpre |
| 7f920 | 73 73 69 6f 6e 29 0a 0a 4d 75 6c 74 69 70 6c 79 4f 70 65 72 61 74 6f 72 20 3d 20 22 7c 7c 22 20 | ssion)..MultiplyOperator.=."||". |
| 7f940 | 7c 20 22 2a 22 20 7c 20 22 2f 22 20 7c 20 22 25 22 20 7c 20 22 2a 2a 22 20 7c 20 22 2a 25 22 0a | |."*".|."/".|."%".|."**".|."*%". |
| 7f960 | 0a 50 72 65 66 69 78 4f 70 45 78 70 72 65 73 73 69 6f 6e 20 3d 20 50 72 65 66 69 78 4f 70 20 54 | .PrefixOpExpression.=.PrefixOp.T |
| 7f980 | 79 70 65 45 78 70 72 20 7c 20 53 75 66 66 69 78 4f 70 45 78 70 72 65 73 73 69 6f 6e 0a 0a 53 75 | ypeExpr.|.SuffixOpExpression..Su |
| 7f9a0 | 66 66 69 78 4f 70 45 78 70 72 65 73 73 69 6f 6e 20 3d 20 28 22 61 73 79 6e 63 22 20 6f 70 74 69 | ffixOpExpression.=.("async".opti |
| 7f9c0 | 6f 6e 28 22 26 6c 74 3b 22 20 53 75 66 66 69 78 4f 70 45 78 70 72 65 73 73 69 6f 6e 20 22 26 67 | on("<".SuffixOpExpression."&g |
| 7f9e0 | 74 3b 22 29 20 53 75 66 66 69 78 4f 70 45 78 70 72 65 73 73 69 6f 6e 20 46 6e 43 61 6c 6c 45 78 | t;").SuffixOpExpression.FnCallEx |
| 7fa00 | 70 72 65 73 73 69 6f 6e 29 20 7c 20 50 72 69 6d 61 72 79 45 78 70 72 65 73 73 69 6f 6e 20 6f 70 | pression).|.PrimaryExpression.op |
| 7fa20 | 74 69 6f 6e 28 46 6e 43 61 6c 6c 45 78 70 72 65 73 73 69 6f 6e 20 7c 20 41 72 72 61 79 41 63 63 | tion(FnCallExpression.|.ArrayAcc |
| 7fa40 | 65 73 73 45 78 70 72 65 73 73 69 6f 6e 20 7c 20 46 69 65 6c 64 41 63 63 65 73 73 45 78 70 72 65 | essExpression.|.FieldAccessExpre |
| 7fa60 | 73 73 69 6f 6e 20 7c 20 53 6c 69 63 65 45 78 70 72 65 73 73 69 6f 6e 20 7c 20 22 2e 2a 22 20 7c | ssion.|.SliceExpression.|.".*".| |
| 7fa80 | 20 22 2e 3f 22 29 0a 0a 46 69 65 6c 64 41 63 63 65 73 73 45 78 70 72 65 73 73 69 6f 6e 20 3d 20 | .".?")..FieldAccessExpression.=. |
| 7faa0 | 22 2e 22 20 53 79 6d 62 6f 6c 0a 0a 46 6e 43 61 6c 6c 45 78 70 72 65 73 73 69 6f 6e 20 3d 20 22 | ".".Symbol..FnCallExpression.=." |
| 7fac0 | 28 22 20 6c 69 73 74 28 45 78 70 72 65 73 73 69 6f 6e 2c 20 22 2c 22 29 20 22 29 22 0a 0a 41 72 | (".list(Expression,.",").")"..Ar |
| 7fae0 | 72 61 79 41 63 63 65 73 73 45 78 70 72 65 73 73 69 6f 6e 20 3d 20 22 5b 22 20 45 78 70 72 65 73 | rayAccessExpression.=."[".Expres |
| 7fb00 | 73 69 6f 6e 20 22 5d 22 0a 0a 53 6c 69 63 65 45 78 70 72 65 73 73 69 6f 6e 20 3d 20 22 5b 22 20 | sion."]"..SliceExpression.=."[". |
| 7fb20 | 45 78 70 72 65 73 73 69 6f 6e 20 22 2e 2e 22 20 6f 70 74 69 6f 6e 28 45 78 70 72 65 73 73 69 6f | Expression."..".option(Expressio |
| 7fb40 | 6e 29 20 22 5d 22 0a 0a 43 6f 6e 74 61 69 6e 65 72 49 6e 69 74 45 78 70 72 65 73 73 69 6f 6e 20 | n)."]"..ContainerInitExpression. |
| 7fb60 | 3d 20 22 7b 22 20 43 6f 6e 74 61 69 6e 65 72 49 6e 69 74 42 6f 64 79 20 22 7d 22 0a 0a 43 6f 6e | =."{".ContainerInitBody."}"..Con |
| 7fb80 | 74 61 69 6e 65 72 49 6e 69 74 42 6f 64 79 20 3d 20 6c 69 73 74 28 53 74 72 75 63 74 4c 69 74 65 | tainerInitBody.=.list(StructLite |
| 7fba0 | 72 61 6c 46 69 65 6c 64 2c 20 22 2c 22 29 20 7c 20 6c 69 73 74 28 45 78 70 72 65 73 73 69 6f 6e | ralField,.",").|.list(Expression |
| 7fbc0 | 2c 20 22 2c 22 29 0a 0a 53 74 72 75 63 74 4c 69 74 65 72 61 6c 46 69 65 6c 64 20 3d 20 22 2e 22 | ,.",")..StructLiteralField.=."." |
| 7fbe0 | 20 53 79 6d 62 6f 6c 20 22 3d 22 20 45 78 70 72 65 73 73 69 6f 6e 0a 0a 50 72 65 66 69 78 4f 70 | .Symbol."=".Expression..PrefixOp |
| 7fc00 | 20 3d 20 22 21 22 20 7c 20 22 2d 22 20 7c 20 22 7e 22 20 7c 20 28 28 22 2a 22 20 7c 20 22 5b 2a | .=."!".|."-".|."~".|.(("*".|."[* |
| 7fc20 | 5d 22 29 20 6f 70 74 69 6f 6e 28 22 61 6c 69 67 6e 22 20 22 28 22 20 45 78 70 72 65 73 73 69 6f | ]").option("align"."(".Expressio |
| 7fc40 | 6e 20 6f 70 74 69 6f 6e 28 22 3a 22 20 49 6e 74 65 67 65 72 20 22 3a 22 20 49 6e 74 65 67 65 72 | n.option(":".Integer.":".Integer |
| 7fc60 | 29 20 22 29 22 20 29 20 6f 70 74 69 6f 6e 28 22 63 6f 6e 73 74 22 29 20 6f 70 74 69 6f 6e 28 22 | ).")".).option("const").option(" |
| 7fc80 | 76 6f 6c 61 74 69 6c 65 22 29 29 20 7c 20 22 3f 22 20 7c 20 22 2d 25 22 20 7c 20 22 74 72 79 22 | volatile")).|."?".|."-%".|."try" |
| 7fca0 | 20 7c 20 22 61 77 61 69 74 22 0a 0a 50 72 69 6d 61 72 79 45 78 70 72 65 73 73 69 6f 6e 20 3d 20 | .|."await"..PrimaryExpression.=. |
| 7fcc0 | 49 6e 74 65 67 65 72 20 7c 20 46 6c 6f 61 74 20 7c 20 53 74 72 69 6e 67 20 7c 20 43 68 61 72 4c | Integer.|.Float.|.String.|.CharL |
| 7fce0 | 69 74 65 72 61 6c 20 7c 20 4b 65 79 77 6f 72 64 4c 69 74 65 72 61 6c 20 7c 20 47 72 6f 75 70 65 | iteral.|.KeywordLiteral.|.Groupe |
| 7fd00 | 64 45 78 70 72 65 73 73 69 6f 6e 20 7c 20 42 6c 6f 63 6b 45 78 70 72 65 73 73 69 6f 6e 28 42 6c | dExpression.|.BlockExpression(Bl |
| 7fd20 | 6f 63 6b 4f 72 45 78 70 72 65 73 73 69 6f 6e 29 20 7c 20 53 79 6d 62 6f 6c 20 7c 20 28 22 40 22 | ockOrExpression).|.Symbol.|.("@" |
| 7fd40 | 20 53 79 6d 62 6f 6c 20 46 6e 43 61 6c 6c 45 78 70 72 65 73 73 69 6f 6e 29 20 7c 20 41 72 72 61 | .Symbol.FnCallExpression).|.Arra |
| 7fd60 | 79 54 79 70 65 20 7c 20 46 6e 50 72 6f 74 6f 20 7c 20 41 73 6d 45 78 70 72 65 73 73 69 6f 6e 20 | yType.|.FnProto.|.AsmExpression. |
| 7fd80 | 7c 20 43 6f 6e 74 61 69 6e 65 72 44 65 63 6c 20 7c 20 28 22 63 6f 6e 74 69 6e 75 65 22 20 6f 70 | |.ContainerDecl.|.("continue".op |
| 7fda0 | 74 69 6f 6e 28 22 3a 22 20 53 79 6d 62 6f 6c 29 29 20 7c 20 45 72 72 6f 72 53 65 74 44 65 63 6c | tion(":".Symbol)).|.ErrorSetDecl |
| 7fdc0 | 20 7c 20 50 72 6f 6d 69 73 65 54 79 70 65 0a 0a 50 72 6f 6d 69 73 65 54 79 70 65 20 3d 20 22 70 | .|.PromiseType..PromiseType.=."p |
| 7fde0 | 72 6f 6d 69 73 65 22 20 6f 70 74 69 6f 6e 28 22 2d 26 67 74 3b 22 20 54 79 70 65 45 78 70 72 29 | romise".option("->".TypeExpr) |
| 7fe00 | 0a 0a 41 72 72 61 79 54 79 70 65 20 3a 20 22 5b 22 20 6f 70 74 69 6f 6e 28 45 78 70 72 65 73 73 | ..ArrayType.:."[".option(Express |
| 7fe20 | 69 6f 6e 29 20 22 5d 22 20 6f 70 74 69 6f 6e 28 22 61 6c 69 67 6e 22 20 22 28 22 20 45 78 70 72 | ion)."]".option("align"."(".Expr |
| 7fe40 | 65 73 73 69 6f 6e 20 6f 70 74 69 6f 6e 28 22 3a 22 20 49 6e 74 65 67 65 72 20 22 3a 22 20 49 6e | ession.option(":".Integer.":".In |
| 7fe60 | 74 65 67 65 72 29 20 22 29 22 29 29 20 6f 70 74 69 6f 6e 28 22 63 6f 6e 73 74 22 29 20 6f 70 74 | teger).")")).option("const").opt |
| 7fe80 | 69 6f 6e 28 22 76 6f 6c 61 74 69 6c 65 22 29 20 54 79 70 65 45 78 70 72 0a 0a 47 72 6f 75 70 65 | ion("volatile").TypeExpr..Groupe |
| 7fea0 | 64 45 78 70 72 65 73 73 69 6f 6e 20 3d 20 22 28 22 20 45 78 70 72 65 73 73 69 6f 6e 20 22 29 22 | dExpression.=."(".Expression.")" |
| 7fec0 | 0a 0a 4b 65 79 77 6f 72 64 4c 69 74 65 72 61 6c 20 3d 20 22 74 72 75 65 22 20 7c 20 22 66 61 6c | ..KeywordLiteral.=."true".|."fal |
| 7fee0 | 73 65 22 20 7c 20 22 6e 75 6c 6c 22 20 7c 20 22 75 6e 64 65 66 69 6e 65 64 22 20 7c 20 22 65 72 | se".|."null".|."undefined".|."er |
| 7ff00 | 72 6f 72 22 20 7c 20 22 75 6e 72 65 61 63 68 61 62 6c 65 22 20 7c 20 22 73 75 73 70 65 6e 64 22 | ror".|."unreachable".|."suspend" |
| 7ff20 | 0a 0a 45 72 72 6f 72 53 65 74 44 65 63 6c 20 3d 20 22 65 72 72 6f 72 22 20 22 7b 22 20 6c 69 73 | ..ErrorSetDecl.=."error"."{".lis |
| 7ff40 | 74 28 53 79 6d 62 6f 6c 2c 20 22 2c 22 29 20 22 7d 22 0a 0a 43 6f 6e 74 61 69 6e 65 72 44 65 63 | t(Symbol,.",")."}"..ContainerDec |
| 7ff60 | 6c 20 3d 20 6f 70 74 69 6f 6e 28 22 65 78 74 65 72 6e 22 20 7c 20 22 70 61 63 6b 65 64 22 29 0a | l.=.option("extern".|."packed"). |
| 7ff80 | 20 20 28 22 73 74 72 75 63 74 22 20 6f 70 74 69 6f 6e 28 47 72 6f 75 70 65 64 45 78 70 72 65 73 | ..("struct".option(GroupedExpres |
| 7ffa0 | 73 69 6f 6e 29 20 7c 20 22 75 6e 69 6f 6e 22 20 6f 70 74 69 6f 6e 28 22 65 6e 75 6d 22 20 6f 70 | sion).|."union".option("enum".op |
| 7ffc0 | 74 69 6f 6e 28 47 72 6f 75 70 65 64 45 78 70 72 65 73 73 69 6f 6e 29 20 7c 20 47 72 6f 75 70 65 | tion(GroupedExpression).|.Groupe |
| 7ffe0 | 64 45 78 70 72 65 73 73 69 6f 6e 29 20 7c 20 28 22 65 6e 75 6d 22 20 6f 70 74 69 6f 6e 28 47 72 | dExpression).|.("enum".option(Gr |
| 80000 | 6f 75 70 65 64 45 78 70 72 65 73 73 69 6f 6e 29 29 29 0a 20 20 22 7b 22 20 6d 61 6e 79 28 43 6f | oupedExpression)))..."{".many(Co |
| 80020 | 6e 74 61 69 6e 65 72 4d 65 6d 62 65 72 29 20 22 7d 22 3c 2f 63 6f 64 65 3e 3c 2f 70 72 65 3e 0a | ntainerMember)."}"</code></pre>. |
| 80040 | 20 20 20 20 20 20 0a 20 20 20 20 20 20 3c 68 31 20 69 64 3d 22 5a 65 6e 22 3e 5a 65 6e 3c 2f 68 | .............<h1.id="Zen">Zen</h |
| 80060 | 31 3e 0a 0a 20 20 20 20 20 20 3c 75 6c 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 6f 6d 6d 75 | 1>........<ul>.........<li>Commu |
| 80080 | 6e 69 63 61 74 65 20 69 6e 74 65 6e 74 20 70 72 65 63 69 73 65 6c 79 2e 3c 2f 6c 69 3e 0a 20 20 | nicate.intent.precisely.</li>... |
| 800a0 | 20 20 20 20 20 20 3c 6c 69 3e 45 64 67 65 20 63 61 73 65 73 20 6d 61 74 74 65 72 2e 3c 2f 6c 69 | ......<li>Edge.cases.matter.</li |
| 800c0 | 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 46 61 76 6f 72 20 72 65 61 64 69 6e 67 20 63 6f 64 65 | >.........<li>Favor.reading.code |
| 800e0 | 20 6f 76 65 72 20 77 72 69 74 69 6e 67 20 63 6f 64 65 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 | .over.writing.code.</li>........ |
| 80100 | 20 3c 6c 69 3e 4f 6e 6c 79 20 6f 6e 65 20 6f 62 76 69 6f 75 73 20 77 61 79 20 74 6f 20 64 6f 20 | .<li>Only.one.obvious.way.to.do. |
| 80120 | 74 68 69 6e 67 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 52 75 6e 74 69 6d 65 | things.</li>.........<li>Runtime |
| 80140 | 20 63 72 61 73 68 65 73 20 61 72 65 20 62 65 74 74 65 72 20 74 68 61 6e 20 62 75 67 73 2e 3c 2f | .crashes.are.better.than.bugs.</ |
| 80160 | 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 43 6f 6d 70 69 6c 65 20 65 72 72 6f 72 73 20 61 | li>.........<li>Compile.errors.a |
| 80180 | 72 65 20 62 65 74 74 65 72 20 74 68 61 6e 20 72 75 6e 74 69 6d 65 20 63 72 61 73 68 65 73 2e 3c | re.better.than.runtime.crashes.< |
| 801a0 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 49 6e 63 72 65 6d 65 6e 74 61 6c 20 69 6d 70 | /li>.........<li>Incremental.imp |
| 801c0 | 72 6f 76 65 6d 65 6e 74 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 41 76 6f 69 | rovements.</li>.........<li>Avoi |
| 801e0 | 64 20 6c 6f 63 61 6c 20 6d 61 78 69 6d 75 6d 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c | d.local.maximums.</li>.........< |
| 80200 | 6c 69 3e 52 65 64 75 63 65 20 74 68 65 20 61 6d 6f 75 6e 74 20 6f 6e 65 20 6d 75 73 74 20 72 65 | li>Reduce.the.amount.one.must.re |
| 80220 | 6d 65 6d 62 65 72 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 4d 69 6e 69 6d 69 7a | member.</li>.........<li>Minimiz |
| 80240 | 65 20 65 6e 65 72 67 79 20 73 70 65 6e 74 20 6f 6e 20 63 6f 64 69 6e 67 20 73 74 79 6c 65 2e 3c | e.energy.spent.on.coding.style.< |
| 80260 | 2f 6c 69 3e 0a 20 20 20 20 20 20 20 20 3c 6c 69 3e 54 6f 67 65 74 68 65 72 20 77 65 20 73 65 72 | /li>.........<li>Together.we.ser |
| 80280 | 76 65 20 65 6e 64 20 75 73 65 72 73 2e 3c 2f 6c 69 3e 0a 20 20 20 20 20 20 3c 2f 75 6c 3e 0a 20 | ve.end.users.</li>.......</ul>.. |
| 802a0 | 20 20 20 20 20 0a 20 20 20 20 3c 2f 64 69 76 3e 0a 20 20 3c 2f 62 6f 64 79 3e 0a 3c 2f 68 74 6d | ..........</div>...</body>.</htm |
| 802c0 | 6c 3e 0a 50 4b 01 02 14 00 14 00 00 00 00 00 00 00 21 52 6f 61 ab 2c 14 00 00 00 14 00 00 00 08 | l>.PK............!Roa.,......... |
| 802e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 6d 69 6d 65 74 79 70 65 50 4b 01 02 14 00 14 | .................mimetypePK..... |
| 80300 | 00 00 00 00 00 00 00 21 52 6f 92 d0 0a fc 00 00 00 fc 00 00 00 16 00 00 00 00 00 00 00 00 00 00 | .......!Ro...................... |
| 80320 | 00 00 00 3a 00 00 00 4d 45 54 41 2d 49 4e 46 2f 63 6f 6e 74 61 69 6e 65 72 2e 78 6d 6c 50 4b 01 | ...:...META-INF/container.xmlPK. |
| 80340 | 02 14 00 14 00 00 00 00 00 00 00 21 52 db e7 d9 1a a7 02 00 00 a7 02 00 00 11 00 00 00 00 00 00 | ...........!R................... |
| 80360 | 00 00 00 00 00 00 00 6a 01 00 00 4f 45 42 50 53 2f 63 6f 6e 74 65 6e 74 2e 6f 70 66 50 4b 01 02 | .......j...OEBPS/content.opfPK.. |
| 80380 | 14 00 14 00 00 00 00 00 00 00 21 52 b4 1d 98 c1 86 01 00 00 86 01 00 00 0f 00 00 00 00 00 00 00 | ..........!R.................... |
| 803a0 | 00 00 00 00 00 00 40 04 00 00 4f 45 42 50 53 2f 6e 61 76 2e 78 68 74 6d 6c 50 4b 01 02 14 00 14 | ......@...OEBPS/nav.xhtmlPK..... |
| 803c0 | 00 00 00 00 00 00 00 21 52 4c dd ef b2 a1 fc 07 00 a1 fc 07 00 11 00 00 00 00 00 00 00 00 00 00 | .......!RL...................... |
| 803e0 | 00 00 00 f3 05 00 00 4f 45 42 50 53 2f 69 6e 64 65 78 2e 78 68 74 6d 6c 50 4b 05 06 00 00 00 00 | .......OEBPS/index.xhtmlPK...... |
| 80400 | 05 00 05 00 35 01 00 00 c3 02 08 00 00 00 | ....5......... |