From cb6114658f0bb9e308107dad53900ebfda165ab8 Mon Sep 17 00:00:00 2001 From: Serdar Dogruyol <990485+sdogruyol@users.noreply.github.com> Date: Wed, 28 Oct 2026 21:56:50 +0300 Subject: [PATCH 1/7] read the facts out of iyi's README as 0.19.0 reworded it MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The README rewrite in iyi 4432be826 (first released in 0.19.0) moved five sentences the generators quote: the edit-loop row is "one module's body", the other sessions are two with no tired one, the token figure no longer counts its runs and names AI_FIRST.md §5 instead, the object audit is "seven of the nine" with the two that only type-check, and install.sh's platforms are in the parenthesis above its one-liner. Against a 0.20.0 tree each generator stopped the build; with these patterns they read the same figures from the new sentences, and the agents page and llms.txt say where the runs are written up rather than a count README.md no longer states. --- bench/site_facts.py | 36 +++++++++++++++++++++++------------- scripts/install-targets.mjs | 18 +++++++++--------- scripts/targets.mjs | 4 ++-- src/pages/agents.astro | 4 ++-- src/pages/llms.txt.ts | 4 ++-- 5 files changed, 38 insertions(+), 28 deletions(-) diff --git a/bench/site_facts.py b/bench/site_facts.py index 5bbed0b..577c2de 100755 --- a/bench/site_facts.py +++ b/bench/site_facts.py @@ -23,8 +23,8 @@ RECORDED. Seconds, bytes, milliseconds. These are a machine, not a language, and README.md is scrupulous about saying so: it names the exact box and it -publishes a tired session reading 0.22 / 1.81 / 0.27 where a good one read -0.13 / 1.17 / 0.16. So a recorded number is never emitted on its own. It is +publishes other sessions reading 0.16 / 1.29 / 0.19 and 0.22 / 1.81 / 0.27 +where the table's read 0.13 / 1.17 / 0.16. So a recorded number is never emitted on its own. It is emitted as a group carrying the machine that produced it, the command that prints it, and every session README.md publishes, so the site can draw the spread and lead with the ratio. The ratio is the claim. The second is a @@ -306,14 +306,14 @@ def context_scope() -> dict: ("machine", r"\(([^()]*Ryzen[^()]*)\)", ("name",)), ( "edit_loop", - r"\| \*\*rebuild after one edit\*\* \| \*\*([\d.]+)\*\* \| ([\d.]+) \| ([\d.]+) \|", + r"\| \*\*one module's body\*\* \| \*\*([\d.]+)\*\* \| ([\d.]+) \| ([\d.]+) \|", ("iyi", "crystal", "go"), ), ( "edit_loop_sessions", - r"read (\d+\.\d+ / \d+\.\d+ / \d+\.\d+) and (\d+\.\d+ / \d+\.\d+ / \d+\.\d+) " - r"on the first row, and a tired session reads (\d+\.\d+ / \d+\.\d+ / \d+\.\d+)", - ("a", "b", "tired"), + r"other sessions on the same box read (\d+\.\d+ / \d+\.\d+ / \d+\.\d+) and\s+" + r"(\d+\.\d+ / \d+\.\d+ / \d+\.\d+) on the first row", + ("a", "b"), ), ("edit_loop_ratio", r"costs \*\*([\d.]+)x less\*\*", ("times",)), ( @@ -369,16 +369,23 @@ def context_scope() -> dict: ), ( "context_tokens", - r"\*\*(\d+)–(\d+)% fewer prompt tokens\*\* over ([a-z]+(?:-[a-z]+)*) measured runs", - ("low", "high", "runs"), + r"\*\*(\d+)–(\d+)% fewer prompt tokens\*\*", + ("low", "high"), ), # The other half of the same measurement, and the half that does not go # iyi's way: the model's rounds to green. README.md publishes it in the # same sentence as the token saving, so the site parses it from there and # states it beside the saving rather than leaving a reader to assume. + # README.md no longer counts the runs; it names where they are written + # up, and the site says that rather than a count nobody maintains. + ( + "context_runs", + r"over the runs written up in ([A-Z_]+\.md §\d+)", + ("where",), + ), ( "context_rounds", - r"rounds-to-green are the model's, tied ([a-z]+) times and lost ([a-z]+),", + r"rounds to green tied ([a-z]+) times and lost\s+([a-z]+)\.", ("tied", "lost"), ), ] @@ -400,6 +407,7 @@ def context_scope() -> dict: "runtime_arithmetic": "python3 bench/runtime.py", "context_pack": "python3 bench/context_pack.py", "context_tokens": "python3 bench/context_pack.py", + "context_runs": "python3 bench/context_pack.py", "context_rounds": "python3 bench/context_pack.py", } @@ -442,8 +450,10 @@ def sessions(raw: dict) -> list[dict[str, float]]: column is parsed, because a drift in the row is still a drift, and then dropped. """ - rows = [] - for slot in ("a", "b", "tired"): + # The table's own row is the first reading; the sentence under it gives + # the other two sessions. + rows = [{"iyi": float(raw["table"]["iyi"]), "crystal": float(raw["table"]["crystal"])}] + for slot in ("a", "b"): iyi, crystal, _ = (float(v) for v in raw[slot].split(" / ")) rows.append({"iyi": iyi, "crystal": crystal}) return rows @@ -461,7 +471,7 @@ def build() -> tuple[dict, list[str]]: return {}, missing default_machine = machine(raw["machine"]["name"]) - loop = sessions(raw["edit_loop_sessions"]) + loop = sessions({**raw["edit_loop_sessions"], "table": raw["edit_loop"]}) ratios = [round(s["crystal"] / s["iyi"], 2) for s in loop] tree = measured() # Counted here rather than by `measured()`, which measures that project's @@ -562,7 +572,7 @@ def build() -> tuple[dict, list[str]]: "size_high": int(raw["context_pack"]["size_high"]), "tokens_low": int(raw["context_tokens"]["low"]), "tokens_high": int(raw["context_tokens"]["high"]), - "runs": raw["context_tokens"]["runs"], + "runs_where": raw["context_runs"]["where"], "rounds_tied": raw["context_rounds"]["tied"], "rounds_lost": raw["context_rounds"]["lost"], "unit": "%", diff --git a/scripts/install-targets.mjs b/scripts/install-targets.mjs index 8f9553b..c1a6652 100755 --- a/scripts/install-targets.mjs +++ b/scripts/install-targets.mjs @@ -151,7 +151,7 @@ if (disagree.length > 0) { /* README's "Getting it" section, which is where a reader of the repository is * told which tarball the installer picks. */ -const documented = /picks the tarball for `uname` \(([^)]*)\)/.exec(readme); +const documented = /picks the\s+tarball for your machine,\s+([^,]*?),\s+and refuses/.exec(readme); if (!documented) { throw new Error( `install-targets: ${CLAIM} no longer says which tarball install.sh picks ` + @@ -172,16 +172,16 @@ if (undocumented.length > 0) { ); } -/* The platform words, out of the sentence under README's one-liner. Anchored - * on the one-liner's own fenced block: the sentence a reader is shown is the - * one directly under the command, and the first sentence after the fence is - * it. Anchoring on what comes after instead put this at the mercy of a - * paragraph about a platform this record does not carry. */ -const prose = /install\.sh \| sh[^`]*``` ([A-Z][^.;]*)[.;]/.exec(readme); +/* The platform words, out of the parenthesis that introduces README's + * one-liner: "Install the latest release into `~/.local` (Linux x86-64, macOS + * arm64):", directly above the fenced command. Anchored on that fence, so a + * paragraph about a platform this record does not carry - the Windows + * one-liner's, under it - cannot be read instead. */ +const prose = /\(([^()]*)\):\s*```sh\s+curl [^`]*?install\.sh \| sh/.exec(readme); if (!prose) { throw new Error( - `install-targets: ${CLAIM} no longer states the platforms in a sentence ` + - `under the fenced ${SOURCE} one-liner, so there is no sentence in the ` + + `install-targets: ${CLAIM} no longer states the platforms in the ` + + `parenthesis above the fenced ${SOURCE} one-liner, so there is no phrase in the ` + `repository to take the prose name of each target from.`, ); } diff --git a/scripts/targets.mjs b/scripts/targets.mjs index 86bd423..3f9ff92 100755 --- a/scripts/targets.mjs +++ b/scripts/targets.mjs @@ -117,14 +117,14 @@ const claimed = (() => { */ const audit = (() => { const text = read(CLAIM); - const counted = text.match(/audits the emitted object\s*\n?\s*for (\S+) triples/); + const counted = text.match(/audits the emitted object\s+for\s+(\S+)\s+of\s+the\s+nine/); if (!counted) { throw new Error( `targets: ${CLAIM} no longer says how many triples CI audits the ` + `emitted object for, so the site cannot say which of them it does.`, ); } - const exempt = [...text.matchAll(/`([a-z0-9_]+-[a-z0-9_-]+)`(?=[^.]*type-check but are not object-audited)/g)].map( + const exempt = [...text.matchAll(/`([a-z0-9_]+-[a-z0-9_-]+)`(?=[^.]*only\s+type-check)/g)].map( (match) => match[1], ); if (exempt.length === 0) { diff --git a/src/pages/agents.astro b/src/pages/agents.astro index 636e8d3..d4e9479 100644 --- a/src/pages/agents.astro +++ b/src/pages/agents.astro @@ -185,7 +185,7 @@ const diffs = [
@@ -401,7 +401,7 @@ const diffs = [
samples
{measuredOn.map((target) => target.file).join(" · ")}
token task
{taskFile}
-
runs
{pack.runs}
+
runs
{pack.runs_where}
arm A
sources
arm B
iyi mod context
pack size
{pack.size_low}–{pack.size_high}% of sources
diff --git a/src/pages/llms.txt.ts b/src/pages/llms.txt.ts index 8e825af..5e1ad0c 100644 --- a/src/pages/llms.txt.ts +++ b/src/pages/llms.txt.ts @@ -93,8 +93,8 @@ for Type\` lives with the trait or the type (R-3). on ${loop.machine}. - Agent experience (AX): a module's interface is a file (.iyimod). \`iyi mod context\` grounds an edit at ${pack.size_low} to ${pack.size_high}% of the sources' size; a model writing - against it spent ${pack.tokens_low} to ${pack.tokens_high}% fewer prompt tokens over ${pack.runs} measured - runs (\`${pack.command}\`). The loop is one verb per step, and every step of + against it spent ${pack.tokens_low} to ${pack.tokens_high}% fewer prompt tokens over the runs + ${pack.runs_where} writes up (\`${pack.command}\`). The loop is one verb per step, and every step of it is recorded from a real run at ${origin}/agents/: ${loopFrames} Both servers are in the binary, with nothing to install: \`iyi mcp\` serves From ef097fe0b9ca09c399ab535cae341ae2bc81ac48 Mon Sep 17 00:00:00 2001 From: Serdar Dogruyol <990485+sdogruyol@users.noreply.github.com> Date: Wed, 28 Oct 2026 21:56:50 +0300 Subject: [PATCH 2/7] a lesson for work on every core: spawn_parallel, serve, Share and @[SafeReach] Step nine, grounded in samples/iyi/cores.iyi (on iyi's release/0.20.0-prep): spawn against spawn_parallel, the state a pool may share, Server.serve on every core and workers: 1, config.frozen for TLS, the reach warning and @[SafeReach], and the move off serve_parallel. Two break programs show the capture refusal and the reach warning under --error-on-warnings (record-diagnostics gains per-case flags); III.4's opening paragraph is the premise; cores is native only in the wasm record, with the reason. The records are not re-recorded here: they are evidence about a release, and 0.20.0 is not tagged. Until `npm run record` runs at v0.20.0 this branch does not build, by the records gate's design. --- records/break/share_reach.iyi | 21 ++++ records/break/share_serve_capture.iyi | 17 +++ scripts/record-diagnostics.mjs | 19 +++- scripts/record-wasm.mjs | 6 ++ scripts/samples.mjs | 2 +- src/content/learn/every-core.mdx | 146 ++++++++++++++++++++++++++ 6 files changed, 209 insertions(+), 2 deletions(-) create mode 100644 records/break/share_reach.iyi create mode 100644 records/break/share_serve_capture.iyi create mode 100644 src/content/learn/every-core.mdx diff --git a/records/break/share_reach.iyi b/records/break/share_reach.iyi new file mode 100644 index 0000000..063639f --- /dev/null +++ b/records/break/share_reach.iyi @@ -0,0 +1,21 @@ +# Breaks III.4.4's reach check: the block names nothing unshareable, but +# `greeting`, which it calls, reads `GREETING`, an `Array` any worker could +# reach while another changes it. The compiler walks the calls from the +# block and warns at the block, by the shortest path. A warning, so the +# build is asked to fail on one: `--error-on-warnings`, as CI would. +# `@[SafeReach("...")]` on the constant, saying why it is safe, quiets it. +module diagnostics/share_reach + +import std/http::{Response, Server} +import std/socket::{IyiSocket} + +GREETING = ["hello", "from", "every", "core"] + +def greeting : String + GREETING.join(" ") +end + +listener = IyiSocket.listen("127.0.0.1", 0) +Server.serve(listener) do |req| + Response.new(200, greeting) +end diff --git a/records/break/share_serve_capture.iyi b/records/break/share_serve_capture.iyi new file mode 100644 index 0000000..890505e --- /dev/null +++ b/records/break/share_serve_capture.iyi @@ -0,0 +1,17 @@ +# Breaks III.4.4 as III.4.13 applies it: `Server.serve` runs each connection +# on the pool's workers, so its block is checked as `spawn_parallel`'s is, +# and every value it captures must be `Share`. An `Array` is not: two +# workers appending at once would race its size. Everything else here is +# legal, and the refusal names both ways out - the array behind a `Mutex`, +# or `workers: 1`, which keeps the server on one thread. +module diagnostics/share_serve_capture + +import std/http::{Response, Server} +import std/socket::{IyiSocket} + +seen = [] of String +listener = IyiSocket.listen("127.0.0.1", 0) +Server.serve(listener) do |req| + seen << req.path + Response.new(200, "ok") +end diff --git a/scripts/record-diagnostics.mjs b/scripts/record-diagnostics.mjs index 1b9bbb1..201986d 100755 --- a/scripts/record-diagnostics.mjs +++ b/scripts/record-diagnostics.mjs @@ -126,6 +126,23 @@ const CASES = [ file: "errors_non_exhaustive.iyi", expect: "case is not exhaustive", }, + { + id: "share-serve-capture", + rule: "III.4", + title: "a server's block that captures an Array", + file: "share_serve_capture.iyi", + expect: "which is not Share", + }, + { + // A warning, not a refusal, so the build is told to fail on warnings: + // the case records what a build run that way prints. + id: "share-reach", + rule: "III.4", + title: "a server's block that reaches module state through a call", + file: "share_reach.iyi", + flags: ["--error-on-warnings"], + expect: "(not Share) through `greeting`", + }, ]; // --------------------------------------------------------------------------- @@ -232,7 +249,7 @@ const cases = []; for (const entry of CASES) { const relative = `records/break/${entry.file}`; - const args = ["build", "--no-codegen", "--no-color", relative]; + const args = ["build", "--no-codegen", "--no-color", ...(entry.flags ?? []), relative]; // The compiler is written by name rather than by path: the path is per // machine and `recorded.compiler` already pins the exact build. Everything diff --git a/scripts/record-wasm.mjs b/scripts/record-wasm.mjs index d1dc912..ab5fdbc 100755 --- a/scripts/record-wasm.mjs +++ b/scripts/record-wasm.mjs @@ -77,6 +77,12 @@ const NATIVE_ONLY = { "iyi/workers": TASKS_ON_WASM, tasks: TASKS_ON_WASM, channels: TASKS_ON_WASM, + "iyi/cores": + "A server on every core has no wasm32-wasi build to run. The program " + + "imports std/http, whose TLS reads the operating system's trusted roots " + + "through std/system_roots, and that module refuses to compile for a " + + "target with none; and its tasks, like every task, do not compile on " + + "wasm32 yet (SPEC.md III.4.8).", }; const NOTES = { diff --git a/scripts/samples.mjs b/scripts/samples.mjs index d035175..ae062cd 100755 --- a/scripts/samples.mjs +++ b/scripts/samples.mjs @@ -367,7 +367,7 @@ if (Object.keys(rules).length === 0) { // that section's opening paragraph, read here, so the sentence on the page is // the specification's sentence and a section that is rewritten changes the page // or fails the build. -const SECTIONS = ["III.1"]; +const SECTIONS = ["III.1", "III.4"]; for (const id of SECTIONS) { const escaped = id.replace(/\./g, "\\."); diff --git a/src/content/learn/every-core.mdx b/src/content/learn/every-core.mdx new file mode 100644 index 0000000..f6e547c --- /dev/null +++ b/src/content/learn/every-core.mdx @@ -0,0 +1,146 @@ +--- +title: Work on every core, and what may cross +order: 9 +summary: "`spawn` stays on its spawner's thread and may touch anything; `spawn_parallel` runs on any core and may capture only what is `Share`. `Server.serve` puts every connection on that pool, so its block is checked the same way, and `workers: 1` keeps a server on one thread." +rule: III.4 +sample: samples/iyi/cores.iyi +breaks: share-serve-capture +breaksMore: + - share-reach +bought: >- + A data race on a value a block captures does not compile, and a block that + reaches shared state through a call is named at the block, with the path, + rather than found by a race detector on the run that happened to hit it. A + server that was correct on one thread is told exactly what to change before + it runs on every core. +sources: + - file: samples/iyi/cores.iyi + note: both kinds of task, the state a pool may share, a server on every core that stops through a channel, and a constant marked with why it is safe + - file: src/std/http.iyi + note: "`Server.serve` and its `workers:` argument, and the mark that has its block checked as a parallel task's" + - file: src/std/mutex.iyi + note: the lock a waiting task parks on rather than holding its thread + - file: SPEC.md + note: III.4.4 for what `Share` is and the reach check, III.4.13 for the pool, how many workers it has, and how a task moves between them + - file: CHANGELOG.md + note: the release that made `serve` run on every core and removed `serve_parallel`, with the migration +--- + +import Sample from "../../components/Sample.astro"; + +Every step so far has been about what a module tells the modules that import +it. This one is about what a block tells the thread that runs it, and the +promise is the same shape: the compiler is told, so a mistake is refused where +it is written instead of turning up at runtime, or never. + +## Two ways to start a task + +`g.spawn` starts a task on the thread that spawned it. Its tasks take turns +at their parks, never two at the same instant, so a block may append to an +`Array` it captured and nothing is raced. + + + +`g.spawn_parallel` starts a task a pool of worker threads runs, on whichever +core is free, and a task that parks may resume on another one. It is a task +of its group like any other: joined at the group's end, cancelled with it, its +answer through `value`. + + + +What changed is what the block may capture. A parallel block may capture only +what is `Share`: an immutable value, an `Atomic`, a `Mutex`, a `List`, a +`Channel` of `Share` values. Each task above captures nothing but its own +`part`, and builds its answer itself. An answer need not be `Share`, because +it is handed over once, after the task has ended, and the join orders it. + +The pool starts at the first `spawn_parallel`, with one worker per core the +process may run on. `IYI_WORKERS=n` in the environment sets the count, and a +program without a parallel task starts no pool at all. + +## State every core may touch + +A counter that every core adds to is an `Atomic`, and an `Array` that every +core appends to sits behind a `Mutex`. Both are `Share`, so a parallel block +may capture them, and what is behind the lock is reached only inside `lock`. + + + +A task that waits for a held `Mutex` parks, as it would on a channel, so the +worker it was on runs other tasks meanwhile. + +## A server on every core + +std/http's `Server.serve` runs each connection as a parallel task on the +pool, so a server uses every core without asking. Its block is checked as a +parallel task's is. + + + +Two things in that block are there because of the check. The path is copied +into a `String` before the lock, because a block that runs behind a `Mutex` +may not capture the request it came from. And the server stops through a +channel: `/stop` may arrive on any worker, and closing the listener from the +block would capture it, so the block sends on `stop` and a task beside the +server, on the thread that opened the listener, closes it. + +`Server.serve(listener, workers: 1)` is the server on one thread, the +accepting one. Its block is not checked at all, because nothing it captures +leaves that thread: it may append to an `Array`, count in a plain variable, +close its own listener. A count in a variable is checked as a pool would be, +since nothing at compile time says it is one. + +### TLS on every core + +A server's `tls:` takes `config.frozen`, a `TlsFrozenServerConfig`: a copy +of the configuration no property of which changes, which every worker may +read. A `TlsServerConfig` itself, on more than one worker, is refused at the +argument, naming the same two ways out. `serve` does not freeze it for you, +because a property assigned while the server runs would reach no worker and +nothing would say so. An identity source goes to `frozen` as a block, whose +captures are checked like any other. + +## Module state a call reaches + +The check reads what a block names. A block that calls a method, which reads +a constant, names only the method, and used to compile with nothing said. +Now the compiler walks the calls from the block through the program's own +modules and its packages, and warns at the block for every constant and class +variable it reaches whose type is not `Share`, once each, by the shortest +path. + +Some such state is safe: set once at startup and only read after, or guarded +some other way. That is said on its declaration, with the reason as the +claim. + + + + + +The mark quiets the warning for that state alone. A block that names +`GREETING` itself is still refused, because a block's own text is checked +exactly, and the mark is a claim about calls the compiler cannot follow to the +end. It is a warning rather than a refusal so that nothing that compiled +stops compiling; `iyi build --error-on-warnings`, or `iyi check` given the +same, makes it fail a build. + +## Moving off `serve_parallel` + +0.19.1 had `Server.serve_parallel` beside a `serve` on one thread. It is gone, +with no alias, and `serve` is the pool. A call to `serve_parallel` becomes a +call to `serve` with the same arguments. A `serve` that was on one thread +needs nothing if its block captures nothing unshareable: it now uses every +core. One whose block captures a `Router`, an `Array`, a counter or the +listener it closes, or whose `tls:` is a `TlsServerConfig`, either passes +`workers: 1` and stays as it was, or moves to what crosses threads: the state +behind a `Mutex` or in an `Atomic`, the router to a `SharedRouter`, the +configuration to `config.frozen`, and the stop to a `Channel`, as the server +above does. + +## Capture what does not cross + +Here is a server whose block appends every path it is asked for to an +`Array`. On one thread that is fine. On every core two workers could append at +once, and the compiler refuses the capture where it is written, naming both +ways out. After it, the same server reaching a constant through a call, built +to fail on warnings. From c49715e7046c2d45be21de87f6f13f55edf1e591 Mon Sep 17 00:00:00 2001 From: Serdar Dogruyol <990485+sdogruyol@users.noreply.github.com> Date: Mon, 2 Nov 2026 10:54:26 +0300 Subject: [PATCH 3/7] re-record wasm, diagnostics, the agent loop, highlighting and the stdlib at 0.20.0 Recorded at v0.20.0 (224ed74fc) with wasi-sdk 24. New: the iyi/cores sample (native only: std/http has no wasm32-wasi build), and the two III.4 break cases, share-serve-capture and share-reach. The stdlib reference gains std/acme, std/autocert, std/hpke, std/mlkem, std/ocsp, std/p384, std/secure_dns and std/shared_proc. The agent loop's verdicts are unchanged; its MCP initialize now reports 0.20.0. --- records/agent.json | 12 +- records/diagnostics.json | 26 ++- records/highlight.json | 13 +- records/stdlib.json | 160 +++++++++++------- records/wasm/arrays.wasm | Bin 143866 -> 145881 bytes records/wasm/blocks.wasm | Bin 126911 -> 127866 bytes records/wasm/bounds.wasm | Bin 128615 -> 129541 bytes records/wasm/case.wasm | Bin 126815 -> 127806 bytes records/wasm/classes.wasm | Bin 123407 -> 124398 bytes records/wasm/conditions.wasm | Bin 123837 -> 124828 bytes records/wasm/constants.wasm | Bin 159500 -> 160443 bytes records/wasm/conversions.wasm | Bin 186501 -> 187416 bytes records/wasm/defaults.wasm | Bin 126119 -> 127100 bytes records/wasm/defer.wasm | Bin 127140 -> 128138 bytes records/wasm/dispatch.wasm | Bin 134609 -> 136069 bytes records/wasm/errors.wasm | Bin 159584 -> 160371 bytes records/wasm/exports.wasm | Bin 123847 -> 124838 bytes records/wasm/functions.wasm | Bin 124193 -> 125184 bytes records/wasm/generic-functions.wasm | Bin 150801 -> 151699 bytes records/wasm/generic-types.wasm | Bin 133417 -> 135597 bytes records/wasm/hashes.wasm | Bin 163805 -> 165179 bytes records/wasm/hello.wasm | Bin 122096 -> 123087 bytes records/wasm/iyi-basics.wasm | Bin 209967 -> 213443 bytes records/wasm/iyi-calc.wasm | Bin 198605 -> 200618 bytes records/wasm/iyi-collections.wasm | Bin 225717 -> 228588 bytes records/wasm/iyi-config.wasm | Bin 175995 -> 177376 bytes records/wasm/iyi-derive.wasm | Bin 127243 -> 128268 bytes records/wasm/iyi-enums.wasm | Bin 149063 -> 151146 bytes records/wasm/iyi-errors.wasm | Bin 137637 -> 138685 bytes records/wasm/iyi-files.wasm | Bin 124173 -> 125156 bytes records/wasm/iyi-format.wasm | Bin 305987 -> 308041 bytes records/wasm/iyi-formatting.wasm | Bin 142136 -> 143143 bytes records/wasm/iyi-generics.wasm | Bin 142973 -> 143824 bytes records/wasm/iyi-grid.wasm | Bin 184691 -> 187747 bytes records/wasm/iyi-hello.wasm | Bin 129713 -> 130696 bytes records/wasm/iyi-immutable.wasm | Bin 195488 -> 197267 bytes records/wasm/iyi-init_order.wasm | Bin 123772 -> 124809 bytes records/wasm/iyi-inventory.wasm | Bin 215622 -> 218027 bytes records/wasm/iyi-io.wasm | Bin 130653 -> 131609 bytes records/wasm/iyi-modules.wasm | Bin 125729 -> 126751 bytes records/wasm/iyi-sessions.wasm | Bin 138729 -> 139540 bytes records/wasm/iyi-shapes.wasm | Bin 194621 -> 197147 bytes records/wasm/iyi-socket.wasm | Bin 322516 -> 413767 bytes records/wasm/iyi-std_iterator.wasm | Bin 205324 -> 208688 bytes records/wasm/iyi-std_text.wasm | Bin 192507 -> 195805 bytes records/wasm/iyi-std_time.wasm | Bin 272786 -> 275376 bytes records/wasm/iyi-visited.wasm | Bin 174911 -> 176116 bytes records/wasm/iyi-webapp.wasm | Bin 166939 -> 171353 bytes records/wasm/loops.wasm | Bin 125458 -> 126424 bytes records/wasm/manifest.json | 248 +++++++++++++++------------- records/wasm/methods.wasm | Bin 160134 -> 161051 bytes records/wasm/modules.wasm | Bin 123851 -> 124842 bytes records/wasm/nil.wasm | Bin 124485 -> 125476 bytes records/wasm/ranges.wasm | Bin 139692 -> 141760 bytes records/wasm/returns.wasm | Bin 126434 -> 127402 bytes records/wasm/strings.wasm | Bin 159121 -> 160621 bytes records/wasm/structs.wasm | Bin 124581 -> 125572 bytes records/wasm/traits.wasm | Bin 159592 -> 160535 bytes records/wasm/tuples.wasm | Bin 126788 -> 127759 bytes records/wasm/types.wasm | Bin 157866 -> 158793 bytes records/wasm/unions.wasm | Bin 134222 -> 135190 bytes records/wasm/variables.wasm | Bin 155118 -> 156061 bytes 62 files changed, 269 insertions(+), 190 deletions(-) diff --git a/records/agent.json b/records/agent.json index da7d44f..40e4ea6 100644 --- a/records/agent.json +++ b/records/agent.json @@ -1,10 +1,10 @@ { "recorded": { - "compiler": "iyi 0.17.0 (built on Crystal 1.22.0-dev [fe3db8354] (2026-10-14))", - "commit": "fe3db8354f56ce84d411611d48e6dad235172275", - "machine": "Linux 7.0.0-31-generic x86_64, QEMU Virtual CPU version 2.5+", + "compiler": "iyi 0.20.0 (built on Crystal 1.22.0-dev [224ed74fc] (2026-11-02))", + "commit": "224ed74fc7ba9d78345dfd10f21ece4b499702fa", + "machine": "Linux 7.0.0-38-generic x86_64, QEMU Virtual CPU version 2.5+", "command": "npm run record:agent", - "when": "2026-10-14T11:26:22.139Z" + "when": "2026-11-02T07:19:31.432Z" }, "project": [ { @@ -104,7 +104,7 @@ "command": "iyi test --json .", "exitCode": 0, "payload": "stdout", - "stdout": "{\"tests\":[{\"file\":\"./app_test.iyi\",\"status\":\"pass\",\"seconds\":0.267}],\"passed\":1,\"failed\":0,\"skipped\":0}\n", + "stdout": "{\"tests\":[{\"file\":\"./app_test.iyi\",\"status\":\"pass\",\"seconds\":0.394}],\"passed\":1,\"failed\":0,\"skipped\":0}\n", "stderr": "" }, { @@ -167,7 +167,7 @@ }, "serverInfo": { "name": "iyi", - "version": "0.17.0" + "version": "0.20.0" } }, "tools": [ diff --git a/records/diagnostics.json b/records/diagnostics.json index d10d250..2d10ef1 100644 --- a/records/diagnostics.json +++ b/records/diagnostics.json @@ -1,10 +1,10 @@ { "recorded": { - "compiler": "iyi 0.17.0 (built on Crystal 1.22.0-dev [fe3db8354] (2026-10-14))", - "commit": "fe3db8354f56ce84d411611d48e6dad235172275", - "machine": "Linux 7.0.0-31-generic x86_64, QEMU Virtual CPU version 2.5+", + "compiler": "iyi 0.20.0 (built on Crystal 1.22.0-dev [224ed74fc] (2026-11-02))", + "commit": "224ed74fc7ba9d78345dfd10f21ece4b499702fa", + "machine": "Linux 7.0.0-38-generic x86_64, QEMU Virtual CPU version 2.5+", "command": "npm run record:diagnostics", - "when": "2026-10-14T11:26:14.391Z" + "when": "2026-11-02T07:19:23.048Z" }, "cases": [ { @@ -105,6 +105,24 @@ "command": "IYI_PATH=/src iyi build --no-codegen --no-color records/break/errors_non_exhaustive.iyi", "exitCode": 1, "stderr": "Showing last frame. Use --error-trace for full trace.\n\nIn records/break/errors_non_exhaustive.iyi:28:1\n\n 28 | case read(\"missing\")\n ^\nError: case is not exhaustive.\n\nMissing types:\n - Diagnostics::ErrorsNonExhaustive::IOError\n" + }, + { + "id": "share-serve-capture", + "rule": "III.4", + "title": "a server's block that captures an Array", + "path": "records/break/share_serve_capture.iyi", + "command": "IYI_PATH=/src iyi build --no-codegen --no-color records/break/share_serve_capture.iyi", + "exitCode": 1, + "stderr": "Showing last frame. Use --error-trace for full trace.\n\nIn records/break/share_serve_capture.iyi:15:3\n\n 15 | seen << req.path\n ^---\nError: the block Server.serve keeps, which may run on other threads captures `seen : Array(String)`, which is not Share: Array(String)'s field @size is assigned in `append`. Put it behind a lock, a `Mutex(Array(String))` (std/mutex), or pass `workers: 1` so the block runs on one thread (SPEC.md III.4.4)\n" + }, + { + "id": "share-reach", + "rule": "III.4", + "title": "a server's block that reaches module state through a call", + "path": "records/break/share_reach.iyi", + "command": "IYI_PATH=/src iyi build --no-codegen --no-color --error-on-warnings records/break/share_reach.iyi", + "exitCode": 1, + "stderr": "In records/break/share_reach.iyi:19:24\n\n 19 | Server.serve(listener) do |req|\n ^\nWarning: the block Server.serve keeps, which may run on other threads reaches `GREETING : Array(String)` (not Share) through `greeting` → `GREETING.join`: Array(String)'s field @size is assigned in `append`. If it is only read, make it a `List(String)` (std/list), which is Share. Keep the value behind a `Mutex` (std/mutex), or, when every thread may reach it safely - it is set once and then only read, or guarded some other way - say why on the constant: `@[SafeReach(\"...\")]` (SPEC.md III.4.4)\n\nA total of 1 warnings were found.\n" } ] } diff --git a/records/highlight.json b/records/highlight.json index 1e9b3ae..e4b069a 100644 --- a/records/highlight.json +++ b/records/highlight.json @@ -1,10 +1,10 @@ { "recorded": { - "compiler": "iyi 0.18.0 (built on Crystal 1.22.0-dev [2a9653052] (2026-10-18))", - "commit": "2a9653052ab76f9d8084da47e059273f6ef45228", + "compiler": "iyi 0.20.0 (built on Crystal 1.22.0-dev [224ed74fc] (2026-11-02))", + "commit": "224ed74fc7ba9d78345dfd10f21ece4b499702fa", "machine": "Linux 7.0.0-38-generic x86_64, QEMU Virtual CPU version 2.5+", "command": "npm run record:highlight", - "when": "2026-10-19T11:15:18.120Z" + "when": "2026-11-02T07:19:35.714Z" }, "files": { "samples/iyi/app/formal.iyi": "# A second module, exporting a `title` of its own. See `../modules.iyi`.\nmodule app/formal\n\npub def title : String\n "esteemed colleague"\nend\n\npub def address(name : String) : String\n "Good day, #{name}."\nend\n", @@ -15,9 +15,10 @@ "samples/iyi/calc/ast.iyi": "module calc/ast\n\n# What an evaluated program can go wrong with. Both are ordinary members of the\n# union an evaluation returns (SPEC.md III.1), so a caller either handles them\n# or propagates with `!`.\npub struct UnknownName\n getter name : String\n\n def initialize(@name : String)\n end\nend\n\nimpl Error for UnknownName\n def message : String\n "unknown name '#{name}'"\n end\nend\n\npub struct DividedByZero\n def initialize\n end\nend\n\nimpl Error for DividedByZero\n def message : String\n "divided by zero"\n end\nend\n\n# The one thing every node can do. A trait rather than a base class, because\n# there is nothing to inherit and R-3 has no opinion to break here.\npub trait Node\n abstract def evaluate(scope : Hash(String, Int32)) : Int32 | UnknownName | DividedByZero\nend\n\npub struct Number\n getter value : Int32\n\n def initialize(@value : Int32)\n end\nend\n\nimpl Node for Number\n def evaluate(scope : Hash(String, Int32)) : Int32 | UnknownName | DividedByZero\n value\n end\nend\n\npub struct Name\n getter name : String\n\n def initialize(@name : String)\n end\nend\n\nimpl Node for Name\n def evaluate(scope : Hash(String, Int32)) : Int32 | UnknownName | DividedByZero\n return UnknownName.new(name) unless scope.has_key?(name)\n scope[name]\n end\nend\n\npub class Binary\n getter op : Char\n getter left : Number | Name | Binary\n getter right : Number | Name | Binary\n\n def initialize(@op : Char, @left : Number | Name | Binary, @right : Number | Name | Binary)\n end\nend\n\nimpl Node for Binary\n def evaluate(scope : Hash(String, Int32)) : Int32 | UnknownName | DividedByZero\n a = left.evaluate(scope)!\n b = right.evaluate(scope)!\n\n if op == '+'\n a + b\n elsif op == '-'\n a - b\n elsif op == '*'\n a * b\n else\n return DividedByZero.new if b == 0\n a // b\n end\n end\nend\n", "samples/iyi/calc/lexer.iyi": "module calc/lexer\n\n# What the scanner produces. A token is its kind, the text it covers and where\n# it started, because an error that cannot say where is half an error.\npub struct Token\n getter kind : String\n getter text : String\n getter at : Int32\n\n def initialize(@kind : String, @text : String, @at : Int32)\n end\nend\n\npub struct BadCharacter\n getter at : Int32\n getter found : Char\n\n def initialize(@at : Int32, @found : Char)\n end\nend\n\nimpl Error for BadCharacter\n def message : String\n "unexpected character at #{at}"\n end\nend\n\npub def scan(source : String) : Array(Token) | BadCharacter\n tokens = [] of Token\n index = 0\n\n while index < source.size\n c = source[index]\n\n # A line ends in CRLF on Windows: `echo 2 + 3 * 4| iyi run\n # samples\\iyi\\calc.iyi` in cmd answered "unexpected character at 9",\n # the `\\r`.\n if c == ' ' || c == '\\n' || c == '\\t' || c == '\\r'\n index = index + 1\n elsif digit?(c)\n start = index\n while index < source.size && digit?(source[index])\n index = index + 1\n end\n tokens << Token.new("number", source[start, index - start], start)\n elsif letter?(c)\n start = index\n while index < source.size && (letter?(source[index]) || digit?(source[index]))\n index = index + 1\n end\n tokens << Token.new("name", source[start, index - start], start)\n elsif operator?(c)\n tokens << Token.new("op", source[index, 1], index)\n index = index + 1\n else\n return BadCharacter.new(index, c)\n end\n end\n\n tokens << Token.new("end", "", index)\n tokens\nend\n\ndef digit?(c : Char) : Bool\n c >= '0' && c <= '9'\nend\n\ndef letter?(c : Char) : Bool\n (c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z') || c == '_'\nend\n\ndef operator?(c : Char) : Bool\n c == '+' || c == '-' || c == '*' || c == '/' || c == '(' || c == ')' || c == '='\nend\n", "samples/iyi/calc/parser.iyi": "module calc/parser\n\nimport calc/lexer::{Token}\nimport calc/ast::{Number, Name, Binary}\n\npub struct SyntaxError\n getter at : Int32\n getter wanted : String\n\n def initialize(@at : Int32, @wanted : String)\n end\nend\n\nimpl Error for SyntaxError\n def message : String\n "expected #{wanted} at #{at}"\n end\nend\n\n# One statement: `name = expression`, or an expression on its own, which the\n# runner prints. Kept as a pair rather than a node type, because a statement is\n# not something this language evaluates twice.\npub struct Statement\n getter target : String\n getter body : Number | Name | Binary\n\n def initialize(@target : String, @body : Number | Name | Binary)\n end\nend\n\n# A cursor over the tokens. A struct with an index rather than a shifting array,\n# because backing up one token is the parser's whole trick.\npub class Reader\n getter tokens : Array(Token)\n getter at : Int32\n\n def initialize(@tokens : Array(Token))\n @at = 0\n end\n\n def peek : Token\n tokens[at]\n end\n\n def advance : Token\n token = tokens[at]\n @at = at + 1\n token\n end\nend\n\npub def parse(tokens : Array(Token)) : Array(Statement) | SyntaxError\n reader = Reader.new(tokens)\n statements = [] of Statement\n\n while reader.peek.kind != "end"\n statements << statement(reader)!\n end\n\n statements\nend\n\ndef statement(reader : Reader) : Statement | SyntaxError\n first = reader.peek\n\n if first.kind == "name" && reader.tokens[reader.at + 1].text == "="\n reader.advance\n reader.advance\n Statement.new(first.text, expression(reader)!)\n else\n Statement.new("", expression(reader)!)\n end\nend\n\ndef expression(reader : Reader) : Number | Name | Binary | SyntaxError\n left = term(reader)!\n\n while reader.peek.kind == "op" && (reader.peek.text == "+" || reader.peek.text == "-")\n op = reader.advance.text[0]\n left = Binary.new(op, left, term(reader)!)\n end\n\n left\nend\n\ndef term(reader : Reader) : Number | Name | Binary | SyntaxError\n left = factor(reader)!\n\n while reader.peek.kind == "op" && (reader.peek.text == "*" || reader.peek.text == "/")\n op = reader.advance.text[0]\n left = Binary.new(op, left, factor(reader)!)\n end\n\n left\nend\n\ndef factor(reader : Reader) : Number | Name | Binary | SyntaxError\n token = reader.advance\n\n if token.kind == "number"\n Number.new(token.text.to_i)\n elsif token.kind == "name"\n Name.new(token.text)\n elsif token.text == "("\n inside = expression(reader)!\n closing = reader.advance\n return SyntaxError.new(closing.at, "')'") unless closing.text == ")"\n inside\n else\n SyntaxError.new(token.at, "a number, a name or '('")\n end\nend\n", - "samples/iyi/calc.iyi": "# A language, in the language — the biggest program this prelude can hold.\n#\n# echo "x = 2 + 3 * 4\n# x * 10" | ./bin/iyi run samples/iyi/calc.iyi\n#\n# The other samples each document a rule. This one documents nothing and is\n# here for a different reason: everything else in `samples/iyi` is a page long,\n# and a language that has only been used for pages has not been used. This is\n# three modules and a scanner, a parser and an evaluator, the shape of every\n# real program that reads something, written against iyi's own 21,567-line\n# library and nothing else.\n#\n# What it cost to write is recorded where it landed. `String#[]`, `String#[](start,\n# count)`, `String#to_i` and `read_input` are in the prelude because this file\n# asked for them, which is the rule the prelude grows by (SPEC.md "0.1.0",\n# item 3). Nothing else was missing.\nmodule samples/calc\n\nimport calc/lexer::{scan, BadCharacter}\nimport calc/parser::{parse, Statement, SyntaxError}\nimport calc/ast::{Number, Name, Binary, UnknownName, DividedByZero}\n\n# What runs when nothing is piped in, so that the sample is a program rather\n# than a prompt. CI runs it this way. Its last two lines are errors on\n# purpose, and the demo exits 0 with them.\nDEMO = "x = 2 + 3 * 4\ny = (x - 4) / 2\nx + y * 10\nmissing + 1\n1 / 0"\n\n# Whether every statement answered. An error goes to standard error, and\n# input with one makes the program exit 1: all of them went to standard\n# output at exit 0, so `echo 1 / 0 | iyi run samples/iyi/calc.iyi && next`\n# ran `next`.\npub def run(source : String) : Bool\n tokens = scan(source)\n if tokens.is_a?(BadCharacter)\n stderr.puts "error: #{tokens.message}"\n return false\n end\n\n program = parse(tokens)\n if program.is_a?(SyntaxError)\n stderr.puts "error: #{program.message}"\n return false\n end\n\n answered = true\n scope = {} of String => Int32\n program.each do |statement|\n value = statement.body.evaluate(scope)\n\n if value.is_a?(Int32)\n if statement.target.empty?\n puts value\n else\n scope[statement.target] = value\n end\n else\n # `value` is an error member of the union, and every one of them answers\n # `message` because they implement `Error` (SPEC.md III.1).\n stderr.puts "error: #{value.message}"\n answered = false\n end\n end\n answered\nend\n\n# Input that is only line ends is nothing piped in: PowerShell's `"" |`\n# sends a CRLF. And its pipe starts what it sends with a byte order mark,\n# which is not part of the program: "unexpected character at 0".\ntyped = read_input.lchop('\\uFEFF')\nif typed.strip.empty?\n run(DEMO)\nelsif !run(typed)\n exit 1\nend\n", + "samples/iyi/calc.iyi": "# A language, in the language — the biggest program this prelude can hold.\n#\n# echo "x = 2 + 3 * 4\n# x * 10" | ./bin/iyi run samples/iyi/calc.iyi\n#\n# The other samples each document a rule. This one documents nothing and is\n# here for a different reason: everything else in `samples/iyi` is a page long,\n# and a language that has only been used for pages has not been used. This is\n# three modules and a scanner, a parser and an evaluator, the shape of every\n# real program that reads something, written against iyi's own 25,725-line\n# library and nothing else.\n#\n# What it cost to write is recorded where it landed. `String#[]`, `String#[](start,\n# count)`, `String#to_i` and `read_input` are in the prelude because this file\n# asked for them, which is the rule the prelude grows by (SPEC.md "0.1.0",\n# item 3). Nothing else was missing.\nmodule samples/calc\n\nimport calc/lexer::{scan, BadCharacter}\nimport calc/parser::{parse, Statement, SyntaxError}\nimport calc/ast::{Number, Name, Binary, UnknownName, DividedByZero}\n\n# What runs when nothing is piped in, so that the sample is a program rather\n# than a prompt. CI runs it this way. Its last two lines are errors on\n# purpose, and the demo exits 0 with them.\nDEMO = "x = 2 + 3 * 4\ny = (x - 4) / 2\nx + y * 10\nmissing + 1\n1 / 0"\n\n# Whether every statement answered. An error goes to standard error, and\n# input with one makes the program exit 1: all of them went to standard\n# output at exit 0, so `echo 1 / 0 | iyi run samples/iyi/calc.iyi && next`\n# ran `next`.\npub def run(source : String) : Bool\n tokens = scan(source)\n if tokens.is_a?(BadCharacter)\n stderr.puts "error: #{tokens.message}"\n return false\n end\n\n program = parse(tokens)\n if program.is_a?(SyntaxError)\n stderr.puts "error: #{program.message}"\n return false\n end\n\n answered = true\n scope = {} of String => Int32\n program.each do |statement|\n value = statement.body.evaluate(scope)\n\n if value.is_a?(Int32)\n if statement.target.empty?\n puts value\n else\n scope[statement.target] = value\n end\n else\n # `value` is an error member of the union, and every one of them answers\n # `message` because they implement `Error` (SPEC.md III.1).\n stderr.puts "error: #{value.message}"\n answered = false\n end\n end\n answered\nend\n\n# Input that is only line ends is nothing piped in: PowerShell's `"" |`\n# sends a CRLF. And its pipe starts what it sends with a byte order mark,\n# which is not part of the program: "unexpected character at 0".\ntyped = read_input.lchop('\\uFEFF')\nif typed.strip.empty?\n run(DEMO)\nelsif !run(typed)\n exit 1\nend\n", "samples/iyi/collections.iyi": "# The `Enumerable` port, exercised — SPEC.md II.6.\n#\n# ./bin/iyi run samples/iyi/collections.iyi\n#\n# `std/enumerable.iyi` holds the trait. This file implements it twice and calls\n# every method it defines. Both matter: a default method is only typed when it\n# is called, so a trait that merely compiles has proved nothing about whether\n# its bodies are sound.\n#\n# `Nums` and `Words` answer `Elem` differently — `Int32` and `String` — and each\n# gets the same 57 default methods from one `each`. That is the claim II.6\n# makes, running.\n\nmodule samples/collections\n\nimport std/enumerable::{Enumerable}\n\npub struct Nums\n def initialize(@a : Array(Int32))\n end\nend\n\nimpl Enumerable for Nums\n type Elem = Int32\n\n def each(& : Int32 -> Nil) : Nil\n @a.each { |x| yield x }\n end\nend\n\npub struct Words\n def initialize(@a : Array(String))\n end\nend\n\nimpl Enumerable for Words\n type Elem = String\n\n def each(& : String -> Nil) : Nil\n @a.each { |x| yield x }\n end\nend\n\nn = Nums.new([3, 1, 4, 1, 5])\nw = Words.new(["pear", "fig", "plum", "kiwi"])\n\nputs "to_a #{n.to_a.join(",")}"\nputs "size #{n.size}"\nputs "empty? #{n.empty?} #{Nums.new([] of Int32).empty?}"\nputs "all? #{n.all? { |x| x > 0 }}"\nputs "any? #{n.any? { |x| x > 4 }}"\nputs "none? #{n.none? { |x| x > 9 }}"\nputs "one? #{n.one? { |x| x == 4 }}"\nputs "count #{n.count { |x| x == 1 }}"\nputs "find #{n.find { |x| x > 3 }} #{n.find { |x| x > 9 }.inspect}"\nputs "index #{n.index { |x| x == 4 }} #{n.index { |x| x == 9 }.inspect}"\nputs "first?/first #{n.first?} #{n.first}"\nputs "map #{n.map { |x| x * 2 }.join(",")}"\nputs "flat_map #{n.flat_map { |x| [x, x] }.join(",")}"\nputs "map_with_index #{n.map_with_index { |x, i| x * i }.join(",")}"\nputs "select #{n.select { |x| x > 2 }.join(",")}"\nputs "reject #{n.reject { |x| x > 2 }.join(",")}"\nputs "partition #{n.partition { |x| x > 2 }.map(&.join("+")).join(" | ")}"\nputs "take/skip #{n.take(2).join(",")} #{n.skip(3).join(",")}"\nputs "take_while #{n.take_while { |x| x < 4 }.join(",")}"\nputs "skip_while #{n.skip_while { |x| x < 4 }.join(",")}"\nputs "reduce #{n.reduce(0) { |a, x| a + x }}"\nputs "each_with_index #{n.map_with_index { |x, i| i }.join(",")}"\nputs "each_with_object #{n.each_with_object([] of Int32) { |e, o| o << e * 10 }.join(",")}"\nputs "join #{n.join("-")}"\nputs "includes? #{n.includes?(4)} #{n.includes?(9)}"\nputs "max?/max #{n.max?} #{n.max}"\nputs "min?/min #{n.min?} #{n.min}"\nputs "sum/product #{n.sum} #{n.product}"\nputs "sum of nothing #{Nums.new([] of Int32).sum}"\nputs "tally #{n.tally[1]}"\nputs "sorted #{n.sorted.join(",")}"\nputs "max_by #{w.max_by { |s| s.size }}"\nputs "group_by #{w.group_by { |s| s.size }[4].join(",")}"\nputs "index_by #{w.index_by { |s| s.size }[3]}"\n\nputs "each_slice #{n.each_slice(2).map(&.join("+")).join(" ")}"\nputs "each_cons #{n.each_cons(2).map(&.join("+")).join(" ")}"\nputs "chunk_while #{n.chunk_while { |a, b| b >= a }.map(&.join("+")).join(" ")}"\nputs "first(n) #{n.first(3).join(",")}"\nputs "compact_map #{n.compact_map { |x| x > 2 ? x * 10 : nil }.join(",")}"\nputs "find_value #{n.find_value { |x| x > 3 ? "big" : nil }}"\nputs "accumulate #{n.accumulate(0) { |a, x| a + x }.join(",")}"\nputs "reduce? #{n.reduce? { |a, x| a + x }}"\nputs "in_groups_of #{n.in_groups_of(2, 0).map(&.join("+")).join(" ")}"\nputs "min_by #{w.min_by { |s| s.size }}"\nputs "max_of/min_of #{w.max_of { |s| s.size }} #{w.min_of { |s| s.size }}"\nputs "minmax #{n.minmax[0]},#{n.minmax[1]}"\nputs "tally_by #{w.tally_by { |s| s.size }[4]}"\nputs "sum_by #{w.sum_by { |s| s.size }}"\n\n# SPEC II.6 finding 6: one bound replaces `Indexable | Iterable | Iterator`,\n# and `O::Elem` names what the other collection yields. Four numbers for\n# four words: a shorter other collection is refused, as the other library\n# refuses it.\nputs "zip #{Nums.new([3, 1, 4, 1]).zip(w).map { |pair| "#{pair[0]}#{pair[1]}" }.join(" ")}"\n\ncycled = [] of Int32\nNums.new([1, 2]).cycle(2) { |x| cycled << x }\nputs "cycle #{cycled.join(",")}"\n\n# A trait with an associated type used as a type: one function, any implementer.\ndef describe(e : Enumerable) : String\n "#{e.size} items"\nend\n\nputs "as a type #{describe(n)} / #{describe(w)}"\n\n# ---------------------------------------------------------------------------\n# What this sample would report as an error\n# ---------------------------------------------------------------------------\n#\n# * `Words.new([...]).sum` — `sum` is bounded `where Elem : Num` and\n# `String` implements `Comparable` but not `Num`. The error names the element\n# type and the bound rather than failing somewhere inside the method body.\n#\n# * A second `impl Enumerable for Nums` — a trait with an associated type is\n# implementable once per type, because a second answer for `Elem` would make\n# every call on `Nums` ambiguous.\n#\n# * `impl Num for X` with no `impl Comparable for X` before it —\n# `Num : Comparable` requires it, and the impls have to be written in\n# dependency order.\n", "samples/iyi/config.iyi": "# The first program that reads text - a `key = value` file, with the line\n# number in its error.\n#\n# ./bin/iyi run samples/iyi/config.iyi\n#\n# Text comes apart into lines, a line into its two halves around a `=`, and\n# each half loses its whitespace; a line that does not parse is an error\n# value carrying where it was (SPEC.md III.1), not a printed message. Like\n# `basics` and `inventory`, this documents no rule: it is here because the\n# prelude grows only when a program in this repository needs something\n# (SPEC.md 0.1.0 item 3), and cutting text is what the third program does.\nmodule samples/config\n\nstruct ParseError\n property line : Int32\n property message : String\n\n def initialize(@line : Int32, @message : String)\n end\nend\n\nimpl Error for ParseError\n def message : String\n "line #{@line}: #{@message}"\n end\nend\n\ndef parse(text : String) : Hash(String, String) | ParseError\n config = {} of String => String\n text.lines.each_with_index do |raw, index|\n line = raw.strip\n next if line.empty? || line.starts_with?('#')\n eq = line.index('=')\n return ParseError.new(index + 1, "no '=' in #{line.inspect}") unless eq\n key = line[0, eq].strip\n return ParseError.new(index + 1, "empty key") if key.empty?\n config[key] = line[eq + 1, line.size - eq - 1].strip\n end\n config\nend\n\ngood = "# the service\\nname = iyi\\nport= 8080\\n\\nmode =fast\\n"\ncase parse(good)\nin Hash(String, String)\n puts it # => {"name" => "iyi", "port" => "8080", "mode" => "fast"}\n puts it["port"].to_i + 1 # => 8081\n puts it.keys.join(", ") # => name, port, mode\nin ParseError then puts "error: #{it.message}"\nend\n\nbad = "name = iyi\\nbroken line\\n"\ncase parse(bad)\nin Hash(String, String) then puts "parsed"\nin ParseError then puts "error: #{it.message}" # => error: line 2: no '=' in "broken line"\nend\n\n# The pieces a parser cuts, on their own.\nputs "a,,b".split(',') # => ["a", "", "b"]\nputs "one\\ntwo\\n".lines # => ["one", "two"]\nputs " padded\\t".strip.inspect # => "padded"\nputs "config.iyi".ends_with?(".iyi") # => true\n", + "samples/iyi/cores.iyi": "# Work on every core - SPEC.md III.4.13, as a person writes it.\n#\n# ./bin/iyi run samples/iyi/cores.iyi\n#\n# `spawn` is a task on the thread that spawned it, and its block may touch\n# anything; `spawn_parallel` is a task a pool of workers runs on any core,\n# and its block may capture only what is `Share` (III.4.4). std/http's\n# `Server.serve` puts each connection on that pool, so its block is checked\n# the same way. When a block reaches module state through a call, the\n# compiler warns, and `@[SafeReach("why")]` on the state says why it is safe.\nmodule samples/cores\n\nimport std/http::{HTTP, Response, Server}\nimport std/socket::{IyiSocket}\nimport std/mutex::{Mutex}\n\ndef collatz_steps(n : Int64) : Int64\n steps = 0_i64\n while n != 1\n n = n % 2 == 0 ? n // 2 : 3 * n + 1\n steps += 1\n end\n steps\nend\n\n# 1. `spawn` and `spawn_parallel`.\n#\n# The tasks `spawn` starts share their spawner's thread, so they may append\n# to an `Array` they captured. The tasks `spawn_parallel` starts run on\n# whichever core is free; each answers its own value, and a task's answer\n# need not be `Share`, because it is handed over once, after the task ends.\nseen = [] of Int64\ngroup do |g|\n (1..3).each do |n|\n g.spawn do\n seen << collatz_steps(n.to_i64)\n 0\n end\n end\nend\nputs seen.sorted # => [0, 1, 7]\n\nlongest = 0_i64\ngroup do |g|\n handles = [] of IyiTask(Int64)\n 4.times do |part|\n handles << g.spawn_parallel do\n best = 0_i64\n start = part.to_i64 * 25_000 + 1\n (start..start + 24_999).each { |n| best = collatz_steps(n) if collatz_steps(n) > best }\n best\n end\n end\n handles.each do |handle|\n steps = handle.value\n longest = steps if steps.is_a?(Int64) && steps > longest\n end\nend\nputs longest # => 350, the longest chain below 100,000\n\n# 2. State the pool may share.\n#\n# A counter that every core adds to is an `Atomic`; an `Array` that every\n# core appends to sits behind a `Mutex`. Both are `Share`, so a parallel\n# block may capture them.\nhits = Atomic(Int64).new(0_i64)\npaths = Mutex.new { [] of String }\n\n# 3. Module state a call reaches.\n#\n# A parallel block that names `GREETING` is refused, because an `Array` is\n# not `Share`. One that only calls `greeting` used to compile with nothing\n# said; now the compiler warns at the block, naming the path. This constant\n# is set before the server starts and only read afterwards, so it says so.\n@[SafeReach("set once before the server starts, then only read")]\nGREETING = ["hello", "from", "every", "core"]\n\ndef greeting : String\n GREETING.join(" ")\nend\n\n# 4. A server on every core.\n#\n# `Server.serve` runs each connection on the pool's workers, so its block is\n# checked as `spawn_parallel`'s is. It stops through a channel: closing the\n# listener from inside the block would capture it, and `/stop` may arrive on\n# any worker. `workers: 1` keeps the one-thread server, whose block may\n# capture anything.\nlistener = IyiSocket.listen("127.0.0.1", 0)\nbase = "http://127.0.0.1:#{listener.local_port}"\nstop = Channel(Int32).new(1)\ngroup do |g|\n g.spawn do\n stop.receive\n listener.close\n 0\n end\n g.spawn do\n Server.serve(listener) do |req|\n hits.add(1_i64)\n path = req.path\n paths.lock { |list| list << path }\n if path == "/stop"\n stop.send(0)\n Response.new(200, "bye")\n else\n Response.new(200, greeting)\n end\n end\n 0\n end\n g.spawn do\n puts HTTP.get(base + "/").or_panic.body # => hello from every core\n HTTP.get(base + "/stop").or_panic\n 0\n end\nend\nputs hits.get # => 2\npaths.lock { |list| puts list.sorted } # => ["/", "/stop"]\n", "samples/iyi/derive.iyi": "# `derive`, and where it runs (SPEC.md R-5, II.4).\n#\n# ./bin/iyi run samples/iyi/derive.iyi\n#\n# A derive runs once, in the module that declares the type. What it generates is\n# an ordinary declaration of that module, so it travels in the module's\n# `.iyimod` and a consumer calls the derived method without running the macro\n# and without this module's source. `bench/samples_roundtrip.sh` builds this\n# sample from its artifacts with `std/derives` deleted, which is that claim\n# taken literally.\n#\n# The macro is handed the facts R-5 lets it read: the declaration's name, and\n# the fields written in its body, each with the type it was written as. It\n# cannot enumerate a type it was not given, which is what keeps a derive\n# bounded and cacheable.\n\nmodule samples/derive\n\nimport std/derives::*\n\npub struct Point\n @x : Int32\n @y : Int32\n\n def initialize(@x : Int32, @y : Int32)\n end\n\n derive described\nend\n\n# One derive, two declarations. The macro reads each one's own fields, so\n# neither type had to be written down inside the macro.\npub struct Span\n @from : Int32\n @to : Int32\n @label : String\n\n def initialize(@from : Int32, @to : Int32, @label : String)\n end\n\n derive described\nend\n\nputs Point.new(3, 4).described\nputs Span.new(1, 9, "range").described\n\n# The field type is a type, not a name, so a derive can ask what it implements.\n# `Name` and `Show` both belong to `std/derives`, and both arrive from that\n# module's artifact when its source is gone: `@label` is rendered through the\n# trait, and `@count` is skipped because `Int32` does not implement it.\n#\n# `getter label : Name` is a macro call, so the field it declares exists only\n# once it has run. A derive reads the declarations above it, which is why\n# `derive` goes last. Below `getter`, this would be an error rather than a\n# method generated over no fields.\n#\n# One line, two derives: each macro reads the same declaration and adds its own\n# methods.\npub struct Tag\n getter label : Name\n @count : Int32\n\n def initialize(@label : Name, @count : Int32)\n end\n\n derive described, shown\nend\n\nputs Tag.new(Name.new("hi"), 2).described\nputs Tag.new(Name.new("hi"), 2).shown\n\n# ---------------------------------------------------------------------------\n# What this sample would report as an error\n# ---------------------------------------------------------------------------\n#\n# * `derive missing` where nothing exports a `missing` macro. The error names\n# the macro and the declaration it would have to be written as, rather than\n# failing as an undefined method on the type's metaclass.\n#\n# * `derive` outside a class or struct body. There is no declaration to read,\n# so there is nothing for the macro to be handed.\n#\n# * A `derive` inside a reopened type from another module. That is refused\n# before the derive is reached, by R-3: iyi has no open classes, so a module\n# cannot add to a type it does not declare.\n#\n# * A `getter` (or any macro call that declares a field) written below the\n# `derive` that should read it. The derive names the call and says which way\n# to move, rather than generating a method over the fields it happened to see.\n", "samples/iyi/enums.iyi": "# An `enum`, used the way a program uses one — SPEC.md IV.2.\n#\n# ./bin/iyi run samples/iyi/enums.iyi\n#\n# The compiler gives an enum two methods: `value`, the integer the member was\n# numbered with, and `new`, which wraps one. Everything below is the prelude's\n# (`src/iyi/enum.iyi`), and until this sample asked for it none of it was\n# there: `Level::Warn == Level::Warn` was false, `"#{Level::Warn}"` printed\n# `Samples::Enums::Level`, and a `case` over the members matched nothing —\n# because a `when` that names a member lowers to `Level::Warn === level`, and\n# `===` is `==`.\n#\n# Two enums, because the compiler writes different code for each: a plain one\n# whose `case` the exhaustiveness checker holds to every member, and a\n# `@[Flags]` one, where it synthesizes `None`, `All` and question methods that\n# ask `includes?`.\n\nmodule samples/enums\n\n# A level is an order as well as a name, which is why the threshold below\n# works: `Warn >= Info` is the whole reason a program writes one.\nenum Level : Int32\n Debug = 0\n Info = 1\n Warn = 2\n Error = 3\nend\n\n# A set of bits, one per member, which is what `@[Flags]` numbers them as.\n@[Flags]\nenum Mode\n Read\n Write\n Append\nend\n\n# 1. A member prints as its name, in interpolation and out of `to_s`.\nlevel = Level::Warn\nputs "level: #{level}"\nputs "spelled: " + Level::Error.to_s\n\n# 2. Equality, and the `case` that is built on it — a `when` naming a member\n# lowers to `===`, which is `==`.\nputs "same: #{level == Level::Warn}"\nputs "other: #{level == Level::Debug}"\n\n# `in` rather than `when`, which is the form the exhaustiveness checker holds\n# to every member: the day a member is added this sample stops compiling\n# rather than falling through, and the answer is a `String` rather than a\n# `String | Nil` because there is nothing left for an `else` to catch.\nverdict = case level\n in Level::Debug then "quiet"\n in Level::Info then "ordinary"\n in Level::Warn then "loud"\n in Level::Error then "loudest"\n end\nputs "verdict: #{verdict}"\n\n# 3. The question methods the compiler writes, which call the prelude's `==`.\nputs "warn? #{level.warn?}"\nputs "error? #{level.error?}"\n\n# 4. An order, so a level can be a threshold.\nputs "at least info: #{level >= Level::Info}"\nputs "below error: #{level < Level::Error}"\n\n# 5. The members, as a list — a menu, a validation table, a loop over all of\n# them. `names` is the same list said in text.\nLevel.values.each do |candidate|\n print candidate.to_s\n print " "\nend\nputs ""\nputs "names: #{Level.names.size}"\n\n# 6. A name read back, which is what a program does with an argument or a\n# configuration line. Unknown text answers `nil` rather than a panic, and the\n# lenient form takes the spelling a person types.\nputs "parsed: #{Level.parse?("Error").to_s}"\nputs "lenient: #{Level.parse?("warn").to_s}"\nputs "unknown: #{Level.parse?("shout").inspect}"\n\n# 7. The value, for a wire format or a C call, and the way back.\nputs "value: #{Level::Error.value}"\nputs "from 1: #{Level.from_value?(1).to_s}"\nputs "from 9: #{Level.from_value?(9).inspect}"\n\n# 8. A flags enum: the two set operators, membership, and a `to_s` that says\n# which bits are in it.\nmode = Mode::Read | Mode::Write\nputs "mode: #{mode}"\nputs "read: #{mode.includes?(Mode::Read)}"\nputs "append: #{mode.append?}"\nputs "none: #{Mode::None.to_s}"\nputs "masked: #{(mode & Mode::Write).to_s}"\n\n# 9. As a `Hash` key, which needs `hash` as well as `==`.\ncounts = {} of Level => Int32\ncounts[Level::Warn] = 2\ncounts[Level::Error] = 1\nputs "warns: #{counts[Level::Warn]}"\nputs "errors: #{counts[Level::Error]}"\n", "samples/iyi/errors.iyi": "# Errors are ordinary union members — SPEC.md III.1.\n#\n# ./bin/iyi run samples/iyi/errors.iyi\n#\n# No `Result` wrapper, no exception hierarchy, no new type machinery: unions\n# already exist and already carry a type id. What makes a member an *error*\n# member is that its type implements `Error`, a trait the compiler owns.\n\nmodule samples/errors\n\npub struct IOError\n getter path : String\n\n def initialize(@path : String)\n end\nend\n\n# `Error` is not declared here. It is the compiler's, so that `!` can ask\n# whether a member implements it without a name in scope deciding the answer.\nimpl Error for IOError\n def message : String\n "no such file: #{path}"\n end\nend\n\npub struct ParseError\n getter text : String\n\n def initialize(@text : String)\n end\nend\n\nimpl Error for ParseError\n def message : String\n "not a number: #{text}"\n end\nend\n\npub def read(path : String) : String | IOError\n return IOError.new(path) if path == "missing"\n path == "bad" ? "twelve" : "12"\nend\n\npub def to_number(text : String) : Int32 | ParseError\n return ParseError.new(text) unless text == "12"\n 12\nend\n\n# `!` propagates. If the value is a non-error member the expression evaluates to\n# it — narrowed, so `to_number` sees a `String` and not the union. If it is an\n# error member it is returned from here, which is why `load` has to admit both\n# errors in its own return type. Nothing enforces that separately: it is the\n# ordinary return-type check on the return the operator writes.\npub def load(path : String) : Int32 | IOError | ParseError\n text = read(path)!\n to_number(text)!\nend\n\n# Handling needs nothing new. An exhaustive `case` already checks totality, so\n# adding an error member to `load` turns every incomplete `case` on it into a\n# compile error. That is the main ergonomic argument for the whole approach and\n# it cost nothing to build.\n["config", "missing", "bad"].each do |path|\n case load(path)\n in Int32 then puts "read #{it}"\n in IOError then puts "io: #{it.message}"\n in ParseError then puts "parse: #{it.message}"\n end\nend\n\n# `it` is the value being matched, and it is narrowed per branch: the first sees\n# an `Int32`, the other two see one error type each, which is how `.message`\n# resolves without anything asking what the union holds. It is an assignment the\n# compiler writes into each branch, not new machinery — so `it` outlives the\n# `case` the way any variable assigned inside an `if` does, and a nested `case`\n# shadows it.\n\n# Where a `case` is overkill, `.or` takes a default and `.or_panic` takes the\n# value or dies (III.1.3). These cannot be ordinary methods: by II.1 a real\n# method call on `Int32 | IOError` would demand it from *both* members, and a\n# method every error type has to supply is what this design avoids. So the\n# compiler knows them by name — which is also why `or` and `or_panic` are not\n# names an iyi program can use for anything else.\n["config", "missing", "bad"].each do |path|\n puts "or: #{load(path).or(0)}"\nend\n\n# `.or` is an `is_a?(::Error)` and nothing more, so the result type falls out\n# instead of being computed: the default's type unioned with the non-error\n# members. Here that is `Int32`, and the default is only evaluated when there is\n# an error to recover from.\nputs "or: #{load("missing").or(-1)}"\n\n# `.or_panic` yields the non-error members alone, because what it calls never\n# returns. It reaches `message` on a value narrowed to `IOError | ParseError` —\n# two unrelated types — which resolves by II.1: both implement `Error`, so their\n# union does. Until panics exist (III.1.4), this unwinds as a Crystal exception.\nputs "panic: #{load("config").or_panic}"\n\n# ---------------------------------------------------------------------------\n# defer — III.1.4\n# ---------------------------------------------------------------------------\n#\n# Once errors are values returned early, the interesting exit from a body is an\n# ordinary `return` in the middle of it, and `begin`/`ensure` makes you wrap\n# everything after the acquisition to cover it. `defer` names the cleanup at the\n# acquisition instead. It expands to that same `ensure`, so it runs on a normal\n# exit, on a `!` propagation, and on an unwind — no new runtime machinery, only\n# a different shape.\npub def session(path : String) : Int32 | IOError | ParseError\n puts " open outer"\n defer puts " close outer"\n\n text = read(path)!\n\n puts " open inner"\n defer puts " close inner"\n\n to_number(text)!\nend\n\n# Cleanup is LIFO, and that is the nesting rather than a rule: the second\n# `defer` expands inside the first one's body, so its `ensure` is the inner one.\n# The failing run proves the part that matters — `read(path)!` returns from the\n# middle of the body and the cleanup still happens.\nputs "success:"\nputs session("config").or(-1)\nputs "propagating:"\nputs session("missing").or(-1)\n\n# The scope is the block, not the function. This is the departure from Go, and\n# it is what the expansion does rather than an extra rule: the cleanup lands\n# inside the loop body, so it runs each iteration instead of piling up until the\n# function returns — Go's best-known wart with the feature.\n2.times do |i|\n defer puts " iteration #{i} closed"\n puts " iteration #{i}"\nend\n\n# ---------------------------------------------------------------------------\n# What this sample would report as an error\n# ---------------------------------------------------------------------------\n#\n# * Dropping the `in ParseError` branch — `case is not exhaustive`.\n#\n# * `def go : String` with `read(p)!` in it — the error names the return type\n# and the error being propagated into it.\n#\n# * `!` on something with no error member, such as an `Int32?`. Rejected rather\n# than given a surprising meaning: `Nil` does not implement `Error` (III.1.5),\n# so without the check this would compile and silently do nothing.\n#\n# * `!` on a value whose every member is an error. It could never produce one,\n# and a function that genuinely never succeeds returns `NoReturn`.\n#\n# * `def sort!` — `!` is not part of a name (III.1.7). This is the one place\n# that still explains the naming convention, because after a `def` name there\n# is nothing to propagate.\n#\n# * `.or` and `.or_panic` on the same two operands `!` rejects. With no error\n# member there is nothing to recover; with every member an error, `.or` can\n# only return its default and `.or_panic` can only panic.\n#\n# * `.or 0` without parentheses — `.or` takes the default in parentheses, so\n# the shape cannot be confused with a call to a method of that name.\n#\n# * `it` in a `case` over a tuple, such as `case {a, b}` — there is no single\n# value to name, so `it` stays undefined rather than being bound to one of\n# the elements.\n#\n# * `defer close(f)!` — a `defer` runs while the scope is already being left,\n# possibly carrying an error of its own, so a second one leaving from there\n# is the error-during-error problem. Handle it in the `defer` body.\n#\n# * `impl Error for String` here — the orphan rule (R-3). `Error` is the\n# compiler's and `String` is the prelude's, so neither belongs to a module\n# this impl could be at home in, and every module that can name both would be\n# free to write its own.\n#\n# ---------------------------------------------------------------------------\n# Not yet implemented\n# ---------------------------------------------------------------------------\n#\n# * Panics (III.1.4). They are meant to be catchable only at task boundaries,\n# and what a task boundary is belongs to Part V.5. Until then `.or_panic`\n# raises a Crystal exception, and `defer` runs on that unwind either way.\n", @@ -28,7 +29,7 @@ "samples/iyi/grid.iyi": "# The first program with a table in it - rows of cells, built from their\n# coordinates, read across, down and along the diagonal.\n#\n# ./bin/iyi run samples/iyi/grid.iyi\n#\n# An array built by a block, a range asked for a value per position, and\n# the small set a list of numbers gets asked for: reversed, unique, paired\n# with another, one taken out. Like `basics`, `inventory` and `config`, this\n# documents no rule; it is here because the prelude grows only when a\n# program in this repository needs something (SPEC.md 0.1.0 item 3).\nmodule samples/grid\n\nn = 4\ngrid = Array(Array(Int32)).new(n) { |r| Array(Int32).new(n) { |c| r * n + c } }\ngrid.each { |row| puts row.map { |v| v.to_s.rjust(3) }.join }\n# => 0 1 2 3\n# => 4 5 6 7\n# => 8 9 10 11\n# => 12 13 14 15\n\nputs grid.map(&.sum).sum # => 120\nputs (0...n).map { |i| grid[i][i] } # => [0, 5, 10, 15]\nputs (0...n).map { |c| grid.map { |row| row[c] } }.first # => [0, 4, 8, 12]\n\n# 2. A list of numbers, asked the usual things.\nputs (1..5).to_a.reversed # => [5, 4, 3, 2, 1]\nputs (1..10).select { |i| i.even? } # => [2, 4, 6, 8, 10]\nputs (1..10).sum # => 55\nputs [3, 1, 3, 2, 1].uniq # => [3, 1, 2]\nputs [1, 2, 3].zip(["a", "b", "c"]) # => [{1, "a"}, {2, "b"}, {3, "c"}]\n\nletters = ["b", "a", "c"]\nputs letters.index("c").inspect # => 2\nputs letters.delete("a") # => a\nputs letters # => ["b", "c"]\n\n# 3. A line built piece by piece, then ended.\n5.times { |i| print i }\nputs # => 01234\n", "samples/iyi/hello.iyi": "# The first iyi program.\n#\n# ./bin/iyi run samples/iyi/hello.iyi\n#\n# Everything below compiles and runs today. What is still missing is listed at\n# the bottom — this file is meant to stay honest about how far the\n# implementation actually reaches.\n\n# R-1: the compilation-unit header. A module is the unit of compilation and of\n# recompilation; `import` edges between modules form a DAG. Reading a module's\n# `.iyimod` is what will one day replace re-analysing its source.\nmodule samples/hello\n\n# R-3: a trait is a named set of requirements. `abstract def` marks a method an\n# implementer must provide. Traits replace Crystal's open classes: a type's\n# method set is knowable without reading the whole program.\npub trait Greet\n abstract def greet : String\nend\n\npub trait Loud\n abstract def shout : String\nend\n\n# R-2: `pub` marks a declaration as exported, and exported declarations carry\n# full signatures. That signature is the module's contract, and the only thing\n# a consumer ever needs to read.\npub struct User\n getter name : String\n\n def initialize(@name : String)\n end\nend\n\npub struct Robot\n getter id : Int32\n\n def initialize(@id : Int32)\n end\nend\n\n# `impl Trait for Type` — the replacement for reopening a class. R-3's orphan\n# rule requires it to live in the module defining either the trait or the\n# type, and that is enforced: both are defined right here. `modules.iyi` shows\n# the cross-module case, where the choice actually costs something.\nimpl Greet for User\n def greet : String\n "Hello, #{name}!"\n end\nend\n\n# A type may implement several traits...\nimpl Loud for User\n def shout : String\n greet.upcase\n end\nend\n\n# ...and a trait may be implemented by several types.\nimpl Greet for Robot\n def greet : String\n "BEEP #{id}"\n end\nend\n\n# `impl` is the only way to give a type a trait. SPEC.md II.8 — each of these\n# is refused, and each for its own reason:\n#\n# struct User\n# include Greet # a type acquires a trait by having an impl, whose\n# end # location R-3 can check; `include` has no such rule\n#\n# import samples/hello/greet::* # a trait exports no names to bring\n# # into scope — a trait method is resolved\n# # from the receiver, never from an\n# # import's names\n#\n# impl Greet for Loud # a blanket impl in disguise\n#\n# And leaving a requirement unmet is an error where the impl is written, not\n# where the type is later used:\n#\n# impl Loud for Robot\n# end\n# # => impl Loud for Robot is missing a method required by the trait: shout\n\n# Not exported. No signature required, because nothing outside this module can\n# depend on it — inference inside a module costs only what the module costs.\ndef describe(item)\n item.greet\nend\n\n# A trait bound on a method's own type parameter — SPEC.md II.7 rule 3. The\n# method exists for every `T`; the bound is checked where `T` binds, so a call\n# with a type that does not implement `Greet` is rejected at that call:\n#\n# announce(42)\n# # => Int32 does not implement Samples::Hello::Greet, required by `T`\n# # in `announce`\n#\n# This is the shape Kemal's router needs: `&block : Context -> B forall\n# B : IntoBody` replaces a per-request runtime type check with one at compile\n# time. Note this is *not* the impl-level bound below — nothing here is\n# conditional.\npub def announce(item : T) : String forall T : Greet\n "-> #{item.greet}"\nend\n\n# Ruby ergonomics, unchanged and free to compile: blocks, string\n# interpolation, everything-is-an-expression, local inference.\nputs User.new("iyi").greet\nputs User.new("iyi").shout\nputs Robot.new(42).greet\n\n# A trait as a type: both implementers dispatch through it.\ncrowd = [User.new("crystal"), Robot.new(7)] of Greet\ncrowd.each { |member| puts describe(member) }\n\nputs announce(Robot.new(9))\n\n# ---------------------------------------------------------------------------\n# Not yet implemented\n# ---------------------------------------------------------------------------\n#\n# * Trait bounds on a generic *impl*'s parameters (`impl Show for Box(T)\n# forall T : Show`) parse but are rejected — unlike the bound on `announce`\n# above, which works. A bound on an impl makes the impl conditional:\n# `Box(Int32)` would implement `Show` only if `Int32` did, which has to be\n# checked where the type is instantiated rather than where the impl is\n# written. A different mechanism, and the harder of the two.\n#\n# * Dictionary-passing generics is unimplemented: `announce` above is\n# monomorphised the way Crystal monomorphises it.\n#\n# * `.iyimod` reaches the front end and stops there. `modules.iyi` and\n# `immutable.iyi` compile with the imported module's source deleted, but a\n# build that reads artifacts cannot yet produce a program, because the\n# artifact carries declarations and no object code (SPEC.md IV.1f).\n#\n# * The prelude under this file is iyi's own, 833 lines of it, and that is why\n# building it costs 0.32 s rather than 2.10 s. It is not a standard library\n# and does not pretend to be one: no `Float64#to_s`, no `Range`, no `Set`,\n# no formatting, and `raise` is a panic that prints and exits. What is in it\n# is what a sample called for (SPEC.md, "0.1.0", item 3).\n#\n# See `modules.iyi` for `import` and its `::*` and `::{...}` forms across\n# files, `generics.iyi` for implementing a trait for a generic type and for\n# associated types, bounds and requirements, and `collections.iyi` for\n# `Enumerable` ported onto all of it.\n", "samples/iyi/immutable.iyi": "# The shareable immutable sequence, exercised — SPEC.md III.4.7.\n#\n# ./bin/iyi run samples/iyi/immutable.iyi\n#\n# `std/list.iyi` holds the type. This file is the evidence for the two claims\n# made about it, because a type that merely compiles has proved neither:\n#\n# * It is genuinely immutable — nothing a caller keeps a hold of can change\n# a list after it exists, which is what makes it shareable under III.4.4.\n# * It costs one `each` and gets the rest, which is II.6's claim tested on a\n# second type after `Enumerable` itself, and the first time on a *generic*\n# one.\n\nmodule samples/immutable\n\nimport std/list::{List}\n\n# Two ways of naming the same type, both across a module boundary. The second\n# lets the argument be inferred, and it is written that way on purpose: the\n# artifact carries no machine code for a generic, so `List(String)` is a type\n# this file makes, and inference puts `new` on `List(T)` instead of on the\n# instance. That difference once linked undefined and nothing here caught it,\n# because every line in this file wrote the argument out.\nnums = List(Int32).new([3, 1, 4, 1, 5])\nwords = List.new(["pear", "fig", "plum", "kiwi"])\n\n# ---------------------------------------------------------------------------\n# Its own surface: small on purpose\n# ---------------------------------------------------------------------------\nputs "size #{nums.size}"\nputs "empty? #{nums.empty?} #{List(Int32).new([] of Int32).empty?}"\nputs "at #{nums.at(0)} #{nums.at(4)}"\n\n# ---------------------------------------------------------------------------\n# Immutability, demonstrated rather than asserted\n# ---------------------------------------------------------------------------\n#\n# `appended` returns a new list and leaves this one alone. By III.1.7 the plain\n# verb names the mutating form, so the participle is the only name this type\n# can have — `push` and `sort` describe something it cannot do. The naming\n# convention was settled before any library code existed precisely so that it\n# would fall out here rather than be applied here.\nlonger = nums.appended(9)\nputs "appended #{longer.size} from #{nums.size}, original #{nums.to_a.join(",")}"\nputs "concatenated #{nums.concatenated(List(Int32).new([7])).to_a.join(",")} / #{nums.size}"\n\n# The constructor copies, and this is the line that shows why it must. `source`\n# is still held by this file; if the list had kept it rather than copying, a\n# task holding `taken` would see it change underneath. That copy is the price\n# of having no borrow checker to say "I own this now" — one copy, at the\n# boundary, once.\nsource = [1, 2]\ntaken = List(Int32).new(source)\nsource << 3\nputs "copied list #{taken.size}, source #{source.size}"\n\n# ---------------------------------------------------------------------------\n# Everything below here is the trait's, from one `each`\n# ---------------------------------------------------------------------------\nputs "to_a #{nums.to_a.join(",")}"\nputs "all?/any? #{nums.all? { |x| x > 0 }} #{nums.any? { |x| x > 4 }}"\nputs "none?/one? #{nums.none? { |x| x > 9 }} #{nums.one? { |x| x == 4 }}"\nputs "count #{nums.count { |x| x == 1 }}"\nputs "find #{nums.find { |x| x > 3 }} #{nums.find { |x| x > 9 }.inspect}"\nputs "index #{nums.index { |x| x == 4 }} #{nums.index { |x| x == 9 }.inspect}"\nputs "first?/first #{nums.first?} #{nums.first}"\nputs "map #{nums.map { |x| x * 2 }.join(",")}"\nputs "flat_map #{nums.flat_map { |x| [x, x] }.join(",")}"\nputs "map_with_index #{nums.map_with_index { |x, i| x * i }.join(",")}"\nputs "select/reject #{nums.select { |x| x > 2 }.join(",")} #{nums.reject { |x| x > 2 }.join(",")}"\nputs "partition #{nums.partition { |x| x > 2 }.map(&.join("+")).join(" | ")}"\nputs "take/skip #{nums.take(2).join(",")} #{nums.skip(3).join(",")}"\nputs "take_while #{nums.take_while { |x| x < 4 }.join(",")}"\nputs "skip_while #{nums.skip_while { |x| x < 4 }.join(",")}"\nputs "reduce #{nums.reduce(0) { |a, x| a + x }}"\nputs "each_with_object #{nums.each_with_object([] of Int32) { |e, o| o << e * 10 }.join(",")}"\nputs "join #{nums.join("-")}"\nputs "includes? #{nums.includes?(4)} #{nums.includes?(9)}"\nputs "max/min #{nums.max} #{nums.min}"\nputs "sum/product #{nums.sum} #{nums.product}"\nputs "tally #{nums.tally[1]}"\nputs "sorted #{nums.sorted.join(",")}"\nputs "max_by #{words.max_by { |s| s.size }}"\nputs "group_by #{words.group_by { |s| s.size }[4].join(",")}"\n\n# The trait reaches a generic type, which is the part that was not built until\n# this file needed it. `type Elem = T` binds the associated type to the impl's\n# own parameter, so `List(Int32)` enumerates `Int32` and `List(String)`\n# enumerates `String` from the same impl — II.6 × II.7, which had never met.\nputs "two elem types #{nums.map { |x| x + 1 }.join(",")} / #{words.map { |s| s.size }.join(",")}"\n\n# ---------------------------------------------------------------------------\n# All of the above, with `src/std` deleted\n# ---------------------------------------------------------------------------\n#\n# ./bin/crystal build --no-codegen --emit-iyimod /tmp/mods samples/iyi/immutable.iyi\n# mv src/std /tmp/std-elsewhere\n# ./bin/crystal build --no-codegen --use-iyimod /tmp/mods samples/iyi/immutable.iyi # compiles\n# mv /tmp/std-elsewhere src/std\n#\n# This file is the hard case for R-1's contract, not `modules.iyi`: what has to\n# survive the round trip is a generic struct, a 575-line trait with an\n# associated type, and a generic impl that answers it. `mod dump --declarations\n# /tmp/mods/std/list.iyimod` is what the second build reads — the twelve\n# headers with no bodies, and `impl … for Std::List::List(T) forall T` with its\n# `type Elem = T`. Every call above is checked against those and against\n# nothing else (SPEC.md IV.1f).\n#\n# Not codegen: artifacts from a `--no-codegen` build carry no object code, so\n# the second build passes `--no-codegen` too and produces no program - one that\n# links against them is refused by name. `./bin/crystal run` above is still an\n# ordinary build that reads the sources.\n", - "samples/iyi/init_order.iyi": "# Module initialisation order: SPEC.md III.5.\n#\n# ./bin/iyi run samples/iyi/init_order.iyi\n#\n# Prints its five lines in the order they are numbered, and the numbering is\n# the whole point — none of it comes from where the `import` directives are\n# written. A module's top-level expressions are its initialiser (rule 3), and\n# a module initialises after every module it imports (rule 1).\n\nmodule samples/init_order\n\n# Written above the imports on purpose, and it still runs after both modules\n# below have initialised. The compiler holds a module's initialiser apart from\n# the site that imported it and puts them in the order the import DAG forces:\n# `boot/config` before `boot/registry` because the second imports the first,\n# and this file last because it imports both.\nputs "4. samples/init_order, above its own `import` lines"\n\nimport boot/registry\nimport boot/config\n\nputs "5. #{Boot::Registry.greeting}"\n\n# ---------------------------------------------------------------------------\n# What this sample does not promise\n# ---------------------------------------------------------------------------\n#\n# * The order of two modules that do not import each other. Rule 2 says that\n# order is *unobservable*, not merely unspecified — a module can only name\n# what it imports (R-1), reach what that module exports (R-2), and reopen\n# nothing (R-3), so an initialiser has nothing of an unrelated module to\n# look at. Nothing here prints from two independent modules, because that\n# would be documenting an order the spec refuses to have — and debug builds\n# shuffle it, so the documentation would be wrong most of the time. Build\n# with `--release` to get the load order back, or `IYI_INIT_SEED=1` to get\n# the same shuffled one twice.\n#\n# * Anything about the second `import` above. `boot/config` was already loaded\n# by `boot/registry`, so naming it here adds an edge and nothing else: a\n# module imported by several others is compiled once and initialised once.\n#\n# ---------------------------------------------------------------------------\n# What this sample would report as an error\n# ---------------------------------------------------------------------------\n#\n# * A top-level expression that propagates an error with `!`. Initialisation\n# may not fail (rule 4): if it can fail it is not initialisation, it is work,\n# and work belongs in a function the program calls when it is ready to handle\n# the failure. The error names III.5.\n#\n# * An import cycle. `import` forms a DAG (R-1), and a cycle has no order that\n# satisfies rule 1 — each module would have to initialise after the other.\n# The error names the cycle. Adding `import boot/registry` to `boot/config`\n# reports `boot/registry -> boot/config -> boot/registry`, the chain as it\n# was walked, not as it was written.\n#\n# * An `import` inside a `def` — `can't import inside def`, reported by the\n# parser. Inside any other expression the semantic pass reports `can't import\n# dynamically` instead. Rule 1 needs the import graph to be a DAG the\n# compiler can see before it runs anything.\n#\n# ---------------------------------------------------------------------------\n# Not yet implemented\n# ---------------------------------------------------------------------------\n#\n# * A module's initialiser as something an artifact could store. The compiler\n# holds the modules' *nodes* apart from their import sites, which is what\n# rules 1 and 2 needed, but `.iyimod` needs the step after: a callable\n# initialiser in the module's own object code (SPEC.md Part IV).\n", + "samples/iyi/init_order.iyi": "# Module initialisation order: SPEC.md III.5.\n#\n# ./bin/iyi run samples/iyi/init_order.iyi\n#\n# Prints its five lines in the order they are numbered, and the numbering is\n# the whole point — none of it comes from where the `import` directives are\n# written. A module's top-level expressions are its initialiser (rule 3), and\n# a module initialises after every module it imports (rule 1).\n\nmodule samples/init_order\n\n# Written above the imports on purpose, and it still runs after both modules\n# below have initialised. The compiler holds a module's initialiser apart from\n# the site that imported it and puts them in the order the import DAG forces:\n# `boot/config` before `boot/registry` because the second imports the first,\n# and this file last because it imports both.\nputs "4. samples/init_order, above its own `import` lines"\n\nimport boot/registry\nimport boot/config\n\nputs "5. #{Boot::Registry.greeting}"\n\n# ---------------------------------------------------------------------------\n# What this sample does not promise\n# ---------------------------------------------------------------------------\n#\n# * The order of two modules that do not import each other. Rule 2 leaves it\n# unspecified, and output that changes with it is the bug. Nothing here\n# prints from two independent modules, because that would be documenting an\n# order the spec refuses to have — and debug builds do not keep the load\n# order: they take the ready module whose path hashes lowest, the same\n# order on every build. Build with `--release` to get the load order back,\n# or with `IYI_INIT_SEED=1` to see another hashed one.\n#\n# * Anything about the second `import` above. `boot/config` was already loaded\n# by `boot/registry`, so naming it here adds an edge and nothing else: a\n# module imported by several others is compiled once and initialised once.\n#\n# ---------------------------------------------------------------------------\n# What this sample would report as an error\n# ---------------------------------------------------------------------------\n#\n# * A top-level expression that propagates an error with `!`. Initialisation\n# may not fail (rule 4): if it can fail it is not initialisation, it is work,\n# and work belongs in a function the program calls when it is ready to handle\n# the failure. The error names III.5.\n#\n# * An import cycle. `import` forms a DAG (R-1), and a cycle has no order that\n# satisfies rule 1 — each module would have to initialise after the other.\n# The error names the cycle. Adding `import boot/registry` to `boot/config`\n# reports `boot/registry -> boot/config -> boot/registry`, the chain as it\n# was walked, not as it was written.\n#\n# * An `import` inside a `def` — `can't import inside def`, reported by the\n# parser. Inside any other expression the semantic pass reports `can't import\n# dynamically` instead. Rule 1 needs the import graph to be a DAG the\n# compiler can see before it runs anything.\n#\n# ---------------------------------------------------------------------------\n# Not yet implemented\n# ---------------------------------------------------------------------------\n#\n# * A module's initialiser as something an artifact could store. The compiler\n# holds the modules' *nodes* apart from their import sites, which is what\n# rules 1 and 2 needed, but `.iyimod` needs the step after: a callable\n# initialiser in the module's own object code (SPEC.md Part IV).\n", "samples/iyi/inventory.iyi": "# The first program with a struct in it - what a person writes in the second\n# half hour, after `basics`.\n#\n# ./bin/iyi run samples/iyi/inventory.iyi\n#\n# A record type, a list of them, and the questions a list gets asked: which\n# ones, how many, the largest, each with its number, and the same list by\n# name. Like `basics`, this documents no rule. It is here because the prelude\n# grows only when a program in this repository needs something (SPEC.md 0.1.0\n# item 3), and these are the calls the second program makes that the first\n# did not.\nmodule samples/inventory\n\nstruct Item\n property name : String\n property price : Float64\n property quantity : Int32\n\n def initialize(@name : String, @price : Float64, @quantity : Int32)\n end\n\n def total : Float64\n price * quantity\n end\nend\n\nitems = [\n Item.new("apple", 0.5, 10),\n Item.new("pear", 0.75, 4),\n Item.new("melon", 3.0, 1),\n]\n\n# 1. A total, and a subset.\ngrand = 0.0\nitems.each { |item| grand += item.total }\nputs "total: #{grand}" # => total: 11.0\ncheap = items.select { |item| item.price < 1.0 }\nputs "cheap: #{cheap.map(&.name).join(", ")}" # => cheap: apple, pear\n\n# 2. Questions with one answer.\nputs items.count { |item| item.quantity > 1 } # => 2\nputs items.any? { |item| item.price > 2.0 } # => true\nputs items.all? { |item| item.quantity > 0 } # => true\nputs items.max_by { |item| item.price }.name # => melon\nputs items.min_by { |item| item.total }.name # => pear, the first of equals\nif pear = items.find { |item| item.name == "pear" }\n puts pear.total # => 3.0\nend\nputs items.find { |item| item.name == "plum" }.inspect # => nil\n\n# 3. A report, each line numbered.\nitems.each_with_index do |item, index|\n puts "#{index + 1}. #{item.name.ljust(6)} #{item.quantity.to_s.rjust(3)} #{item.total}"\nend\n# => 1. apple 10 5.0\n# => 2. pear 4 3.0\n# => 3. melon 1 3.0\n\n# 4. The same items by name.\nby_name = {} of String => Item\nitems.each { |item| by_name[item.name] = item }\nputs by_name.keys # => ["apple", "pear", "melon"]\nputs by_name.values.map(&.quantity).sum # => 15\nputs by_name.keys.sorted.last # => pear\n", "samples/iyi/io.iyi": "# IO: line-at-a-time reading of standard input.\n#\n# printf "first line\\nsecond line\\nthird line\\n" | ./bin/iyi run samples/iyi/io.iyi\n#\n# Reads standard input line by line through stdin.read_line, demonstrating\n# buffered stream reading.\n\nmodule samples/io\n\nline_number = 0\nwhile line = stdin.read_line(chomp: true)\n line_number = line_number + 1\n puts "#{line_number}: #{line}"\nend\n\nif line_number == 0\n puts "no lines read from standard input"\nelse\n puts "read #{line_number} line(s) from standard input"\nend\n", "samples/iyi/kemal/dsl.iyi": "# Kemal's DSL, ported from `kemal/src/kemal/dsl.cr`.\n#\n# The original's first line is the whole problem: "Kemal DSL is defined here\n# and it's baked into global scope." `require "kemal"` injects `get`, `post`\n# and `before_all` into the importing program's namespace — the same action at\n# a distance as an open class, and also Kemal's entire identity. Making users\n# write `kemal.get "/" do ... end` would be safe and would kill the framework.\n#\n# `import X::{...}` moves the decision to the consumer: the library exports\n# names, and the program says which ones it wants unqualified. See\n# `webapp.iyi`.\nmodule kemal/dsl\n\nimport kemal/router::{Router, Context, IntoBody}\n\nHTTP_METHODS = %w(get post put patch delete options head)\n\n# One application value, in place of `Kemal::RouteHandler::INSTANCE` and the\n# three singletons beside it. `router.cr:270` works around those being global\n# and mutable — "may have been cleared between tests" — and nothing about\n# separate compilation forced that; a clean sheet is just the moment to fix it.\nAPP = Router.new\n\n{% for method in HTTP_METHODS %}\n pub def {{ method.id }}(path : String, &block : Context -> B) : Nil forall B : IntoBody\n APP.{{ method.id }}(path, &block)\n end\n{% end %}\n\npub def before_all(path : String = "*", &block : Context -> B) : Nil forall B : IntoBody\n APP.before(path, &block)\nend\n\npub def after_all(path : String = "*", &block : Context -> B) : Nil forall B : IntoBody\n APP.after(path, &block)\nend\n\npub def mount(path : String, router : Router) : Nil\n APP.mount(path, router)\nend\n\npub def app : Router\n APP\nend\n", @@ -93,6 +94,8 @@ "records/break/r3_unmet_trait_bound.iyi": "# Breaks R-3 from the calling side: a type's method set is closed, so a bound\n# on a type parameter is a question with a definite answer at the call. `Int32`\n# has no `impl Greet` and cannot acquire one later, so the call is refused as a\n# missing trait rather than as a failed overload match.\nmodule diagnostics/r3_unmet_trait_bound\n\npub trait Greet\n abstract def greet : String\nend\n\npub struct User\n getter name : String\n\n def initialize(@name : String)\n end\nend\n\nimpl Greet for User\n def greet : String\n "Hello, #{name}."\n end\nend\n\npub def announce(item : T) : String forall T : Greet\n "-> #{item.greet}"\nend\n\nputs announce(User.new("iyi"))\nputs announce(42)\n", "records/break/r4_dictionary.iyi": "# Breaks R-4 by asking for the one clause of it that has nothing behind it.\n#\n# R-4's third sentence says `@[Monomorphize]` forces specialisation across a\n# module boundary. SPEC.md III.9 records what that is worth today: nothing in\n# the compiler mentions the annotation, a dictionary or a GC shape. So this is\n# not a feature that misbehaves, it is a name the compiler has never heard,\n# and the rejection below is a compiler declining to accept a promise it\n# cannot keep rather than compiling the program as though the rule were built.\n#\n# What runs instead of the dictionary is the rule's second sentence applied\n# everywhere: a generic's body travels in the artifact and every consumer\n# compiles it again for the types it uses. `bench/generic_boundary.py` is the\n# measurement of what that costs a consumer's front end.\nmodule diagnostics/r4_dictionary\n\n@[Monomorphize]\npub def twice(x : T) : Array(T) forall T\n [x, x]\nend\n\nputs twice(1).size\n", "records/break/r5_global_question.iyi": "# Breaks R-5: a macro sees the declaration it is attached to, and nothing\n# global. Everything here is legal. `Point` is this module's own type, the\n# derive is written inside its body where a derive belongs, and `counted`\n# is a name this file imports from another module, which is the only way a\n# derive macro can arrive. What is refused is the one question the macro asks:\n# `all_subclasses` answers with the whole program rather than with this\n# declaration, so the answer would depend on what else was compiled and the\n# methods it generated could not travel in this module's artifact.\n#\n# The refusal lands at expansion, in the consumer's build, which is where the\n# macro runs. `dep/global_derive.iyi` is the macro (SPEC.md R-5, II.4).\nmodule diagnostics/r5_global_question\n\nimport dep/global_derive::*\n\npub struct Point\n @x : Int32\n\n def initialize(@x : Int32)\n end\n\n derive counted\nend\n\nputs Point.new(1).counted\n", + "records/break/share_reach.iyi": "# Breaks III.4.4's reach check: the block names nothing unshareable, but\n# `greeting`, which it calls, reads `GREETING`, an `Array` any worker could\n# reach while another changes it. The compiler walks the calls from the\n# block and warns at the block, by the shortest path. A warning, so the\n# build is asked to fail on one: `--error-on-warnings`, as CI would.\n# `@[SafeReach("...")]` on the constant, saying why it is safe, quiets it.\nmodule diagnostics/share_reach\n\nimport std/http::{Response, Server}\nimport std/socket::{IyiSocket}\n\nGREETING = ["hello", "from", "every", "core"]\n\ndef greeting : String\n GREETING.join(" ")\nend\n\nlistener = IyiSocket.listen("127.0.0.1", 0)\nServer.serve(listener) do |req|\n Response.new(200, greeting)\nend\n", + "records/break/share_serve_capture.iyi": "# Breaks III.4.4 as III.4.13 applies it: `Server.serve` runs each connection\n# on the pool's workers, so its block is checked as `spawn_parallel`'s is,\n# and every value it captures must be `Share`. An `Array` is not: two\n# workers appending at once would race its size. Everything else here is\n# legal, and the refusal names both ways out - the array behind a `Mutex`,\n# or `workers: 1`, which keeps the server on one thread.\nmodule diagnostics/share_serve_capture\n\nimport std/http::{Response, Server}\nimport std/socket::{IyiSocket}\n\nseen = [] of String\nlistener = IyiSocket.listen("127.0.0.1", 0)\nServer.serve(listener) do |req|\n seen << req.path\n Response.new(200, "ok")\nend\n", "records/agent/app/greeter.iyi": "# The dependency. Its exported surface is the whole of what a consumer, or an\n# agent editing one, is allowed to know: two functions with their types\n# written down, and a trait. `greeting` has no `pub`, so it is this module's\n# own business and appears in no consumer's grounding (SPEC.md R-1, IV.2).\nmodule app/greeter\n\npub trait Greet\n abstract def greet : String\nend\n\n# The exported surface carries its doc comment, so the grounding pack an agent\n# reads says what the function is for and not only what it takes.\npub def polite(name : String) : String\n "#{greeting}, #{name}."\nend\n\npub def shout(name : String) : String\n "#{greeting.upcase}, #{name.upcase}!"\nend\n\ndef greeting : String\n "Hello"\nend\n", "records/agent/app.iyi": "# The file being edited, in the state an agent meets it: one call misspelled.\n# The compiler knows the name it meant, so `iyi check -f json` carries a\n# `suggested_edit` with the exact replacement span and `iyi fix` applies it.\nmodule app\n\nimport app/greeter::*\n\npub def main : Int32\n puts polit("Türkiye")\n 0\nend\n", "records/agent/app_test.iyi": "# A test is a plain program that exits non-zero when it fails; the prelude's\n# `assert` is that in one word. No framework, so nothing here has to be\n# learned before it can be read.\nmodule app/app_test\n\nimport app/greeter::*\n\nassert polite("iyi") == "Hello, iyi.", "polite greets"\nassert shout("iyi") == "HELLO, IYI!", "shout shouts"\n", diff --git a/records/stdlib.json b/records/stdlib.json index 70324cd..41d10b5 100644 --- a/records/stdlib.json +++ b/records/stdlib.json @@ -1,16 +1,22 @@ { "recorded": { - "compiler": "iyi 0.18.0 (built on Crystal 1.22.0-dev [2a96530] (2026-10-18))", - "commit": "2a9653052ab76f9d8084da47e059273f6ef45228", - "machine": "Windows_NT 10.0.26200 x64, AMD Ryzen AI 9 465 w/ Radeon 880M", + "compiler": "iyi 0.20.0 (built on Crystal 1.22.0-dev [224ed74fc] (2026-11-02))", + "commit": "224ed74fc7ba9d78345dfd10f21ece4b499702fa", + "machine": "Linux 7.0.0-38-generic x64, QEMU Virtual CPU version 2.5+", "command": "npm run record:stdlib", - "when": "2026-10-21T13:45:42.974Z" + "when": "2026-11-02T07:19:39.580Z" }, "modules": [ + { + "name": "std/acme", + "path": "src/std/acme.iyi", + "sourceSha256": "3182946f098dcd1fcc2e03165324b06abc43d96ddd45a34d8b13c36df821ed19", + "surface": "module std/acme\n\n# An authorization (section 7.1.4): the identifier, its status, and the\n# challenges by which it can be proved.\npub struct AcmeAuthorization\n # The challenge of *kind* offered, or why there is none.\n def challenge(kind : String) : AcmeChallenge | AcmeError\n def challenges : Array(AcmeChallenge)\n def self.from(url : String, object : Hash(String, Any)) : AcmeAuthorization | AcmeError\n def identifier : String\n def initialize(url : String, identifier : String, status : String, wildcard : Bool, challenges : Array(AcmeChallenge))\n def status : String\n def url : String\n def wildcard : Bool\nend\n\n# A challenge (section 8): its type (`http-01`, `dns-01`, `tls-alpn-01`),\n# where to answer it, its token, and its status, with the problem that\n# made it invalid.\npub struct AcmeChallenge\n def error : AcmeError | ::Nil\n def self.from(object : Hash(String, Any)) : AcmeChallenge | AcmeError\n def initialize(kind : String, url : String, token : String, status : String, error : AcmeError | ::Nil)\n def kind : String\n def status : String\n def token : String\n def url : String\nend\n\n# A session with an ACME server under one account key.\npub class AcmeClient\n protected def account=(url : String | ::Nil) : String | ::Nil\n # The account's URL, the `kid` every request after newAccount carries.\n def account_url : String | ::Nil\n # The authorization at *url*, read (POST-as-GET).\n def authorization(url : String) : AcmeAuthorization | AcmeError\n # `badNonce` answers sent again, over this session.\n def bad_nonce_retries : Int32\n # The certificate chain of a valid *order*, PEM, leaf first (section\n # 7.4.2): every block std/x509 reads, or why one does not read.\n def certificate(order : AcmeOrder) : String | AcmeError\n # How long to wait, in milliseconds, before polling again, as\n # *retry_after* - a Retry-After value - says (RFC 9110 section 10.2.3:\n # seconds, or an HTTP-date, judged against *now*), or *fallback_ms*\n # when there is none or it is neither. A date already past is no wait.\n def self.delay(retry_after : String | ::Nil, fallback_ms : Int32, now : Time) : Int64\n def directory : AcmeDirectory\n # The name dns-01's TXT record is put under for *domain*: a wildcard's\n # base domain, with `_acme-challenge.` before it.\n def self.dns_name(domain : String) : String\n # The dns-01 TXT record's value for *token* (section 8.4).\n def dns_txt(token : String) : String\n # One HTTP exchange, its answer read whole up to `MAX_BODY`; nothing\n # sent to a URL that is not `https://`.\n protected def self.exchange(method : String, url : String, body : String, accept : String | ::Nil, timeout_ms : Int32) : AcmeResponse | AcmeError\n # The order finalized with a certificate request for its names that\n # *key* signs (section 7.4): polled until its authorizations make it\n # ready, finalized, and polled until it is valid, with the certificate's\n # URL; or the error that made it invalid.\n def finalize(order : AcmeOrder, key : SigningKey) : AcmeOrder | AcmeError\n # Nil when *url* is an `https://` URL with a host, else the error that\n # refuses it as *what*: RFC 8555 section 6.1 requires HTTPS of every\n # ACME request, and anything else is plaintext an attacker on the path\n # can answer as the CA.\n def self.https(url : String, what : String) : AcmeError | ::Nil\n def initialize(directory_url : String, key : SigningKey, directory : AcmeDirectory, timeout_ms : Int32)\n def key : SigningKey\n # *token*'s key authorization (section 8.1): `token.thumbprint`.\n def key_authorization(token : String) : String\n # The most polls one wait makes, and the most milliseconds it takes.\n def max_polls : Int32\n # The most polls one wait makes, and the most milliseconds it takes.\n def max_polls=(value : Int32) : Int32\n # A session with the server whose directory is at *url*, signing with\n # *key*: the directory read, or why it could not be. *account_url*, an\n # account `register` answered before, is the `kid` from the start, so a\n # session that kept it need not register again. Both are `https://`.\n def self.new(url : String, key : SigningKey, timeout_ms : Int32 = 30000, account_url : String | ::Nil = nil) : AcmeClient | AcmeError\n # A new order for *names*, DNS identifiers (section 7.4).\n def new_order(names : Array(String)) : AcmeOrder | AcmeError\n # The order at *url*, read (POST-as-GET).\n def order(url : String) : AcmeOrder | AcmeError\n # How long to wait between polls when an answer has no Retry-After.\n def poll_ms : Int32\n # How long to wait between polls when an answer has no Retry-After.\n def poll_ms=(value : Int32) : Int32\n # The account for this key, made if there is none (section 7.3) - with\n # *contact*'s URLs (`mailto:`), the terms agreed to when\n # *terms_agreed* - or only found when *only_existing*: its URL, which\n # every request after this carries as `kid`.\n def register(contact : Array(String) = [] of String, terms_agreed : Bool = false, only_existing : Bool = false) : String | AcmeError\n # Tells the server *challenge* is ready to be checked (section 7.5.1):\n # its URL posted `{}`. Put the answer in place first.\n def respond(challenge : AcmeChallenge) : AcmeChallenge | AcmeError\n # The account moved to *new_key* (section 7.3.5): keyChange's inner JWS\n # signed by the new key, carrying its `jwk`, inside one the old key\n # signs as the account.\n def roll_key(new_key : SigningKey) : Nil | AcmeError\n # The account key's JWK thumbprint (RFC 7638), SHA-256 and base64url.\n def thumbprint : String\n # Each HTTP exchange's connect, and each read and write in it.\n def timeout_ms : Int32\n # Each HTTP exchange's connect, and each read and write in it.\n def timeout_ms=(value : Int32) : Int32\n # The authorization at *url* polled until it is no longer pending: the\n # valid authorization, or the error that made it something else.\n def wait_authorization(url : String) : AcmeAuthorization | AcmeError\n def wait_ms : Int32\n def wait_ms=(value : Int32) : Int32\nend\n\n# The directory's URLs (section 7.1.1).\npub struct AcmeDirectory\n def external_account_required : Bool\n def initialize(new_nonce : String, new_account : String, new_order : String, key_change : String | ::Nil, revoke_cert : String | ::Nil, terms_of_service : String | ::Nil, external_account_required : Bool)\n def key_change : String | ::Nil\n def new_account : String\n def new_nonce : String\n def new_order : String\n def self.parse(text : String) : AcmeDirectory | AcmeError\n def revoke_cert : String | ::Nil\n def terms_of_service : String | ::Nil\nend\n\n# What a request answered that it should not have, or could not do: a\n# problem document's `type` and `detail` (RFC 7807), or, with\n# `problem_type` empty, what failed beneath ACME.\npub struct AcmeError\n def detail : String\n # The identifier a subproblem is about (section 6.7.1), \"\" otherwise.\n def identifier : String\n def initialize(detail : String, problem_type : String = \"\", status : Int32 = 0, identifier : String = \"\", subproblems : Array(AcmeError) = [] of AcmeError)\n # Whether this came from a problem document.\n def problem? : Bool\n def problem_type : String\n # The HTTP status the problem came with; 0 when there was no answer.\n def status : Int32\n def subproblems : Array(AcmeError)\n def to_s : String\nend\n\n# http-01's answers (section 8.3), by token, for a std/http server: GET\n# `/.well-known/acme-challenge/` is answered with the token's key\n# authorization, a token not held with 404, any other path with nil - the\n# server's own to answer.\n#\n# responder = AcmeHttp01.new\n# Server.serve(listener, workers: 1) { |request| responder.answer(request) || app(request) }\n#\n# The table of answers is written as orders run, so it is one thread's:\n# the server that answers from it serves on that thread (`workers: 1`).\npub class AcmeHttp01\n def add(token : String, key_authorization : String) : Nil\n def answer(request : Request) : Response | ::Nil\n def initialize\n def remove(token : String) : Nil\nend\n\n# JWS (RFC 7515) as ACME signs it: the flattened JSON serialization, the\n# account's key as RFC 7638's canonical JWK, and the signature in the\n# form JWA (RFC 7518) gives each algorithm.\npub struct AcmeJws\n # The JWS algorithm *key* signs under: ES256, ES384, RS256 or EdDSA.\n def self.alg(key : SigningKey) : String\n # *data* in base64url without padding (RFC 7515 section 2).\n def self.b64u(data : String | Array(UInt8)) : String\n def self.bytes(text : String) : Array(UInt8)\n # The protected header: `alg`, then `jwk` when *kid* is nil and `kid`\n # when it is not, `nonce` when there is one, and `url`.\n def self.header(key : SigningKey, nonce : String | ::Nil, url : String, kid : String | ::Nil) : String\n def initialize\n # *key* as a JWK holding its required members alone, sorted, without\n # whitespace (RFC 7638 section 3): the text its thumbprint is taken of,\n # and the `jwk` a request carries.\n def self.jwk(key : RsaPublicKey | EcdsaPublicKey | Ed25519PublicKey) : String\n # A big-endian number without its leading zero bytes, as JWA writes\n # one (RFC 7518 section 6.3.1).\n def self.minimal(bytes : Array(UInt8)) : Array(UInt8)\n # An Ecdsa-Sig-Value's DER as R || S, each *size* bytes.\n def self.raw(der : Array(UInt8), size : Int32) : Array(UInt8)\n # The flattened JSON serialization (RFC 7515 section 7.2.2) of *payload*\n # - nil for the empty payload of POST-as-GET - under *header*.\n def self.sign(key : SigningKey, header : String, payload : String | ::Nil) : String\n # *key*'s JWS signature of *input*: R || S for ECDSA, each at the\n # curve's width (RFC 7518 section 3.4), where std/p256 and std/p384 sign\n # in X.509's DER; RSA's and Ed25519's as they are.\n def self.signature(key : SigningKey, input : Array(UInt8)) : Array(UInt8)\n # *key*'s JWK thumbprint (RFC 7638): base64url of the SHA-256 of `jwk`.\n def self.thumbprint(key : RsaPublicKey | EcdsaPublicKey | Ed25519PublicKey) : String\nend\n\n# An order (section 7.1.3): its URL, status, names, the authorizations to\n# prove, where to finalize it, and, once it is valid, its certificate.\npub struct AcmeOrder\n def authorizations : Array(String)\n def certificate_url : String | ::Nil\n def error : AcmeError | ::Nil\n def finalize_url : String\n def self.from(url : String, object : Hash(String, Any)) : AcmeOrder | AcmeError\n def identifiers : Array(String)\n def initialize(url : String, status : String, identifiers : Array(String), authorizations : Array(String), finalize_url : String, certificate_url : String | ::Nil, error : AcmeError | ::Nil)\n def status : String\n def url : String\nend\n\n# tls-alpn-01 (RFC 8737): the certificate a TLS server shows to a client\n# whose ALPN offers `acme-tls/1`, and a std/tls config that shows it.\npub struct AcmeTlsAlpn01\n # The self-signed certificate for *domain* (section 3): its one dNSName\n # *domain*, and the critical acmeIdentifier extension, an OCTET STRING\n # of the SHA-256 of *key_authorization*; signed by *key*, valid from a\n # day before *now* to a week after. A *domain* past 64 characters is\n # refused, as std/x509 refuses its common name.\n def self.certificate(domain : String, key_authorization : String, key : SigningKey, now : Time = Time.utc) : Array(UInt8) | AcmeError\n # A std/tls server config that shows `certificate` for *domain*, under a\n # P-256 key made for it, and speaks `acme-tls/1` alone by ALPN.\n def self.config(domain : String, key_authorization : String) : TlsServerConfig | AcmeError\n def initialize\nend\n\nimpl Error for AcmeError\n def message : String\nend\n" + }, { "name": "std/aead", "path": "src/std/aead.iyi", - "sourceSha256": "cab5d3927d0d986de337812219eb2c30766d1814d11f99510cf1f8c5df445b8c", + "sourceSha256": "6b1bdaac65733c8d4b3cd6630ddc53535b7196378b048ebdaf7dcea1f75535a1", "surface": "module std/aead\n\n# The AES block cipher, FIPS 197: a 16, 24 or 32-byte key (10, 12 or 14\n# rounds), one 16-byte block at a time, either way. On its own it is a\n# building block; a message wants a mode, `AesGcm`.\npub class AES\n # FIPS 197's InvCipher: the block `encrypt_block` answered, back.\n def decrypt_block(block : String | Array(UInt8)) : String\n # FIPS 197's Cipher: 16 bytes in, 16 out.\n def encrypt_block(block : String | Array(UInt8)) : String\n def initialize(key : String | Array(UInt8))\nend\n\n# What `open` answers for sealed bytes it will not open: shorter than a\n# tag, or whose tag does not match.\npub struct AeadError\n def initialize(message : String)\n def to_s : String\nend\n\n# AES in Galois/Counter Mode, NIST SP 800-38D: CTR encryption from the\n# counter after the nonce's own, and a 128-bit tag that is GHASH over the\n# additional data and the ciphertext, each padded to a block, and their\n# lengths in bits, XORed with the key stream of the nonce's counter\n# block. The nonce is 12 bytes, and the counter block is it and a 32-bit\n# counter that starts at 1 (§7.1).\npub class AesGcm\n def initialize(key : String | Array(UInt8))\n # The plaintext *sealed* came from, when its tag is the one this key,\n # *nonce* and *aad* give; else an `AeadError`, and nothing decrypted.\n def open(nonce : String | Array(UInt8), sealed : String | Array(UInt8), aad : String | Array(UInt8) = \"\") : String | AeadError\n # The ciphertext of *plaintext*, as long as it, and the 16-byte tag.\n def seal(nonce : String | Array(UInt8), plaintext : String | Array(UInt8), aad : String | Array(UInt8) = \"\") : String\nend\n\n# The ChaCha20 stream cipher, RFC 8439 §2.4: a 32-byte key, a 12-byte\n# nonce and a 32-bit block counter, which starts at *counter*. `xor`\n# answers its data XORed with the key stream and carries on from where\n# it stopped, so a message XORed in pieces is the message XORed whole;\n# the same call decrypts. The counter is the RFC's 32 bits, 256 GiB of\n# key stream; a stream run past block 2^32 - 1 is refused rather than\n# wrapped onto key stream already used.\npub class ChaCha20\n def initialize(key : String | Array(UInt8), nonce : String | Array(UInt8), counter : UInt32 = 0_u32)\n # *count* bytes from *src* to *dst*, which may be the same bytes.\n def xor(src : Pointer(UInt8), dst : Pointer(UInt8), count : Int32) : Nil\n def xor(data : String | Array(UInt8)) : String\nend\n\n# ChaCha20 and Poly1305 as an AEAD, RFC 8439 §2.8: the Poly1305 key is\n# the first 32 bytes of block 0's key stream, the plaintext is encrypted\n# from block 1, and the tag covers the additional data and the\n# ciphertext, each padded with zeros to 16 bytes, then their lengths as\n# 64-bit little-endian numbers.\npub class ChaCha20Poly1305\n def initialize(key : String | Array(UInt8))\n # The plaintext *sealed* came from, when its tag is the one this key,\n # *nonce* and *aad* give; else an `AeadError`, and nothing decrypted.\n def open(nonce : String | Array(UInt8), sealed : String | Array(UInt8), aad : String | Array(UInt8) = \"\") : String | AeadError\n # The ciphertext of *plaintext*, as long as it, and the 16-byte tag.\n def seal(nonce : String | Array(UInt8), plaintext : String | Array(UInt8), aad : String | Array(UInt8) = \"\") : String\nend\n\n# Poly1305, RFC 8439 §2.5: a 16-byte MAC under a 32-byte one-time key, r\n# (clamped) and s. One key authenticates one message: a second message\n# under it lets whoever sees both tags forge a third, which is why the\n# AEAD derives a fresh key from each nonce, and why there is no `reset`.\n# `Poly1305.mac(key, data)` is one piece; `new`, `update` as the message\n# arrives, `final` once is the same in pieces. A tag someone sent is\n# compared with std/crypto's `Subtle.constant_time_compare`, not `==`.\npub class Poly1305\n # The 16-byte tag. A last block shorter than 16 bytes carries its own\n # 1 bit after its bytes (§2.5.1), rather than the 2^128 of a whole one.\n def final : String\n def initialize(key : String | Array(UInt8))\n def self.mac(key : String | Array(UInt8), data : String | Array(UInt8)) : String\n def update(data : Pointer(UInt8), count : Int32) : self\n def update(data : String | Array(UInt8)) : self\nend\n\nimpl Error for AeadError\n def message : String\nend\n" }, { @@ -22,7 +28,7 @@ { "name": "std/asn1", "path": "src/std/asn1.iyi", - "sourceSha256": "7075c10aad9a3588994e26f1624a685fc0b61b4010d11fe0d8ac5dfc30981bda", + "sourceSha256": "d8a5c75bdde73037027287b62ecc89ffc83595fdee77713cfce3d451f46645e4", "surface": "module std/asn1\n\n# What `Der.parse`, `children` and the typed readers answer for bytes that\n# are not the DER they were asked for: a sentence, and the offset in the\n# bytes `Der.parse` was given where the trouble is.\npub struct Asn1Error\n def initialize(message : String, offset : Int32)\n def offset : Int32\n def to_s : String\nend\n\npub struct Der\n def initialize\n # The one value *bytes* hold, and nothing after it.\n def self.parse(bytes : Array(UInt8)) : DerValue | Asn1Error\n # Every value under *value*, *value* first, in the order they are\n # written, each with its depth below it: the whole tree read and every\n # length and tag checked. Primitive contents are not decoded; that is\n # the typed readers' job, asked of the values a schema names.\n def self.walk(value : DerValue, & : (DerValue, Int32 -> Nil)) : Nil | Asn1Error\nend\n\n# The two bits at the top of an identifier byte.\npub enum DerClass : Int32\n Universal = 0\n Application = 1\n ContextSpecific = 2\n Private = 3\nend\n\n# The universal tag numbers this module reads (X.680 section 8.6).\npub struct DerTag\n def initialize\nend\n\n# One value: its identifier, and where its header and content are in the\n# bytes it was read from.\npub struct DerValue\n # A BIT STRING whose bits fill whole bytes: a key, a signature.\n def bit_string : Array(UInt8) | Asn1Error\n # A BIT STRING's bytes and how many bits at the end of the last are not\n # part of it, which DER sets to zero: a flags field such as keyUsage.\n def bit_string_bits : ::Tuple(Array(UInt8), Int32) | Asn1Error\n def boolean : Bool | Asn1Error\n # The values a constructed value holds, read one level down.\n def children : Array(DerValue) | Asn1Error\n def constructed? : Bool\n # The content bytes, copied.\n def content : Array(UInt8)\n # The offset of the first content byte, and of the byte after the value.\n def content_offset : Int32\n def content_size : Int32\n def context?(tag : Int32) : Bool\n # The identifier, said the way an error names it: `INTEGER`,\n # `[0] constructed`, `APPLICATION 3`.\n def describe : String\n def end_offset : Int32\n # An ENUMERATED that fits an Int64: a CRL entry's reason code, an\n # OCSP response's status.\n def enumerated : Int64 | Asn1Error\n # An ENUMERATED's two's-complement bytes, held to INTEGER's rules.\n def enumerated_bytes : Array(UInt8) | Asn1Error\n # The one value inside an explicit context tag `[n]`, as X.509 writes a\n # certificate's version and extensions.\n def explicit(tag : Int32) : DerValue | Asn1Error\n def header_size : Int32\n def initialize(data : Array(UInt8), tag_class : DerClass, constructed : Bool, tag : Int32, offset : Int32, header_size : Int32, content_size : Int32)\n # An INTEGER that fits an Int64.\n def integer : Int64 | Asn1Error\n # An INTEGER's two's-complement bytes, as written: checked to be the\n # fewest that hold it. Only an INTEGER: an ENUMERATED is written the same\n # way under another tag, and reading one here took an Ecdsa-Sig-Value\n # whose r or s was tagged ENUMERATED - a signature no DER reader accepts.\n def integer_bytes : Array(UInt8) | Asn1Error\n def null : Nil | Asn1Error\n def octet_string : Array(UInt8) | Asn1Error\n def offset : Int32\n # An OBJECT IDENTIFIER in dotted form, `\"2.5.4.3\"`. A subidentifier past\n # an Int64 is refused: no algorithm or attribute is one.\n def oid : String | Asn1Error\n # The whole value as it was written, header included: what a signature\n # over a certificate's `tbsCertificate` is computed on.\n def raw : Array(UInt8)\n # One value's header at *at*, its content within *stop*.\n def self.read(data : Array(UInt8), at : Int32, stop : Int32) : DerValue | Asn1Error\n # A SEQUENCE's elements: `children`, after checking it is one.\n def sequence : Array(DerValue) | Asn1Error\n # A SET's elements.\n def set : Array(DerValue) | Asn1Error\n # Any of the string types X.509 names are written in, as UTF-8.\n def string : String | Asn1Error\n def tag : Int32\n def tag_class : DerClass\n # A UTCTime or a GeneralizedTime, in the one form DER writes each.\n def time : Time | Asn1Error\n def universal?(tag : Int32) : Bool\n def self.universal_name(tag : Int32) : String\n # A non-negative INTEGER's magnitude, big-endian, without the 0x00 a\n # high bit makes DER write: an RSA modulus, a serial number. A negative\n # one is refused.\n def unsigned_integer : Array(UInt8) | Asn1Error\nend\n\nimpl Error for Asn1Error\n def message : String\nend\n" }, { @@ -31,6 +37,12 @@ "sourceSha256": "3d1c544d3770dfa4b48136cda61ea466fc8ce6ea670fbe91b370f8ff21eda336", "surface": "module std/atomic\n\nstruct ::Atomic(T)\n def add_acq_rel(value : T) : T\n def add_acquire(value : T) : T\n def add_relaxed(value : T) : T\n def add_release(value : T) : T\n # `word &= value`; answers what the word held before.\n def and(value : T) : T\n # `word |= value`; answers what the word held before.\n def bitwise_or(value : T) : T\n def compare_and_set_acq_rel(expected : T, desired : T) : Tuple(T, Bool)\n def compare_and_set_acquire(expected : T, desired : T) : Tuple(T, Bool)\n # `compare_and_set` at each weaker ordering: if the word holds\n # `expected` it now holds `desired`; answers what the word held and\n # whether the exchange happened.\n def compare_and_set_relaxed(expected : T, desired : T) : Tuple(T, Bool)\n def compare_and_set_release(expected : T, desired : T) : Tuple(T, Bool)\n # A full fence: nothing crosses it in either direction.\n def self.fence : Nil\n # Both halves, without the total order of `fence`.\n def self.fence_acq_rel : Nil\n # Nothing after this fence moves before it.\n def self.fence_acquire : Nil\n # Nothing before this fence moves after it.\n def self.fence_release : Nil\n # The word, read once; nothing after the read moves before it.\n def get_acquire : T\n # The word, read once, atomic and nothing more.\n def get_relaxed : T\n # `word = max(word, value)`, signed or unsigned as `T` is; answers what\n # the word held before.\n def max(value : T) : T\n # `word = min(word, value)`, signed or unsigned as `T` is; answers what\n # the word held before.\n def min(value : T) : T\n # `word = ~(word & value)`; answers what the word held before.\n def nand(value : T) : T\n # The word, written once, atomic and nothing more.\n def set_relaxed(value : T) : Nil\n # The word, written once; nothing before the write moves after it.\n def set_release(value : T) : Nil\n def sub_acq_rel(value : T) : T\n def sub_acquire(value : T) : T\n def sub_relaxed(value : T) : T\n def sub_release(value : T) : T\n def swap_acq_rel(value : T) : T\n def swap_acquire(value : T) : T\n def swap_relaxed(value : T) : T\n def swap_release(value : T) : T\n # `word ^= value`; answers what the word held before.\n def xor(value : T) : T\nend\n\nstruct ::IyiAtomic\n def self.fence(ordering : Symbol, singlethread : Bool) : Nil\nend\n" }, + { + "name": "std/autocert", + "path": "src/std/autocert.iyi", + "sourceSha256": "7342edc6a46dfb8bf30eaed23fc23d7b9fed3ecbd477ea88dadbe157a94e755e", + "surface": "module std/autocert\n\n# Where a manager keeps its account key and its certificates: text by\n# key, nil for a key not held. Every value it is given holds a private\n# key.\npub trait AutocertCache\n abstract def delete(key : String) : AutocertError | ::Nil\n abstract def get(key : String) : String | AutocertError | Nil\n abstract def put(key : String, data : String) : AutocertError | ::Nil\nend\n\n# A cache in a directory: an entry a file named by its key. The directory\n# is made, 0700, the first time it is written to where it is not there;\n# an entry is written to a file of its own in it, created 0600 (the\n# umask may take more away, never less), then renamed over the old one.\npub class AutocertDirCache\n def dir : String\n def initialize(dir : String)\nend\n\n# Why a certificate could not be had, or the cache not read or written.\npub struct AutocertError\n def detail : String\n def initialize(detail : String)\n def to_s : String\nend\n\n# A certificate a manager holds for a name: the identity handshakes are\n# shown, its dates, and when renewal is next tried.\npub class AutocertHeld\n # Whether a handshake at *now_ms* may be shown it.\n def current?(now_ms : Int64) : Bool\n def failures : Int32\n def failures=(value : Int32) : Int32\n def identity : TlsIdentity\n def initialize(identity : TlsIdentity, renew_at_ms : Int64)\n def not_after_ms : Int64\n def not_before_ms : Int64\n # When renewal is next tried: its due time, later after failures.\n def renew_at_ms : Int64\n # When renewal is next tried: its due time, later after failures.\n def renew_at_ms=(value : Int64) : Int64\nend\n\n# Gets, keeps and renews certificates for a server's names from an ACME\n# CA, and shows them to std/tls handshakes by server_name.\npub class AutocertManager\n # Whether the CA's terms of service are agreed to when the account is\n # made: a CA that has terms refuses an account without.\n def accept_terms : Bool\n # Whether the CA's terms of service are agreed to when the account is\n # made: a CA that has terms refuses an account without.\n def accept_terms=(value : Bool) : Bool\n # Puts up the answers to *name*'s challenge: tls-alpn-01's certificate\n # for *key_authorization*, shown under `acme-tls/1`, and http-01's\n # answer for *token* (`answer`). An order puts them up while the CA\n # checks; a program answering a challenge of its own can too.\n def add_challenge(name : String, token : String, key_authorization : String) : AutocertError | ::Nil\n # http-01's answer to a request on port 80\n # (`/.well-known/acme-challenge/`), or nil for any other path:\n # `Server.serve(listener, workers: 1) { |r| manager.answer(r) || ... }`,\n # on one thread, since the manager's state is that thread's.\n def answer(request : Request) : Response | ::Nil\n def cache : AutocertCache\n # The certificate for *name*, normalized as `normalize` does: the one\n # held while it is current; else one the cache holds for it, or a new\n # one from the CA - by one order however many ask at once, waited for\n # *left_ms* at most when it is given - unless the host policy refuses\n # the name or its last order failed too recently.\n def certificate(name : String, left_ms : Int32 | ::Nil = nil) : AutocertHeld | AutocertError\n # The challenges offered, in the order tried.\n def challenges : Array(String)\n # The challenges offered, in the order tried.\n def challenges=(value : Array(String)) : Array(String)\n def directory_url : String\n # The account's contact address, without `mailto:`; none when empty.\n def email : String\n # The account's contact address, without `mailto:`; none when empty.\n def email=(value : String) : String\n # *config* - `tls_config`'s, or one the program got from it and set\n # more of, a `min_version` or `groups` - frozen for std/http's\n # `Server.serve(tls:)` on more than one worker: its identity source\n # runs on every worker, answers what this manager holds there, and\n # asks `run` for the rest (the header says how). `run` must run while\n # it serves.\n def frozen_tls_config(config : TlsServerConfig = tls_config) : TlsFrozenServerConfig\n # Whether a name may have a certificate; asked before the cache or the\n # CA. The names given to `new` and no other, unless replaced.\n def host_policy : Proc(String, Bool)\n # Whether a name may have a certificate; asked before the cache or the\n # CA. The names given to `new` and no other, unless replaced.\n def host_policy=(value : Proc(String, Bool)) : Proc(String, Bool)\n # The identity a handshake for *server_name*, offering *alpn*, is shown:\n # tls-alpn-01's certificate to a client offering `acme-tls/1` alone, the\n # name's certificate - got now if it must be, waiting *left_ms* at most\n # - to any other; or why there is none, as the error the handshake is\n # refused with: unrecognized_name for a name not answered for,\n # internal_error for one whose certificate could not be had in time.\n def identity_for(server_name : String | ::Nil, alpn : Array(String) | ::Nil, left_ms : Int32 | ::Nil = nil) : TlsIdentity | TlsError\n # A manager for the CA whose directory is at *directory_url*, keeping\n # its keys and certificates in *cache*, that answers for *hosts* alone.\n def initialize(directory_url : String, cache : AutocertCache, hosts : Array(String))\n # *host* as a server_name is compared: IDNA's A-labels for a Unicode\n # name, no trailing dot, lower case. A name IDNA refuses is compared as\n # it is written.\n def self.normalize(host : String) : String\n # Certificates ordered, and renewed, by this manager.\n def orders : Int32\n def remove_challenge(name : String, token : String) : Nil\n # How long before expiry a certificate is renewed.\n def renew_before : Span\n # How long before expiry a certificate is renewed.\n def renew_before=(value : Span) : Span\n # When a certificate valid from *not_before_ms* to *not_after_ms* is\n # due for renewal: `renew_before` ahead of its end, or two thirds into\n # a life no longer than `renew_before`.\n def renew_time(not_before_ms : Int64, not_after_ms : Int64) : Int64\n def renewals : Int32\n # How long a failed order is remembered, and a failed renewal put off;\n # doubled for each failure after, to `MAX_RETRY_MS`.\n def retry_ms : Int32\n # How long a failed order is remembered, and a failed renewal put off;\n # doubled for each failure after, to `MAX_RETRY_MS`.\n def retry_ms=(value : Int32) : Int32\n # The roots a chain the CA issues, or the cache holds, must reach to be\n # kept and shown: the system's when nil.\n def roots : Array(Certificate) | ::Nil\n # The roots a chain the CA issues, or the cache holds, must reach to be\n # kept and shown: the system's when nil.\n def roots=(value : Array(Certificate) | ::Nil) : Array(Certificate) | ::Nil\n # Renews certificates as they come due, until `stop`: run it in a task\n # of a group that lives as long as the server. Each held certificate is\n # looked at when it is due and whenever one is added; a renewal that\n # fails is tried again `retry_ms` later, doubling to an hour. While it\n # runs, the orders handshakes ask for run in its group too, so that one\n # outlives the handshake that asked; `stop` cancels those still running.\n # It answers a `frozen_tls_config`'s workers too, each ask in a task of\n # its group.\n def run : Nil\n # Ends `run`.\n def stop : Nil\n # A std/tls server config that shows this manager's certificates, and\n # speaks *alpn*'s protocols with `acme-tls/1` after them. Its own\n # `identity` is a self-signed certificate for `autocert.invalid` that\n # no handshake is shown: the manager answers each one itself.\n def tls_config(alpn : Array(String) = [\"http/1.1\"]) : TlsServerConfig\n # The longest a handshake waits for an order - less when its deadline\n # is nearer - and an order for the CA's polls.\n def wait_ms : Int32\n # The longest a handshake waits for an order - less when its deadline\n # is nearer - and an order for the CA's polls.\n def wait_ms=(value : Int32) : Int32\nend\n\nimpl Error for AutocertError\n def message : String\nend\n\nimpl AutocertCache for AutocertDirCache\n def get(key : String) : String | AutocertError | Nil\n def put(key : String, data : String) : AutocertError | ::Nil\n def delete(key : String) : AutocertError | ::Nil\nend\n" + }, { "name": "std/base32", "path": "src/std/base32.iyi", @@ -52,8 +64,8 @@ { "name": "std/big", "path": "src/std/big.iyi", - "sourceSha256": "5c1a303eb3115206ae3f49ce6881a9722ae2297e58b9fdc6cd41f23f66aa58cb", - "surface": "module std/big\n\npub struct BigDecimal\n def !=(other : BigDecimal) : Bool\n def %(other : BigDecimal) : BigDecimal\n def *(other : BigDecimal) : BigDecimal\n def *(other : Int32 | Int64) : BigDecimal\n def +(other : BigDecimal) : BigDecimal\n def +(other : Int32 | Int64) : BigDecimal\n def + : BigDecimal\n def -(other : BigDecimal) : BigDecimal\n def -(other : Int32 | Int64) : BigDecimal\n def - : BigDecimal\n def /(other : BigDecimal) : BigDecimal\n def /(other : Int32 | Int64) : BigDecimal\n def //(other : BigDecimal) : BigDecimal\n def abs : BigDecimal\n protected def self.align(a : BigDecimal, b : BigDecimal) : Tuple(BigInt, BigInt, Int32)\n # `self / other` rounded to `precision` fractional digits, half away from\n # zero. A quotient that is exact within `precision` digits is answered with\n # the fewest digits that write it: `1/4` is `0.25`, `6/3` is `2`. One that\n # is not keeps all `precision` digits, so the reader sees where it was cut.\n def div(other : BigDecimal, precision : Int32) : BigDecimal\n # The same value at another scale is the same key: `1.10`, `1.1` and\n # `11e-1` hash alike because `==` says they are equal. The digits without\n # their trailing zeros and the exponent that goes with them name the value;\n # multiplying a negative scale out made `1e1000000.hash` take 2.6 s.\n def hash : Int32\n def initialize(value : BigInt, scale : Int32 = 0)\n def initialize(num : Int32 = 0, scale : Int32 = 0)\n def initialize(num : Int64, scale : Int32 = 0)\n # Parses `[+-]digits[.digits][e[+-]digits]`; anything else is refused.\n def initialize(str : String)\n def inspect : String\n # Bounds on the place of the leading digit, from the limb count alone:\n # 10^(lo - 1) <= |self| < 10^hi. 30102 and 30103 in 100,000 bracket\n # log10(2) for each 32-bit limb.\n protected def magnitude_bounds : Tuple(Int64, Int64)\n def negate : BigDecimal\n def negative? : Bool\n # The same value with the smallest non-negative scale: trailing zeros of\n # the fraction are dropped and a negative scale is multiplied out.\n def normalized : BigDecimal\n def positive? : Bool\n def scale : Int32\n # The value without its trailing zeros, at most `limit` of them, and how\n # many went. Counted once in the digits and divided out once: one divmod\n # by ten per zero was quadratic, and the hash of `1.` and 40,000 zeros, or\n # `3.div(3, 40000)`, took 725 ms. A value that does not end in zero is\n # answered by one division by ten, without printing it.\n protected def strip_zeros(limit : Int32) : Tuple(BigInt, Int32)\n def to_big_d : BigDecimal\n def to_big_i : BigInt\n def to_f : Float64\n def to_f64 : Float64\n def to_i32 : Int32\n def to_i64 : Int64\n # Zero is `0` whatever its scale; every other value prints every digit of\n # its scale, so `1.10` stays `1.10`.\n def to_s : String\n def value : BigInt\n def zero? : Bool\nend\n\n# A binary floating-point number of any precision: `±mantissa · 2^exponent`,\n# the mantissa exactly *precision* bits long (128 unless asked), every\n# result rounded once, to the nearest value of that many bits, ties to even\n# - the rounding IEEE 754 gives a double, at any width. The other library's\n# BigFloat is GMP's `mpf`, which truncates and keeps more bits than it was\n# asked for; this one answers what MPFR does.\n#\n# a = BigFloat.new(2, 256)\n# a.sqrt.to_s\n# # => \"1.4142135623730950488016887242096980785696718753769480731766797379907324784621\"\n# BigFloat.new(\"0.1\", 24).to_f64 # => 0.10000000149011612\n#\n# An operation between two answers at the larger precision; with an\n# integer, at the BigFloat's. `to_s` writes the fewest decimal digits that\n# read back to the same value at its precision, positional from 1e-4 to\n# below 1e15 and with an exponent outside, as `Float64#to_s` writes. There\n# is no NaN or infinity: dividing by zero, the square root of a negative\n# number, a NaN or an infinite double, a precision under 1 and a string\n# that is no number are refused.\npub struct BigFloat\n def *(other : BigFloat) : BigFloat\n def *(other : Int32 | Int64 | BigInt) : BigFloat\n # The power, its exact value rounded once; a negative exponent is the\n # reciprocal of the power, rounded once.\n def **(exponent : Int32) : BigFloat\n def +(other : BigFloat) : BigFloat\n def +(other : Int32 | Int64 | BigInt) : BigFloat\n def + : BigFloat\n def -(other : BigFloat) : BigFloat\n def -(other : Int32 | Int64 | BigInt) : BigFloat\n def - : BigFloat\n def /(other : BigFloat) : BigFloat\n def /(other : Int32 | Int64 | BigInt) : BigFloat\n def ==(other : BigFloat) : Bool\n def abs : BigFloat\n def ceil : BigFloat\n protected def self.check(precision : Int32) : Nil\n # An integer at exactly the bits it has.\n protected def self.exactly(value : Int32 | Int64 | BigInt) : BigFloat\n protected def exponent : Int64\n def floor : BigFloat\n # Equal values hash alike whatever their precision: the mantissa without\n # its trailing zero bits.\n def hash : Int32\n def initialize(negative : Bool, mantissa : BigInt, exponent : Int64, precision : Int32)\n def inspect : String\n # The largest integer whose square is at most *value*, by Newton's\n # method from above.\n protected def self.isqrt(value : BigInt) : BigInt\n protected def mantissa : BigInt\n def negative? : Bool\n def self.new(value : Int32, precision : Int32 = DEFAULT_PRECISION) : BigFloat\n def self.new(value : Int64, precision : Int32 = DEFAULT_PRECISION) : BigFloat\n def self.new(value : BigInt, precision : Int32 = DEFAULT_PRECISION) : BigFloat\n # The double's exact value, rounded to *precision* bits.\n def self.new(value : Float64, precision : Int32 = DEFAULT_PRECISION) : BigFloat\n def self.new(value : BigRational, precision : Int32 = DEFAULT_PRECISION) : BigFloat\n def self.new(value : BigDecimal, precision : Int32 = DEFAULT_PRECISION) : BigFloat\n # A decimal - `-12.5`, `1e-30`, `6.02214076E23` - rounded to *precision*\n # bits; anything else is refused.\n def self.new(text : String, precision : Int32 = DEFAULT_PRECISION) : BigFloat\n # As `new`, nil for a string that is no number.\n def self.parse?(text : String, precision : Int32 = DEFAULT_PRECISION) : BigFloat | ::Nil\n # *digits* with its first digit at 10^*point*, as `Float64#to_s` puts\n # a point: positional from 10^-4 to 10^14, an exponent outside.\n protected def self.place(digits : String, point : Int64) : String\n def positive? : Bool\n def precision : Int32\n # Under one half is zero; from there the fraction is at most\n # *precision* bits, compared with one half exactly.\n def round : BigFloat\n # *num*/*den* · 2^*shift* (both non-negative, *den* not zero), rounded to\n # *precision* bits, ties to even: every value here is made by this, from\n # an exact one.\n protected def self.rounded(negative : Bool, num : BigInt, den : BigInt, shift : Int64, precision : Int32) : BigFloat\n # The square root, rounded once. The mantissa is widened to at least\n # 2·precision + 4 bits over an even power of two, so the integer root\n # has two bits past the ones kept, and a root that is not exact carries a\n # half below its last bit into the rounding, which no tie can be.\n def sqrt : BigFloat\n # The exact sum, rounded once. An addend more than *precision* + 2 bits\n # below the other cannot move it - it is under a quarter of the larger's\n # last place, even where that place halves below a power of two - and\n # is not shifted out to a size it would only be rounded away from.\n protected def sum(other : BigFloat, precision : Int32) : BigFloat\n # Toward zero, floor, ceiling, and to the nearest integer, ties to even.\n def to_big_i : BigInt\n # The exact value as a fraction.\n def to_big_r : BigRational\n # The double nearest, ties to even; past the largest double, infinite,\n # and below the smallest, zero.\n def to_f64 : Float64\n # The fewest decimal digits that read back as this value at its\n # precision, the nearest such when there are two; written as\n # `Float64#to_s` writes a double.\n def to_s : String\n # The place above the leading bit: 2^(top - 1) <= |self| < 2^top.\n protected def top : Int64\n def trunc : BigFloat\n protected def trunc_whole : BigInt\n # This value at another precision, rounded if it is fewer bits.\n def with_precision(bits : Int32) : BigFloat\n def zero? : Bool\nend\n\npub struct BigInt\n # Three-way comparison is `<=>`, from `impl Comparable` below.\n def !=(other : BigInt) : Bool\n def !=(other : Int64) : Bool\n def !=(other : Int32) : Bool\n def %(other : BigInt) : BigInt\n def %(other : Int64) : BigInt\n def %(other : Int32) : BigInt\n # Bitwise AND (&) with two's complement semantics\n def &(other : BigInt) : BigInt\n # Multiplication\n def *(other : BigInt) : BigInt\n def *(other : Int64) : BigInt\n def *(other : Int32) : BigInt\n # Exponentiation by squaring: a ** exp\n def **(exp : Int32) : BigInt\n def **(exp : Int64) : BigInt\n def **(exp : BigInt) : BigInt\n # Addition\n def +(other : BigInt) : BigInt\n def +(other : Int64) : BigInt\n def +(other : Int32) : BigInt\n def + : BigInt\n # Subtraction: the sum with the other's sign turned, without copying it.\n def -(other : BigInt) : BigInt\n def -(other : Int64) : BigInt\n def -(other : Int32) : BigInt\n def - : BigInt\n def //(other : BigInt) : BigInt\n def //(other : Int64) : BigInt\n def //(other : Int32) : BigInt\n def <(other : Int64) : Bool\n def <(other : Int32) : Bool\n # Bitwise Left Shift: a << count\n def <<(count : Int32) : BigInt\n def <=(other : Int64) : Bool\n def <=(other : Int32) : Bool\n # Comparison overloads for Int64 and Int32\n def <=>(other : Int64) : Int32\n def <=>(other : Int32) : Int32\n def ==(other : Int64) : Bool\n def ==(other : Int32) : Bool\n def >(other : Int64) : Bool\n def >(other : Int32) : Bool\n def >=(other : Int64) : Bool\n def >=(other : Int32) : Bool\n # Bitwise Right Shift (arithmetic): a >> count\n def >>(count : Int32) : BigInt\n # Bitwise XOR (^) with two's complement semantics\n def ^(other : BigInt) : BigInt\n # Returns the absolute value of self.\n def abs : BigInt\n def abs2 : BigInt\n # The digits of this value's magnitude, least significant first, onto\n # `sink`: exactly `width` of them when `width` is positive, zeros above.\n #\n # A long value is split by `powers[level]`, a power of the chunk about\n # half its size, and each half is written by the level below - the low\n # half to exactly the digits that power stands for, so its leading zeros\n # are kept. Dividing by one chunk at a time is a hardware division per\n # limb per nine digits, n^2 / 9 of them; the split does that only for the\n # short pieces at the bottom and multiplies its way through the rest,\n # dividing by `divmod_recursive`.\n protected def append_digits(radix : UInt64, chunk : UInt64, per : Int32, powers : Array(BigInt), level : Int32, width : Int32, sink : Array(UInt8)) : Nil\n # The bits |value| takes to write.\n protected def self.bit_length(value : BigInt) : Int32\n # `count` bits of this value, not negative, from bit `from` up, in one\n # copy.\n protected def bits(from : Int32, count : Int32) : BigInt\n # The bits one digit of a power-of-two base takes; for any other base,\n # the fewest bits a digit can carry, so that a limb's worth of bits\n # bounds how many digits it makes.\n protected def self.bits_per_digit(base : Int32) : Int32\n # Magnitude comparison: compares |self| and |other|.\n # Returns -1 if |self| < |other|, 0 if |self| == |other|, 1 if |self| > |other|.\n def cmp_abs(other : BigInt) : Int32\n protected def self.digit_byte(value : UInt64) : UInt8\n # A digit byte's value in any base up to 36, or 36 for a byte that is a\n # digit in none.\n protected def self.digit_value(byte : UInt8) : Int32\n # This value's `2n` bits and `low`'s `n` by `b`, `top` and `bottom` its\n # halves of `n` bits each.\n protected def div_three_by_two(low : BigInt, b : BigInt, top : BigInt, bottom : BigInt, n : Int32) : Tuple(BigInt, BigInt)\n # This value, under `divisor * 2^n`, by `divisor`, exactly `n` bits long\n # and `n` even until it is short enough for long division: the top\n # `n + n/2` bits by the divisor, then the remainder and the next `n/2`.\n # Each is a division by the divisor's top half, a product by its bottom\n # half, and at most two corrections, the divisor's top bit being set.\n protected def div_two_by_one(divisor : BigInt, n : Int32) : Tuple(BigInt, BigInt)\n # Division and Modulo. Returns {quotient, remainder}.\n # Division truncates towards zero; remainder follows the sign of the dividend (self).\n #\n # A long divisor and a long quotient go to `divmod_recursive`, the\n # recursive division `to_s` splits its digits with, on the magnitudes,\n # and take their signs after. Long division costs the product of the\n # quotient's length and the divisor's, and every division went to it: a\n # value twice a divisor of 524,288 bits took 282 ms in a release build\n # and one of 2,097,152 bits 4,929 ms, four times over per doubling,\n # where these take 179 and 1,964.\n def divmod(other : BigInt) : Tuple(BigInt, BigInt)\n # Knuth's Algorithm D, with the signs `divmod` gives.\n protected def divmod_long(other : BigInt) : Tuple(BigInt, BigInt)\n # |self| divided by |other|, two limbs or more, for a quotient under\n # 2^32: *shift* is the divisor's bit length less 32, and |self| over\n # 2^shift, A, fits 63 bits. With B the divisor's top 32 bits, the\n # quotient is estimated as A / (B + 1), which is never more than the\n # quotient and short of it by less than A / B^2 + 1, at most three; a - q\n # b is taken in one pass and the divisor taken off what is left while it\n # is not below it.\n protected def divmod_one_limb(other : BigInt, shift : Int32, q_sign : Int32, r_sign : Int32) : Tuple(BigInt, BigInt)\n # The quotient and remainder of this value, not negative, by `divisor`,\n # positive, for the time a few products of half the length take: long\n # division costs the product of the two lengths, and the split print\n # divides by a power half as long as the value, so `to_s` was quadratic -\n # 787 ms for 381,698 digits and 3,107 ms for twice as many. Burnikel and\n # Ziegler's recursive division, in the form Python's `_pylong` writes it,\n # by bits. A value past twice the divisor's length has its top divided\n # first, as long division takes a digit at a time; the rest is shifted so\n # that the divisor's length halves evenly down to where long division is\n # the faster, and the remainder shifted back.\n protected def divmod_recursive(divisor : BigInt) : Tuple(BigInt, BigInt)\n # Returns true if this number is even.\n def even? : Bool\n # The big-endian *bytes* as a non-negative BigInt: a key, a signature, a\n # coordinate as cryptography writes them. Four bytes a limb, the low\n # limb from the last four.\n def self.from_bytes(bytes : Array(UInt8)) : BigInt\n # The value of `digits`, most significant first, in `base`: the inverse\n # of `to_s(base)`, and built the same way. A power-of-two base packs the\n # digits' bits into limbs directly. Any other splits the digits at a\n # power of the chunk (`append_digits`), so that the halves meet in one\n # Karatsuba product each, and runs the short pieces at the bottom through\n # one multiply-add per chunk in place. This had shifted or multiplied a\n # whole new BigInt per digit - per nine digits in decimal - and 80,000\n # hex digits took more than a second.\n protected def self.from_digits(digits : Array(UInt8), base : Int32) : BigInt\n # Parses a hexadecimal string (with or without '0x' prefix).\n def self.from_hex(str : String) : BigInt\n # Greatest Common Divisor (Euclidean algorithm)\n def gcd(other : BigInt) : BigInt\n def gcd(other : Int64) : BigInt\n def gcd(other : Int32) : BigInt\n # FNV-1a over the sign and every limb, folded to 31 bits. Wrapping\n # multiplication (`&*`) is the point: a checked product would overflow on\n # the second limb, and a hash has to answer for any size.\n def hash : Int32\n # Raw constructor from sign and limbs. Trims leading zero limbs to enforce\n # the canonical representation invariant: zero has empty limbs and sign 0.\n def initialize(sign : Int32, limbs : Array(UInt64))\n # Least Common Multiple\n def lcm(other : BigInt) : BigInt\n def lcm(other : Int64) : BigInt\n def lcm(other : Int32) : BigInt\n def limbs : Array(UInt64)\n # Whether the *n* limbs at *r* are at least the *m* at *v*.\n protected def self.limbs_at_least(r : Pointer(UInt64), n : Int32, v : Pointer(UInt64), m : Int32) : Bool\n # Returns the negated value of self (-self).\n def negate : BigInt\n # Returns true if this number is strictly negative (< 0).\n def negative? : Bool\n # Constructs a BigInt from an Int64.\n def self.new(val : Int64) : BigInt\n # Constructs a BigInt from an Int32.\n def self.new(val : Int32) : BigInt\n # Parses a BigInt from a string in the given base (2..36, default 10).\n # Supports leading whitespace, optional sign ('+' or '-'), and base prefixes\n # (0x/0X for hex, 0b/0B for binary, 0o/0O for octal).\n def self.new(str : String, base : Int32 = 10) : BigInt\n # Returns true if this number is odd.\n def odd? : Bool\n # Parses a string with full error checking.\n def self.parse(str : String, base : Int32 = 10) : BigInt\n # Returns true if this number is strictly positive (> 0).\n def positive? : Bool\n # Modular exponentiation: (self ** exp) % mod, in 0...mod whatever the\n # base's sign. An odd modulus, which is every modulus RSA, Diffie-Hellman\n # and DSA work in, goes to `Montgomery` with a sliding window; an even one\n # keeps square-and-multiply with a division per step.\n #\n # Each step here was a product and a long division of twice the\n # modulus' length, and a 2048-bit modulus with a 2048-bit exponent took\n # 19.0 ms in a --release build where Python 3.14's `pow` took 13.3 (3072\n # bits: 63.2 and 42.3, 4096: 168.7 and 100.3). Montgomery's takes 2.5 ms,\n # 8.5 and 20.6 in the run of bench/std_big_exercise.sh that measured\n # Python at 13.7, 45.4 and 102.1, which prints these each run.\n def pow_mod(exp : BigInt, mod : BigInt) : BigInt\n def pow_mod(exp : Int64, mod : Int64) : BigInt\n def pow_mod(exp : Int32, mod : Int32) : BigInt\n # `pow_mod` for an exponent that is a secret, a private key's: a fixed\n # window, every entry of its table read for each window and the one\n # wanted kept by a mask, so neither a branch nor a memory address depends\n # on the exponent's bits, and as many windows as the longer of the\n # exponent and the modulus takes, so the exponent's length does not show\n # either. The modulus has to be odd (a Montgomery modulus): an even one\n # is a misuse, refused.\n #\n # What it does not hide: the base is reduced by `%`, whose time depends\n # on the base and the modulus, so a caller with a secret base (RSA's\n # CRT halves of a message) blinds it first, as std/rsa's signing does.\n def pow_mod_secret(exp : BigInt, mod : BigInt) : BigInt\n def sign : Int32\n # Number of limbs currently allocated.\n def size : Int32\n def to_big : BigInt\n def to_big_d : BigDecimal\n def to_big_i : BigInt\n def to_big_r : BigRational\n # The value big-endian in exactly *size* bytes, zeros in front: the\n # inverse of `from_bytes` at a fixed width, which is how a signature or a\n # coordinate is written. Nil for a negative value or one that does not\n # fit, never a value cut short.\n def to_bytes(size : Int32) : Array(UInt8) | ::Nil\n def to_i : Int32\n # Converts to Int32, raising an overflow error if the value exceeds Int32 range.\n def to_i32 : Int32\n # Converts to Int32 if the value fits, or nil if it overflows.\n def to_i32? : Int32 | ::Nil\n # Converts to Int64, raising an overflow error if the value exceeds Int64 range.\n def to_i64 : Int64\n # Converts to Int64 if the value fits, or nil if it overflows.\n def to_i64? : Int64 | ::Nil\n # Converts this BigInt to a string in the given base (default 10).\n # Bases 2..36 supported. Digits above 9 are lowercase 'a'..'z'.\n #\n # The digits are gathered least significant first and written into the\n # string once. A base that is a power of two reads them straight off the\n # limbs' bits; any other divides a copy of the limbs in place by the\n # largest power of the base a limb holds - 10^9 for decimal - and takes\n # that many digits from each remainder. This had built the text with\n # `res = res + s`, a copy of everything so far per chunk, and divided by\n # a fresh one-limb BigInt per chunk, or per digit outside bases 2, 10\n # and 16: 3 ** 400000 took a second in decimal and in binary, and nine\n # and a half in base 7.\n def to_s(base : Int32) : String\n def to_s : String\n # Helper: bitwise magnitude operation with sign inversion\n protected def twos_mag : BigInt\n # The value of `count` digits from `from`: the high part times the power\n # of the chunk that the low part's digits stand for, plus the low part.\n protected def self.value_of_digits(digits : Array(UInt8), from : Int32, count : Int32, base : UInt64, per : Int32, powers : Array(BigInt)) : BigInt\n # |value| over 2^shift, for one under 2^64: the limbs from bit *shift*.\n protected def self.window(limbs : Array(UInt64), shift : Int32) : UInt64\n # Returns true if this number is zero.\n def zero? : Bool\n # Bitwise OR (|) with two's complement semantics\n def |(other : BigInt) : BigInt\n # Bitwise NOT (~a = -a - 1 in two's complement)\n def ~ : BigInt\nend\n\npub struct BigRational\n def !=(other : BigRational) : Bool\n def *(other : BigRational) : BigRational\n def *(other : Int32 | Int64 | BigInt) : BigRational\n def **(exp : Int32) : BigRational\n def +(other : BigRational) : BigRational\n def +(other : Int32 | Int64 | BigInt) : BigRational\n def + : BigRational\n def -(other : BigRational) : BigRational\n def -(other : Int32 | Int64 | BigInt) : BigRational\n def - : BigRational\n def /(other : BigRational) : BigRational\n def /(other : Int32 | Int64 | BigInt) : BigRational\n def abs : BigRational\n def denominator : BigInt\n # A rational is stored reduced, so equal values have equal parts.\n def hash : Int32\n def initialize(numerator : BigInt, denominator : BigInt)\n def initialize(num : Int64 = 0_i64, den : Int64 = 1_i64)\n def initialize(num : Int32, den : Int32 = 1)\n def initialize(str : String)\n def inspect : String\n def inv : BigRational\n def negate : BigRational\n def negative? : Bool\n def numerator : BigInt\n def positive? : Bool\n def to_big_d : BigDecimal\n def to_big_i : BigInt\n def to_big_r : BigRational\n # The Float64 nearest this value, ties to even, as python's\n # `float(Fraction)` answers. This had gone through `to_big_d`, twenty\n # fractional digits: every value under 5e-21 was 0.0 and every one under\n # 1e-3 lost significant digits. The quotient is taken to 55 or 56 bits -\n # 55 at the smallest exponent, where the subnormals start - with a sticky\n # low bit for a nonzero remainder, rounded to the bits a Float64 keeps (53,\n # fewer as a subnormal), and scaled by the power of two it was shifted by,\n # which is exact: a value past the largest Float64 is Infinity.\n def to_f64 : Float64\n def to_s : String\n def zero? : Bool\nend\n\nimpl Std::Traits::Comparable for BigInt\n def <=>(other : self) : Int32\nend\n\nimpl Std::Traits::Num for BigInt\n def self.zero : self\n def self.one : self\n def add(other : self) : self\n def mul(other : self) : self\nend\n\nimpl Std::Traits::Hashable for BigInt\n def hash_key : Int32\nend\n\nimpl Std::Traits::Comparable for BigDecimal\n def <=>(other : self) : Int32\nend\n\nimpl Std::Traits::Num for BigDecimal\n def self.zero : self\n def self.one : self\n def add(other : self) : self\n def mul(other : self) : self\nend\n\nimpl Std::Traits::Hashable for BigDecimal\n def hash_key : Int32\nend\n\nimpl Std::Traits::Comparable for BigRational\n def <=>(other : self) : Int32\nend\n\nimpl Std::Traits::Num for BigRational\n def self.zero : self\n def self.one : self\n def add(other : self) : self\n def mul(other : self) : self\nend\n\nimpl Std::Traits::Hashable for BigRational\n def hash_key : Int32\nend\n\nimpl Std::Traits::Comparable for BigFloat\n def <=>(other : self) : Int32\nend\n\nimpl Std::Traits::Hashable for BigFloat\n def hash_key : Int32\nend\n\nstruct ::Int32\n def *(other : Std::Big::BigInt) : Std::Big::BigInt\n def +(other : Std::Big::BigInt) : Std::Big::BigInt\n def -(other : Std::Big::BigInt) : Std::Big::BigInt\n def <=>(other : Std::Big::BigInt) : Int32\n def ==(other : Std::Big::BigInt) : Bool\n def to_big : Std::Big::BigInt\n def to_big_d : Std::Big::BigDecimal\n def to_big_i : Std::Big::BigInt\n def to_big_r : Std::Big::BigRational\nend\n\nstruct ::Int64\n def *(other : Std::Big::BigInt) : Std::Big::BigInt\n def +(other : Std::Big::BigInt) : Std::Big::BigInt\n def -(other : Std::Big::BigInt) : Std::Big::BigInt\n def <=>(other : Std::Big::BigInt) : Int32\n def ==(other : Std::Big::BigInt) : Bool\n def to_big : Std::Big::BigInt\n def to_big_d : Std::Big::BigDecimal\n def to_big_i : Std::Big::BigInt\n def to_big_r : Std::Big::BigRational\nend\n\nclass ::String\n def to_big_d : Std::Big::BigDecimal\n def to_big_i : Std::Big::BigInt\n def to_big_r : Std::Big::BigRational\nend\n" + "sourceSha256": "979cc358dd97fd15026b0251c74420c2c3a6ddc1c6210d2d099c0105af7bbb6f", + "surface": "module std/big\n\npub struct BigDecimal\n def !=(other : BigDecimal) : Bool\n def %(other : BigDecimal) : BigDecimal\n def *(other : BigDecimal) : BigDecimal\n def *(other : Int32 | Int64) : BigDecimal\n def +(other : BigDecimal) : BigDecimal\n def +(other : Int32 | Int64) : BigDecimal\n def + : BigDecimal\n def -(other : BigDecimal) : BigDecimal\n def -(other : Int32 | Int64) : BigDecimal\n def - : BigDecimal\n def /(other : BigDecimal) : BigDecimal\n def /(other : Int32 | Int64) : BigDecimal\n def //(other : BigDecimal) : BigDecimal\n def abs : BigDecimal\n protected def self.align(a : BigDecimal, b : BigDecimal) : Tuple(BigInt, BigInt, Int32)\n # `self / other` rounded to `precision` fractional digits, half away from\n # zero. A quotient that is exact within `precision` digits is answered with\n # the fewest digits that write it: `1/4` is `0.25`, `6/3` is `2`. One that\n # is not keeps all `precision` digits, so the reader sees where it was cut.\n def div(other : BigDecimal, precision : Int32) : BigDecimal\n # The same value at another scale is the same key: `1.10`, `1.1` and\n # `11e-1` hash alike because `==` says they are equal. The digits without\n # their trailing zeros and the exponent that goes with them name the value;\n # multiplying a negative scale out made `1e1000000.hash` take 2.6 s.\n def hash : Int32\n def initialize(value : BigInt, scale : Int32 = 0)\n def initialize(num : Int32 = 0, scale : Int32 = 0)\n def initialize(num : Int64, scale : Int32 = 0)\n # Parses `[+-]digits[.digits][e[+-]digits]`; anything else is refused.\n def initialize(str : String)\n def inspect : String\n # Bounds on the place of the leading digit, from the limb count alone:\n # 10^(lo - 1) <= |self| < 10^hi. 30102 and 30103 in 100,000 bracket\n # log10(2) for each 32-bit limb.\n protected def magnitude_bounds : Tuple(Int64, Int64)\n def negate : BigDecimal\n def negative? : Bool\n # The same value with the smallest non-negative scale: trailing zeros of\n # the fraction are dropped and a negative scale is multiplied out.\n def normalized : BigDecimal\n def positive? : Bool\n def scale : Int32\n # The value without its trailing zeros, at most `limit` of them, and how\n # many went. Counted once in the digits and divided out once: one divmod\n # by ten per zero was quadratic, and the hash of `1.` and 40,000 zeros, or\n # `3.div(3, 40000)`, took 725 ms. A value that does not end in zero is\n # answered by one division by ten, without printing it.\n protected def strip_zeros(limit : Int32) : Tuple(BigInt, Int32)\n def to_big_d : BigDecimal\n def to_big_i : BigInt\n def to_f : Float64\n def to_f64 : Float64\n def to_i32 : Int32\n def to_i64 : Int64\n # Zero is `0` whatever its scale; every other value prints every digit of\n # its scale, so `1.10` stays `1.10`.\n def to_s : String\n def value : BigInt\n def zero? : Bool\nend\n\n# A binary floating-point number of any precision: `±mantissa · 2^exponent`,\n# the mantissa exactly *precision* bits long (128 unless asked), every\n# result rounded once, to the nearest value of that many bits, ties to even\n# - the rounding IEEE 754 gives a double, at any width. The other library's\n# BigFloat is GMP's `mpf`, which truncates and keeps more bits than it was\n# asked for; this one answers what MPFR does.\n#\n# a = BigFloat.new(2, 256)\n# a.sqrt.to_s\n# # => \"1.4142135623730950488016887242096980785696718753769480731766797379907324784621\"\n# BigFloat.new(\"0.1\", 24).to_f64 # => 0.10000000149011612\n#\n# An operation between two answers at the larger precision; with an\n# integer, at the BigFloat's. `to_s` writes the fewest decimal digits that\n# read back to the same value at its precision, positional from 1e-4 to\n# below 1e15 and with an exponent outside, as `Float64#to_s` writes. There\n# is no NaN or infinity: dividing by zero, the square root of a negative\n# number, a NaN or an infinite double, a precision under 1 and a string\n# that is no number are refused.\npub struct BigFloat\n def *(other : BigFloat) : BigFloat\n def *(other : Int32 | Int64 | BigInt) : BigFloat\n # The power, its exact value rounded once; a negative exponent is the\n # reciprocal of the power, rounded once.\n def **(exponent : Int32) : BigFloat\n def +(other : BigFloat) : BigFloat\n def +(other : Int32 | Int64 | BigInt) : BigFloat\n def + : BigFloat\n def -(other : BigFloat) : BigFloat\n def -(other : Int32 | Int64 | BigInt) : BigFloat\n def - : BigFloat\n def /(other : BigFloat) : BigFloat\n def /(other : Int32 | Int64 | BigInt) : BigFloat\n def ==(other : BigFloat) : Bool\n def abs : BigFloat\n def ceil : BigFloat\n protected def self.check(precision : Int32) : Nil\n # An integer at exactly the bits it has.\n protected def self.exactly(value : Int32 | Int64 | BigInt) : BigFloat\n protected def exponent : Int64\n def floor : BigFloat\n # Equal values hash alike whatever their precision: the mantissa without\n # its trailing zero bits.\n def hash : Int32\n def initialize(negative : Bool, mantissa : BigInt, exponent : Int64, precision : Int32)\n def inspect : String\n # The largest integer whose square is at most *value*, by Newton's\n # method from above.\n protected def self.isqrt(value : BigInt) : BigInt\n protected def mantissa : BigInt\n def negative? : Bool\n def self.new(value : Int32, precision : Int32 = DEFAULT_PRECISION) : BigFloat\n def self.new(value : Int64, precision : Int32 = DEFAULT_PRECISION) : BigFloat\n def self.new(value : BigInt, precision : Int32 = DEFAULT_PRECISION) : BigFloat\n # The double's exact value, rounded to *precision* bits.\n def self.new(value : Float64, precision : Int32 = DEFAULT_PRECISION) : BigFloat\n def self.new(value : BigRational, precision : Int32 = DEFAULT_PRECISION) : BigFloat\n def self.new(value : BigDecimal, precision : Int32 = DEFAULT_PRECISION) : BigFloat\n # A decimal - `-12.5`, `1e-30`, `6.02214076E23` - rounded to *precision*\n # bits; anything else is refused.\n def self.new(text : String, precision : Int32 = DEFAULT_PRECISION) : BigFloat\n # As `new`, nil for a string that is no number.\n def self.parse?(text : String, precision : Int32 = DEFAULT_PRECISION) : BigFloat | ::Nil\n # *digits* with its first digit at 10^*point*, as `Float64#to_s` puts\n # a point: positional from 10^-4 to 10^14, an exponent outside.\n protected def self.place(digits : String, point : Int64) : String\n def positive? : Bool\n def precision : Int32\n # Under one half is zero; from there the fraction is at most\n # *precision* bits, compared with one half exactly.\n def round : BigFloat\n # *num*/*den* · 2^*shift* (both non-negative, *den* not zero), rounded to\n # *precision* bits, ties to even: every value here is made by this, from\n # an exact one.\n protected def self.rounded(negative : Bool, num : BigInt, den : BigInt, shift : Int64, precision : Int32) : BigFloat\n # The square root, rounded once. The mantissa is widened to at least\n # 2·precision + 4 bits over an even power of two, so the integer root\n # has two bits past the ones kept, and a root that is not exact carries a\n # half below its last bit into the rounding, which no tie can be.\n def sqrt : BigFloat\n # The exact sum, rounded once. An addend more than *precision* + 2 bits\n # below the other cannot move it - it is under a quarter of the larger's\n # last place, even where that place halves below a power of two - and\n # is not shifted out to a size it would only be rounded away from.\n protected def sum(other : BigFloat, precision : Int32) : BigFloat\n # Toward zero, floor, ceiling, and to the nearest integer, ties to even.\n def to_big_i : BigInt\n # The exact value as a fraction.\n def to_big_r : BigRational\n # The double nearest, ties to even; past the largest double, infinite,\n # and below the smallest, zero.\n def to_f64 : Float64\n # The fewest decimal digits that read back as this value at its\n # precision, the nearest such when there are two; written as\n # `Float64#to_s` writes a double.\n def to_s : String\n # The place above the leading bit: 2^(top - 1) <= |self| < 2^top.\n protected def top : Int64\n def trunc : BigFloat\n protected def trunc_whole : BigInt\n # This value at another precision, rounded if it is fewer bits.\n def with_precision(bits : Int32) : BigFloat\n def zero? : Bool\nend\n\npub struct BigInt\n # Three-way comparison is `<=>`, from `impl Comparable` below.\n def !=(other : BigInt) : Bool\n def !=(other : Int64) : Bool\n def !=(other : Int32) : Bool\n def %(other : BigInt) : BigInt\n def %(other : Int64) : BigInt\n def %(other : Int32) : BigInt\n # Bitwise AND (&) with two's complement semantics\n def &(other : BigInt) : BigInt\n # Multiplication\n def *(other : BigInt) : BigInt\n def *(other : Int64) : BigInt\n def *(other : Int32) : BigInt\n # Exponentiation by squaring: a ** exp\n def **(exp : Int32) : BigInt\n def **(exp : Int64) : BigInt\n def **(exp : BigInt) : BigInt\n # Addition\n def +(other : BigInt) : BigInt\n def +(other : Int64) : BigInt\n def +(other : Int32) : BigInt\n def + : BigInt\n # Subtraction: the sum with the other's sign turned, without copying it.\n def -(other : BigInt) : BigInt\n def -(other : Int64) : BigInt\n def -(other : Int32) : BigInt\n def - : BigInt\n def //(other : BigInt) : BigInt\n def //(other : Int64) : BigInt\n def //(other : Int32) : BigInt\n def <(other : Int64) : Bool\n def <(other : Int32) : Bool\n # Bitwise Left Shift: a << count\n def <<(count : Int32) : BigInt\n def <=(other : Int64) : Bool\n def <=(other : Int32) : Bool\n # Comparison overloads for Int64 and Int32\n def <=>(other : Int64) : Int32\n def <=>(other : Int32) : Int32\n def ==(other : Int64) : Bool\n def ==(other : Int32) : Bool\n def >(other : Int64) : Bool\n def >(other : Int32) : Bool\n def >=(other : Int64) : Bool\n def >=(other : Int32) : Bool\n # Bitwise Right Shift (arithmetic): a >> count\n def >>(count : Int32) : BigInt\n # Bitwise XOR (^) with two's complement semantics\n def ^(other : BigInt) : BigInt\n # Returns the absolute value of self.\n def abs : BigInt\n def abs2 : BigInt\n # The digits of this value's magnitude, least significant first, onto\n # `sink`: exactly `width` of them when `width` is positive, zeros above.\n #\n # A long value is split by `powers[level]`, a power of the chunk about\n # half its size, and each half is written by the level below - the low\n # half to exactly the digits that power stands for, so its leading zeros\n # are kept. Dividing by one chunk at a time is a hardware division per\n # limb per nine digits, n^2 / 9 of them; the split does that only for the\n # short pieces at the bottom and multiplies its way through the rest,\n # dividing by `divmod_recursive`.\n protected def append_digits(radix : UInt64, chunk : UInt64, per : Int32, powers : Array(BigInt), level : Int32, width : Int32, sink : Array(UInt8)) : Nil\n # The bits |value| takes to write.\n protected def self.bit_length(value : BigInt) : Int32\n # `count` bits of this value, not negative, from bit `from` up, in one\n # copy.\n protected def bits(from : Int32, count : Int32) : BigInt\n # The bits one digit of a power-of-two base takes; for any other base,\n # the fewest bits a digit can carry, so that a limb's worth of bits\n # bounds how many digits it makes.\n protected def self.bits_per_digit(base : Int32) : Int32\n # Magnitude comparison: compares |self| and |other|.\n # Returns -1 if |self| < |other|, 0 if |self| == |other|, 1 if |self| > |other|.\n def cmp_abs(other : BigInt) : Int32\n protected def self.digit_byte(value : UInt64) : UInt8\n # A digit byte's value in any base up to 36, or 36 for a byte that is a\n # digit in none.\n protected def self.digit_value(byte : UInt8) : Int32\n # This value's `2n` bits and `low`'s `n` by `b`, `top` and `bottom` its\n # halves of `n` bits each.\n protected def div_three_by_two(low : BigInt, b : BigInt, top : BigInt, bottom : BigInt, n : Int32) : Tuple(BigInt, BigInt)\n # This value, under `divisor * 2^n`, by `divisor`, exactly `n` bits long\n # and `n` even until it is short enough for long division: the top\n # `n + n/2` bits by the divisor, then the remainder and the next `n/2`.\n # Each is a division by the divisor's top half, a product by its bottom\n # half, and at most two corrections, the divisor's top bit being set.\n protected def div_two_by_one(divisor : BigInt, n : Int32) : Tuple(BigInt, BigInt)\n # Division and Modulo. Returns {quotient, remainder}.\n # Division truncates towards zero; remainder follows the sign of the dividend (self).\n #\n # A long divisor and a long quotient go to `divmod_recursive`, the\n # recursive division `to_s` splits its digits with, on the magnitudes,\n # and take their signs after. Long division costs the product of the\n # quotient's length and the divisor's, and every division went to it: a\n # value twice a divisor of 524,288 bits took 282 ms in a release build\n # and one of 2,097,152 bits 4,929 ms, four times over per doubling,\n # where these take 179 and 1,964.\n def divmod(other : BigInt) : Tuple(BigInt, BigInt)\n # Knuth's Algorithm D, with the signs `divmod` gives.\n protected def divmod_long(other : BigInt) : Tuple(BigInt, BigInt)\n # |self| divided by |other|, two limbs or more, for a quotient under\n # 2^32: *shift* is the divisor's bit length less 32, and |self| over\n # 2^shift, A, fits 63 bits. With B the divisor's top 32 bits, the\n # quotient is estimated as A / (B + 1), which is never more than the\n # quotient and short of it by less than A / B^2 + 1, at most three; a - q\n # b is taken in one pass and the divisor taken off what is left while it\n # is not below it.\n protected def divmod_one_limb(other : BigInt, shift : Int32, q_sign : Int32, r_sign : Int32) : Tuple(BigInt, BigInt)\n # The quotient and remainder of this value, not negative, by `divisor`,\n # positive, for the time a few products of half the length take: long\n # division costs the product of the two lengths, and the split print\n # divides by a power half as long as the value, so `to_s` was quadratic -\n # 787 ms for 381,698 digits and 3,107 ms for twice as many. Burnikel and\n # Ziegler's recursive division, in the form Python's `_pylong` writes it,\n # by bits. A value past twice the divisor's length has its top divided\n # first, as long division takes a digit at a time; the rest is shifted so\n # that the divisor's length halves evenly down to where long division is\n # the faster, and the remainder shifted back.\n protected def divmod_recursive(divisor : BigInt) : Tuple(BigInt, BigInt)\n # Returns true if this number is even.\n def even? : Bool\n # The big-endian *bytes* as a non-negative BigInt: a key, a signature, a\n # coordinate as cryptography writes them. Four bytes a limb, the low\n # limb from the last four.\n def self.from_bytes(bytes : Array(UInt8)) : BigInt\n # The value of `digits`, most significant first, in `base`: the inverse\n # of `to_s(base)`, and built the same way. A power-of-two base packs the\n # digits' bits into limbs directly. Any other splits the digits at a\n # power of the chunk (`append_digits`), so that the halves meet in one\n # Karatsuba product each, and runs the short pieces at the bottom through\n # one multiply-add per chunk in place. This had shifted or multiplied a\n # whole new BigInt per digit - per nine digits in decimal - and 80,000\n # hex digits took more than a second.\n protected def self.from_digits(digits : Array(UInt8), base : Int32) : BigInt\n # Parses a hexadecimal string (with or without '0x' prefix).\n def self.from_hex(str : String) : BigInt\n # Greatest Common Divisor (Euclidean algorithm)\n def gcd(other : BigInt) : BigInt\n def gcd(other : Int64) : BigInt\n def gcd(other : Int32) : BigInt\n # FNV-1a over the sign and every limb, folded to 31 bits. Wrapping\n # multiplication (`&*`) is the point: a checked product would overflow on\n # the second limb, and a hash has to answer for any size.\n def hash : Int32\n # Raw constructor from sign and limbs. Trims leading zero limbs to enforce\n # the canonical representation invariant: zero has empty limbs and sign 0.\n def initialize(sign : Int32, limbs : Array(UInt64))\n # The inverse of self modulo an odd *mod*, in 0...mod, or nil when the\n # two share a factor (Python's `pow(self, -1, mod)`, which raises\n # there): for a value that is a secret, such as RSA's blinding factor.\n # The steps taken, their branches and the words they read depend on the\n # modulus' length alone (`Montgomery#inverse`); an even modulus is a\n # misuse, refused. As with `pow_mod_secret`, self is reduced by `%`\n # first, whose time depends on it: a caller hands in a value below the\n # modulus.\n def inverse_mod_secret(mod : BigInt) : BigInt | ::Nil\n # Least Common Multiple\n def lcm(other : BigInt) : BigInt\n def lcm(other : Int64) : BigInt\n def lcm(other : Int32) : BigInt\n def limbs : Array(UInt64)\n # Whether the *n* limbs at *r* are at least the *m* at *v*.\n protected def self.limbs_at_least(r : Pointer(UInt64), n : Int32, v : Pointer(UInt64), m : Int32) : Bool\n # Returns the negated value of self (-self).\n def negate : BigInt\n # Returns true if this number is strictly negative (< 0).\n def negative? : Bool\n # Constructs a BigInt from an Int64.\n def self.new(val : Int64) : BigInt\n # Constructs a BigInt from an Int32.\n def self.new(val : Int32) : BigInt\n # Parses a BigInt from a string in the given base (2..36, default 10).\n # Supports leading whitespace, optional sign ('+' or '-'), and base prefixes\n # (0x/0X for hex, 0b/0B for binary, 0o/0O for octal).\n def self.new(str : String, base : Int32 = 10) : BigInt\n # Returns true if this number is odd.\n def odd? : Bool\n # Parses a string with full error checking.\n def self.parse(str : String, base : Int32 = 10) : BigInt\n # Returns true if this number is strictly positive (> 0).\n def positive? : Bool\n # Modular exponentiation: (self ** exp) % mod, in 0...mod whatever the\n # base's sign. An odd modulus, which is every modulus RSA, Diffie-Hellman\n # and DSA work in, goes to `Montgomery` with a sliding window; an even one\n # keeps square-and-multiply with a division per step.\n #\n # Each step here was a product and a long division of twice the\n # modulus' length, and a 2048-bit modulus with a 2048-bit exponent took\n # 19.0 ms in a --release build where Python 3.14's `pow` took 13.3 (3072\n # bits: 63.2 and 42.3, 4096: 168.7 and 100.3). Montgomery's takes 2.5 ms,\n # 8.5 and 20.6 in the run of bench/std_big_exercise.sh that measured\n # Python at 13.7, 45.4 and 102.1, which prints these each run.\n def pow_mod(exp : BigInt, mod : BigInt) : BigInt\n def pow_mod(exp : Int64, mod : Int64) : BigInt\n def pow_mod(exp : Int32, mod : Int32) : BigInt\n # `pow_mod` for an exponent that is a secret, a private key's: a fixed\n # window, every entry of its table read for each window and the one\n # wanted kept by a mask, so neither a branch nor a memory address depends\n # on the exponent's bits, and as many windows as the longer of the\n # exponent and the modulus takes, so the exponent's length does not show\n # either. The modulus has to be odd (a Montgomery modulus): an even one\n # is a misuse, refused.\n #\n # What it does not hide: the base is reduced by `%`, whose time depends\n # on the base and the modulus, so a caller with a secret base (RSA's\n # CRT halves of a message) blinds it first, as std/rsa's signing does.\n def pow_mod_secret(exp : BigInt, mod : BigInt) : BigInt\n def sign : Int32\n # Number of limbs currently allocated.\n def size : Int32\n def to_big : BigInt\n def to_big_d : BigDecimal\n def to_big_i : BigInt\n def to_big_r : BigRational\n # The value big-endian in exactly *size* bytes, zeros in front: the\n # inverse of `from_bytes` at a fixed width, which is how a signature or a\n # coordinate is written. Nil for a negative value or one that does not\n # fit, never a value cut short.\n def to_bytes(size : Int32) : Array(UInt8) | ::Nil\n def to_i : Int32\n # Converts to Int32, raising an overflow error if the value exceeds Int32 range.\n def to_i32 : Int32\n # Converts to Int32 if the value fits, or nil if it overflows.\n def to_i32? : Int32 | ::Nil\n # Converts to Int64, raising an overflow error if the value exceeds Int64 range.\n def to_i64 : Int64\n # Converts to Int64 if the value fits, or nil if it overflows.\n def to_i64? : Int64 | ::Nil\n # Converts this BigInt to a string in the given base (default 10).\n # Bases 2..36 supported. Digits above 9 are lowercase 'a'..'z'.\n #\n # The digits are gathered least significant first and written into the\n # string once. A base that is a power of two reads them straight off the\n # limbs' bits; any other divides a copy of the limbs in place by the\n # largest power of the base a limb holds - 10^9 for decimal - and takes\n # that many digits from each remainder. This had built the text with\n # `res = res + s`, a copy of everything so far per chunk, and divided by\n # a fresh one-limb BigInt per chunk, or per digit outside bases 2, 10\n # and 16: 3 ** 400000 took a second in decimal and in binary, and nine\n # and a half in base 7.\n def to_s(base : Int32) : String\n def to_s : String\n # Helper: bitwise magnitude operation with sign inversion\n protected def twos_mag : BigInt\n # The value of `count` digits from `from`: the high part times the power\n # of the chunk that the low part's digits stand for, plus the low part.\n protected def self.value_of_digits(digits : Array(UInt8), from : Int32, count : Int32, base : UInt64, per : Int32, powers : Array(BigInt)) : BigInt\n # |value| over 2^shift, for one under 2^64: the limbs from bit *shift*.\n protected def self.window(limbs : Array(UInt64), shift : Int32) : UInt64\n # Returns true if this number is zero.\n def zero? : Bool\n # Bitwise OR (|) with two's complement semantics\n def |(other : BigInt) : BigInt\n # Bitwise NOT (~a = -a - 1 in two's complement)\n def ~ : BigInt\nend\n\npub struct BigRational\n def !=(other : BigRational) : Bool\n def *(other : BigRational) : BigRational\n def *(other : Int32 | Int64 | BigInt) : BigRational\n def **(exp : Int32) : BigRational\n def +(other : BigRational) : BigRational\n def +(other : Int32 | Int64 | BigInt) : BigRational\n def + : BigRational\n def -(other : BigRational) : BigRational\n def -(other : Int32 | Int64 | BigInt) : BigRational\n def - : BigRational\n def /(other : BigRational) : BigRational\n def /(other : Int32 | Int64 | BigInt) : BigRational\n def abs : BigRational\n def denominator : BigInt\n # A rational is stored reduced, so equal values have equal parts.\n def hash : Int32\n def initialize(numerator : BigInt, denominator : BigInt)\n def initialize(num : Int64 = 0_i64, den : Int64 = 1_i64)\n def initialize(num : Int32, den : Int32 = 1)\n def initialize(str : String)\n def inspect : String\n def inv : BigRational\n def negate : BigRational\n def negative? : Bool\n def numerator : BigInt\n def positive? : Bool\n def to_big_d : BigDecimal\n def to_big_i : BigInt\n def to_big_r : BigRational\n # The Float64 nearest this value, ties to even, as python's\n # `float(Fraction)` answers. This had gone through `to_big_d`, twenty\n # fractional digits: every value under 5e-21 was 0.0 and every one under\n # 1e-3 lost significant digits. The quotient is taken to 55 or 56 bits -\n # 55 at the smallest exponent, where the subnormals start - with a sticky\n # low bit for a nonzero remainder, rounded to the bits a Float64 keeps (53,\n # fewer as a subnormal), and scaled by the power of two it was shifted by,\n # which is exact: a value past the largest Float64 is Infinity.\n def to_f64 : Float64\n def to_s : String\n def zero? : Bool\nend\n\nimpl Std::Traits::Comparable for BigInt\n def <=>(other : self) : Int32\nend\n\nimpl Std::Traits::Num for BigInt\n def self.zero : self\n def self.one : self\n def add(other : self) : self\n def mul(other : self) : self\nend\n\nimpl Std::Traits::Hashable for BigInt\n def hash_key : Int32\nend\n\nimpl Std::Traits::Comparable for BigDecimal\n def <=>(other : self) : Int32\nend\n\nimpl Std::Traits::Num for BigDecimal\n def self.zero : self\n def self.one : self\n def add(other : self) : self\n def mul(other : self) : self\nend\n\nimpl Std::Traits::Hashable for BigDecimal\n def hash_key : Int32\nend\n\nimpl Std::Traits::Comparable for BigRational\n def <=>(other : self) : Int32\nend\n\nimpl Std::Traits::Num for BigRational\n def self.zero : self\n def self.one : self\n def add(other : self) : self\n def mul(other : self) : self\nend\n\nimpl Std::Traits::Hashable for BigRational\n def hash_key : Int32\nend\n\nimpl Std::Traits::Comparable for BigFloat\n def <=>(other : self) : Int32\nend\n\nimpl Std::Traits::Hashable for BigFloat\n def hash_key : Int32\nend\n\nstruct ::Int32\n def *(other : Std::Big::BigInt) : Std::Big::BigInt\n def +(other : Std::Big::BigInt) : Std::Big::BigInt\n def -(other : Std::Big::BigInt) : Std::Big::BigInt\n def <=>(other : Std::Big::BigInt) : Int32\n def ==(other : Std::Big::BigInt) : Bool\n def to_big : Std::Big::BigInt\n def to_big_d : Std::Big::BigDecimal\n def to_big_i : Std::Big::BigInt\n def to_big_r : Std::Big::BigRational\nend\n\nstruct ::Int64\n def *(other : Std::Big::BigInt) : Std::Big::BigInt\n def +(other : Std::Big::BigInt) : Std::Big::BigInt\n def -(other : Std::Big::BigInt) : Std::Big::BigInt\n def <=>(other : Std::Big::BigInt) : Int32\n def ==(other : Std::Big::BigInt) : Bool\n def to_big : Std::Big::BigInt\n def to_big_d : Std::Big::BigDecimal\n def to_big_i : Std::Big::BigInt\n def to_big_r : Std::Big::BigRational\nend\n\nclass ::String\n def to_big_d : Std::Big::BigDecimal\n def to_big_i : Std::Big::BigInt\n def to_big_r : Std::Big::BigRational\nend\n" }, { "name": "std/bit_array", @@ -76,7 +88,7 @@ { "name": "std/bzip2", "path": "src/std/bzip2.iyi", - "sourceSha256": "33335a7b9f4b7cf41941e3e0a8f6d0f4f9d752f303ab85ef89a126b7ded704cb", + "sourceSha256": "e6ddde4436c552246e884befc9e59a8614c3c60ba2878550af35f2d6a53baa97", "surface": "module std/bzip2\n\npub struct Bzip2\n # *data* as one bzip2 stream with blocks of *level* * 100,000 bytes,\n # 1 to 9 (bzip2's -1 to -9); any other level is a panic.\n def self.compress(data : String, level : Int32 = 9) : String\n # Every byte *data*'s streams hold, or the error the first wrong thing in\n # them is. Bytes after the last stream that do not start another are\n # ignored, as bzip2(1) ignores them.\n def self.decompress(data : String) : String | Bzip2Error\n def initialize\nend\n\n# What `Bzip2Reader#read` and `Bzip2.decompress` answer for a stream they\n# cannot read: one that is corrupt, whose CRC does not match, or that ends\n# early.\npub struct Bzip2Error\n def initialize(message : String)\n def to_s : String\nend\n\n# A bzip2 stream read a piece at a time: the compressed bytes come from\n# the block, the decompressed ones go out through `read`, and memory\n# stays at one block's links and a 64 KiB buffer.\n#\n# ```\n# body = Bzip2Reader.new { file.read_bytes(65536) }\n# while (piece = body.read(65536)!) != \"\"\n# ...\n# end\n# ```\npub class Bzip2Reader\n # Whether every stream has ended, its CRCs checked, and every byte been\n # read: the next `read` answers \"\".\n def finished? : Bool\n # *source* answers the next bytes of the compressed stream, nil (or \"\")\n # when there are no more. It is called only when the decoder has no\n # bytes in hand for what it must read next, so it is never asked for\n # anything past a stream's end - except that the input ends only where\n # no stream follows, which takes a look at the next four bytes.\n def initialize(&source : (-> String | ::Nil))\n # Bytes the source gave beyond the last stream, for a caller that frames\n # other data after it; \"\" before the input has ended.\n def leftover : String\n # Up to *max* decompressed bytes, 64 KiB at most; \"\" once every stream\n # has ended and its CRCs been checked. A read that has bytes when a\n # block ends answers them rather than reading the next block, so it can\n # answer fewer than *max* before the end.\n #\n # A corrupt stream, a CRC that does not match, or input that ends early\n # is a `Bzip2Error`, after which every read answers the same error. A\n # block's bytes are given out before its CRC is known, as the CRC is\n # over them; the read that gives its last byte checks it, and answers\n # the error instead of those bytes. A *max* below 1 is a panic.\n def read(max : Int32 = 65536) : String | Bzip2Error\nend\n\nimpl Error for Bzip2Error\n def message : String\nend\n" }, { @@ -124,8 +136,8 @@ { "name": "std/curve25519", "path": "src/std/curve25519.iyi", - "sourceSha256": "ef68e5e6969424cf301ccc3a47001434d64f18f4544afc429266e5c6c760a7c9", - "surface": "module std/curve25519\n\n# What is wrong with a peer's key: `message` is the sentence.\npub struct CurveError\n def initialize(message : String)\n def to_s : String\nend\n\n# Ed25519, RFC 8032 §5.1: the seed is the 32-byte private key; SHA-512 of\n# it gives the secret scalar (its first half, clamped) and the prefix the\n# per-message nonce is hashed from (its second half). Signing is\n# deterministic: one seed and one message give one signature.\npub struct Ed25519\n def initialize\n # The 32-byte public key of *seed*, RFC 8032 §5.1.5.\n def self.public_key(seed : String | Array(UInt8)) : String\n # The 64-byte signature of *message* under *seed*, RFC 8032 §5.1.6:\n # R = [r]B for r = SHA-512(prefix || M) mod L, then\n # S = (r + SHA-512(R || A || M) * s) mod L. The public key A is worked\n # out again from the seed, which costs a second multiplication of the\n # base point; the two are each a fixed-window constant-time one.\n def self.sign(seed : String | Array(UInt8), message : String | Array(UInt8)) : String\n # Whether *signature* is *public_key*'s signature of *message*, RFC 8032\n # §5.1.7 with the cofactorless equation (the header says why). False,\n # not a panic, for a key or signature of the wrong size, a key that is\n # not a canonical encoding of a point on the curve, and an S of L or\n # more.\n def self.verify(public_key : String | Array(UInt8), message : String | Array(UInt8), signature : String | Array(UInt8)) : Bool\nend\n\n# An Ed25519 public key held as a value, as a certificate carries one (RFC\n# 8410): the 32 bytes, checked once to be the canonical encoding of a point\n# on the curve, so a key read from outside that is not one is refused where\n# it is read rather than failing every signature later.\npub struct Ed25519PublicKey\n def bytes : Array(UInt8)\n # The key *bytes* encode, or a `CurveError`: not 32 bytes, or not a\n # canonical encoding of a point on the curve (RFC 8032 §5.1.3).\n def self.from_bytes(bytes : String | Array(UInt8)) : Ed25519PublicKey | CurveError\n def initialize(bytes : Array(UInt8))\n # Whether *signature* is this key's signature of *message*, as\n # `Ed25519.verify` answers it.\n def verify(message : String | Array(UInt8), signature : String | Array(UInt8)) : Bool\nend\n\n# X25519, RFC 7748 §5: the u-coordinate of a clamped scalar times a point\n# on Curve25519. The private key is any 32 bytes; it is clamped here\n# (bits 0 to 2 and 255 cleared, bit 254 set), so the caller need not.\npub struct X25519\n def initialize\n # The public key of *private_key*: its multiple of the base point, u = 9.\n def self.public_key(private_key : String | Array(UInt8)) : String\n # The secret *private_key* shares with the owner of *peer_public*. A\n # peer key that is not 32 bytes, and a secret of all zeros (a peer key of\n # small order, RFC 7748 §6.1), are a `CurveError`. Whether the secret was\n # zero is the one thing that leaves the ladder by a branch, and it says\n # nothing of the private key: which keys give zero depends on the peer's.\n def self.shared(private_key : String | Array(UInt8), peer_public : String | Array(UInt8)) : String | CurveError\nend\n\nimpl Error for CurveError\n def message : String\nend\n" + "sourceSha256": "b1b7fdcd424af5a7d8484a2b984f886c45231a74f396566691a5976113c67132", + "surface": "module std/curve25519\n\n# What is wrong with a peer's key: `message` is the sentence.\npub struct CurveError\n def initialize(message : String)\n def to_s : String\nend\n\n# Ed25519, RFC 8032 §5.1: the seed is the 32-byte private key; SHA-512 of\n# it gives the secret scalar (its first half, clamped) and the prefix the\n# per-message nonce is hashed from (its second half). Signing is\n# deterministic: one seed and one message give one signature.\npub struct Ed25519\n def initialize\n # The 32-byte public key of *seed*, RFC 8032 §5.1.5.\n def self.public_key(seed : String | Array(UInt8)) : String\n # The 64-byte signature of *message* under *seed*, RFC 8032 §5.1.6:\n # R = [r]B for r = SHA-512(prefix || M) mod L, then\n # S = (r + SHA-512(R || A || M) * s) mod L. The public key A is worked\n # out again from the seed, which costs a second multiplication of the\n # base point; the two are each a fixed-window constant-time one.\n def self.sign(seed : String | Array(UInt8), message : String | Array(UInt8)) : String\n # Whether *signature* is *public_key*'s signature of *message*, RFC 8032\n # §5.1.7 with the cofactorless equation (the header says why). False,\n # not a panic, for a key or signature of the wrong size, a key that is\n # not a canonical encoding of a point on the curve, and an S of L or\n # more.\n def self.verify(public_key : String | Array(UInt8), message : String | Array(UInt8), signature : String | Array(UInt8)) : Bool\nend\n\n# An Ed25519 public key held as a value, as a certificate carries one (RFC\n# 8410): the 32 bytes, checked once to be the canonical encoding of a point\n# on the curve, so a key read from outside that is not one is refused where\n# it is read rather than failing every signature later.\npub struct Ed25519PublicKey\n def bytes : Array(UInt8)\n # The key *bytes* encode, or a `CurveError`: not 32 bytes, or not a\n # canonical encoding of a point on the curve (RFC 8032 §5.1.3).\n def self.from_bytes(bytes : String | Array(UInt8)) : Ed25519PublicKey | CurveError\n def initialize(bytes : Array(UInt8))\n # Whether *signature* is this key's signature of *message*, as\n # `Ed25519.verify` answers it.\n def verify(message : String | Array(UInt8), signature : String | Array(UInt8)) : Bool\nend\n\n# X25519, RFC 7748 §5: the u-coordinate of a clamped scalar times a point\n# on Curve25519. The private key is any 32 bytes; it is clamped here\n# (bits 0 to 2 and 255 cleared, bit 254 set), so the caller need not.\npub struct X25519\n def initialize\n # The public key of *private_key*: its multiple of the base point, u = 9.\n # That point is edwards25519's B under RFC 7748 §4.1's map, which keeps\n # multiples, so the clamped scalar times B on the Edwards curve, by the\n # fixed-base table, gives the same u as the ladder from 9 does: 8\n # microseconds where the ladder took 20.\n def self.public_key(private_key : String | Array(UInt8)) : String\n # The secret *private_key* shares with the owner of *peer_public*. A\n # peer key that is not 32 bytes, and a secret of all zeros (a peer key of\n # small order, RFC 7748 §6.1), are a `CurveError`. Whether the secret was\n # zero is the one thing that leaves the ladder by a branch, and it says\n # nothing of the private key: which keys give zero depends on the peer's.\n def self.shared(private_key : String | Array(UInt8), peer_public : String | Array(UInt8)) : String | CurveError\nend\n\nimpl Error for CurveError\n def message : String\nend\n" }, { "name": "std/debug", @@ -148,25 +160,25 @@ { "name": "std/digest", "path": "src/std/digest.iyi", - "sourceSha256": "624bfb79129f860695808e4f3c95109132a59c57fce35f67ce6eefb86927afe9", + "sourceSha256": "3a86961eb013ee516204d7f8e65615cc592e1ee624e570d8f49345d00894ab26", "surface": "module std/digest\n\n# The same convention as `CRC32`: `update(sum, data, count)` goes on from a\n# finished Adler-32, and 1 is the start (the Adler-32 of nothing), as in\n# zlib's `adler32(adler, buf, len)`.\npub struct Adler32\n def self.checksum(data : String) : UInt32\n def self.hexdigest(data : String) : String\n def initialize\n def self.update(sum : UInt32, data : Pointer(UInt8), count : Int32) : UInt32\nend\n\n# `checksum(data)` is the CRC-32 of *data*. `update(crc, data, count)` goes\n# on from a CRC-32 already taken, zlib's `crc32(crc, buf, len)` convention:\n# what goes in and what comes out are finished checksums, the inversion\n# before and after done inside, so 0 is the start (the CRC-32 of nothing)\n# and `update(update(0, a), b)` is the CRC-32 of *a* then *b*, the same\n# number `checksum` answers for the two joined.\npub struct CRC32\n def self.checksum(data : String) : UInt32\n def self.hexdigest(data : String) : String\n def initialize\n # Eight bytes a step through eight tables (slicing-by-8), where it had\n # been one bit a step: twenty megabytes took 105 ms, which was most of\n # what `Gzip.decompress` spent, the inflating itself taking 30.\n def self.update(crc : UInt32, data : Pointer(UInt8), count : Int32) : UInt32\nend\n\n# CRC-64 with ECMA-182's polynomial, reflected (0xc96c5795d7870f42), and\n# inverted before and after: the CRC-64 the .xz format checks a block\n# with (xz file format 1.0.4 §3.4, check ID 0x04), which reveng's\n# catalogue names CRC-64/XZ. The same convention as `CRC32`: `update(crc,\n# data, count)` goes on from a finished checksum, 0 is the start (the\n# CRC-64 of nothing), and `hexdigest` writes the number most significant\n# digit first, as `xz --robot --list` does; the stream stores it\n# little-endian.\npub struct CRC64\n def self.checksum(data : String) : UInt64\n def self.hexdigest(data : String) : String\n def initialize\n # Eight bytes a step through eight tables, as `CRC32` goes: the bytes\n # loaded as one little-endian word, xored into the checksum, and each\n # of the eight looked up in the table for how many bytes of zeros\n # follow it in the step.\n def self.update(crc : UInt64, data : Pointer(UInt8), count : Int32) : UInt64\nend\n\n# What every block hash shares: the message is cut into blocks, the last\n# one padded with a one bit, zeros and the message's length in bits, and\n# each block is compressed into the state. A subclass is the state and\n# its compression; this is the cutting and the padding.\npub abstract class Digest\n # Bytes compressed at a time: 64, or 128 for SHA-384 and SHA-512. HMAC\n # pads its key to this.\n def block_size : Int32\n # Becomes *other*: the same bytes taken, the same state, the same\n # `final` given or not. Nothing is allocated. *other* must be the same\n # algorithm, and a different one is refused by name.\n def copy_from(other : Digest) : Nil\n # Bytes in a digest: 16 for MD5, 20 for SHA-1, 28, 32, 48 and 64 for\n # the SHA-2s.\n abstract def digest_size : Int32\n def dup : self\n # The digest, into the first `digest_size` bytes of *dst*: no array is\n # made, which is what a loop that hashes a hash wants.\n def final(dst : Array(UInt8)) : Nil\n def final : Array(UInt8)\n def self.hash_bytes(data : String | Array(UInt8)) : Array(UInt8)\n def self.hexdigest(data : String | Array(UInt8)) : String\n def hexfinal : String\n def initialize(block_size : Int32)\n # The digest of no bytes yet, ready again after a `final`.\n def reset : Nil\n def update(data : Pointer(UInt8), count : Int32) : self\n def update(data : String) : self\n def update(data : Array(UInt8)) : self\nend\n\npub class MD5 < Digest\n def digest_size : Int32\n def initialize\n # The type's own name, which is what a value that has said nothing about\n # itself can honestly print. A type that wants better defines its own.\n def to_s : String\nend\n\npub class SHA1 < Digest\n def digest_size : Int32\n def initialize\n # The type's own name, which is what a value that has said nothing about\n # itself can honestly print. A type that wants better defines its own.\n def to_s : String\nend\n\npub class SHA224 < SHA256\n def digest_size : Int32\n # The type's own name, which is what a value that has said nothing about\n # itself can honestly print. A type that wants better defines its own.\n def to_s : String\nend\n\n# SHA-256, FIPS 180-4 §6.2. SHA-224 is the same compression from another\n# starting state, its digest the first 28 bytes.\npub class SHA256 < Digest\n def digest_size : Int32\n def initialize\n # The type's own name, which is what a value that has said nothing about\n # itself can honestly print. A type that wants better defines its own.\n def to_s : String\nend\n\n# SHA-3, FIPS 202 section 6.1: Keccak[c] with a capacity twice the\n# digest, so a rate (the `block_size`) of 200 bytes less two digests.\n# The sponge has no length field, so the base's cutting into blocks is\n# kept and its padding is replaced. The digest is shorter than the rate\n# in all four, so it is the first bytes of the state after the last\n# block, with no further permutation.\npub abstract class SHA3 < Digest\n def initialize(rate : Int32)\n # The type's own name, which is what a value that has said nothing about\n # itself can honestly print. A type that wants better defines its own.\n def to_s : String\nend\n\npub class SHA384 < SHA512\n def digest_size : Int32\n # The type's own name, which is what a value that has said nothing about\n # itself can honestly print. A type that wants better defines its own.\n def to_s : String\nend\n\npub class SHA3_224 < SHA3\n def digest_size : Int32\n def initialize\n # The type's own name, which is what a value that has said nothing about\n # itself can honestly print. A type that wants better defines its own.\n def to_s : String\nend\n\npub class SHA3_256 < SHA3\n def digest_size : Int32\n def initialize\n # The type's own name, which is what a value that has said nothing about\n # itself can honestly print. A type that wants better defines its own.\n def to_s : String\nend\n\npub class SHA3_384 < SHA3\n def digest_size : Int32\n def initialize\n # The type's own name, which is what a value that has said nothing about\n # itself can honestly print. A type that wants better defines its own.\n def to_s : String\nend\n\npub class SHA3_512 < SHA3\n def digest_size : Int32\n def initialize\n # The type's own name, which is what a value that has said nothing about\n # itself can honestly print. A type that wants better defines its own.\n def to_s : String\nend\n\n# SHA-512, FIPS 180-4 §6.4: 64-bit words, 128-byte blocks, 80 rounds.\n# SHA-384 is the same compression from another starting state, its digest\n# the first 48 bytes.\npub class SHA512 < Digest\n def digest_size : Int32\n def initialize\n # The type's own name, which is what a value that has said nothing about\n # itself can honestly print. A type that wants better defines its own.\n def to_s : String\nend\n\npub class SHAKE128 < Shake\n def initialize\n # The type's own name, which is what a value that has said nothing about\n # itself can honestly print. A type that wants better defines its own.\n def to_s : String\nend\n\npub class SHAKE256 < Shake\n def initialize\n # The type's own name, which is what a value that has said nothing about\n # itself can honestly print. A type that wants better defines its own.\n def to_s : String\nend\n\n# SHAKE128 and SHAKE256, FIPS 202 section 6.2: the sponge at a capacity of\n# 256 and 512 bits, as much output as is asked for. `update` absorbs;\n# the first `read` pads and every `read` squeezes on from where the last\n# stopped, so reads of 3 and 5 bytes are the first 8 bytes of one read.\n# Absorbing after squeezing would be a different function, not more\n# input, and is refused until `reset`.\npub abstract class Shake\n # Bytes absorbed at a time: 168 for SHAKE128, 136 for SHAKE256.\n def block_size : Int32\n # *count* bytes of the output for *data*.\n def self.hash_bytes(data : String | Array(UInt8), count : Int32) : Array(UInt8)\n def self.hexdigest(data : String | Array(UInt8), count : Int32) : String\n def initialize(rate : Int32)\n # The next `dst.size` bytes of output into *dst*, with no array made.\n # While squeezing, `@fill` counts the bytes of the state given out.\n def read(dst : Array(UInt8)) : Nil\n def read(count : Int32) : Array(UInt8)\n def reset : Nil\n def update(data : Pointer(UInt8), count : Int32) : self\n def update(data : String) : self\n def update(data : Array(UInt8)) : self\nend\n\n# XXH64, the 64-bit xxHash (Yann Collet; the algorithm as xxhash's\n# `doc/xxhash_spec.md` gives it): the hash whose low 32 bits are a\n# Zstandard frame's content checksum (RFC 8878 §3.1.1), which is what\n# std/zstd takes it for. Not a cryptographic hash - a fast check that\n# bytes arrived as they left, with nothing to keep anyone from making two\n# messages that collide.\n#\n# `checksum(data, seed)` hashes one piece. `new(seed)`, then `update` as\n# the data arrives, then `digest`, hashes it in pieces; `digest` leaves\n# the state as it was, as xxhash's `XXH64_digest` does, so it can be\n# asked midway and the hash go on. `hexdigest` is xxhash's canonical form,\n# most significant byte first. A word of the message is loaded as one\n# little-endian load, which is what every target iyi builds for is.\npub class XXH64\n def self.checksum(data : String, seed : UInt64 = 0_u64) : UInt64\n # The hash of everything given since the start or `reset`; the state is\n # left as it was.\n def digest : UInt64\n def self.hexdigest(data : String, seed : UInt64 = 0_u64) : String\n def initialize(seed : UInt64 = 0_u64)\n def self.merge(acc : UInt64, v : UInt64) : UInt64\n # Back to the hash of nothing, under the same seed.\n def reset : Nil\n def self.rotl(x : UInt64, n : Int32) : UInt64\n def self.round(acc : UInt64, input : UInt64) : UInt64\n def update(data : Pointer(UInt8), count : Int32) : Nil\n def update(data : String) : Nil\nend\n" }, { "name": "std/dir", "path": "src/std/dir.iyi", "sourceSha256": "05d924d2c84ce21c8c566beaa058822b50fb1a4e5547b588a111f7085dbd2356", - "surface": "module std/dir\n\npub class Dir\n def self.[](patterns : String | Array(String)) : Array(String)\n protected def self.c_str(str : String) : ::Pointer(UInt8)\n def self.cd(path : String | Path) : String\n def self.cd(path : String | Path, &block : (-> Nil)) : Nil\n def children : Array(String)\n def self.children(dirname : String | Path) : Array(String)\n def close : Nil\n def closed? : Bool\n # One implementation, in the prelude: `Path#expand` needs the same\n # answer and cannot import this module (`std/dir` imports `std/path`),\n # so the platform arms live beside `Program.args` and `Program.env`,\n # which are the process's other facts.\n def self.current : String\n def self.current=(path : String | Path) : String\n def self.delete(path : String | Path) : Nil\n def self.delete?(path : String | Path) : Bool\n def each(&block : (String -> Nil)) : Nil\n def self.each(dirname : String | Path, &block : (String -> Nil)) : Nil\n def each_child(&block : (String -> Nil)) : Nil\n def self.each_child(dirname : String | Path, &block : (String -> Nil)) : Nil\n def self.empty?(path : String | Path) : Bool\n def entries : Array(String)\n def self.entries(dirname : String | Path) : Array(String)\n def self.exists?(path : String | Path) : Bool\n # The search pattern FindFirstFileW is opened with: the directory, wide,\n # with a separator and a `*` behind it. The directory is converted on its\n # own and the wildcard appended to the result, not converted with it,\n # because a long path's conversion runs through `GetFullPathNameW` and\n # that is a path normaliser rather than a pattern one — the `\\\\?\\` prefix\n # it produces is what a long directory needs here, and a `*` is no\n # business of its. A null pointer is the conversion having failed, which\n # the callers read as the directory not opening.\n protected def self.find_pattern(dir_path : String) : ::Pointer(UInt16)\n def self.glob(patterns : String | Array(String)) : Array(String)\n def self.glob(patterns : String | Array(String), &block : (String -> Nil)) : Nil\n def initialize(path : String | Path)\n def inspect : String\n def self.mkdir(path : String | Path, mode : Int32 = 511) : Nil\n def self.mkdir_p(path : String | Path, mode : Int32 = 511) : Nil\n def self.open(path : String | Path) : Dir\n def self.open(path : String | Path, &block : (Dir -> Nil)) : Nil\n def path : String\n def read : String | ::Nil\n def rewind : self\n def self.rmdir(path : String | Path) : Nil\n def self.tempdir : String\n def to_s : String\n # One trailing separator off, as Crystal's `Dir.tempdir` answers: darwin\n # sets TMPDIR to `/var/folders/.../T/`, and every path joined onto it had\n # two separators and a `dirname` that was not the directory it came from.\n # The root alone is left as it is - and on Windows a drive's root is\n # `C:\\`, whose separator is the root: without it `C:` is the current\n # directory on that drive, and a TMP of `C:\\` answered the directory\n # the program happened to be in.\n def self.without_trailing_separator(dir : String) : String\nend\n" + "surface": "module std/dir\n\npub class Dir\n def self.[](patterns : String | Array(String)) : Array(String)\n protected def self.c_str(str : String) : ::Pointer(UInt8)\n def self.cd(path : String | Path) : String\n def self.cd(path : String | Path, &block : (-> Nil)) : Nil\n def children : Array(String)\n def self.children(dirname : String | Path) : Array(String)\n def close : Nil\n def closed? : Bool\n # One implementation, in the prelude: `Path#expand` needs the same\n # answer and cannot import this module (`std/dir` imports `std/path`),\n # so the platform arms live beside `Program.args` and `Program.env`,\n # which are the process's other facts.\n def self.current : String\n def self.current=(path : String | Path) : String\n def self.delete(path : String | Path) : Nil\n def self.delete?(path : String | Path) : Bool\n def each(&block : (String -> Nil)) : Nil\n def self.each(dirname : String | Path, &block : (String -> Nil)) : Nil\n def each_child(&block : (String -> Nil)) : Nil\n def self.each_child(dirname : String | Path, &block : (String -> Nil)) : Nil\n def self.empty?(path : String | Path) : Bool\n def entries : Array(String)\n def self.entries(dirname : String | Path) : Array(String)\n def self.exists?(path : String | Path) : Bool\n def self.glob(patterns : String | Array(String)) : Array(String)\n def self.glob(patterns : String | Array(String), &block : (String -> Nil)) : Nil\n def initialize(path : String | Path)\n def inspect : String\n def self.mkdir(path : String | Path, mode : Int32 = 511) : Nil\n def self.mkdir_p(path : String | Path, mode : Int32 = 511) : Nil\n def self.open(path : String | Path) : Dir\n def self.open(path : String | Path, &block : (Dir -> Nil)) : Nil\n def path : String\n def read : String | ::Nil\n def rewind : self\n def self.rmdir(path : String | Path) : Nil\n def self.tempdir : String\n def to_s : String\n # One trailing separator off, as Crystal's `Dir.tempdir` answers: darwin\n # sets TMPDIR to `/var/folders/.../T/`, and every path joined onto it had\n # two separators and a `dirname` that was not the directory it came from.\n # The root alone is left as it is - and on Windows a drive's root is\n # `C:\\`, whose separator is the root: without it `C:` is the current\n # directory on that drive, and a TMP of `C:\\` answered the directory\n # the program happened to be in.\n def self.without_trailing_separator(dir : String) : String\nend\n\n# Linux: the kernel's own calls (SPEC.md III.9), in libc's shape so the\n# callers below read the same. A directory stream is a descriptor and\n# a buffer of `linux_dirent64` records from `getdents64`, which is the\n# record libc's `readdir` hands back: the name sits at byte 19 either way.\npub struct LibC\n def self.chdir(path : ::Pointer(UInt8)) : Int32\n def self.closedir(dirp : ::Pointer(Void)) : Int32\n def self.getcwd(buf : ::Pointer(UInt8), size : UInt64) : ::Pointer(UInt8)\n def initialize\n def self.mkdir(path : ::Pointer(UInt8), mode : Int32) : Int32\n def self.opendir(name : ::Pointer(UInt8)) : ::Pointer(Void)\n def self.readdir(dirp : ::Pointer(Void)) : ::Pointer(Void)\n def self.rewinddir(dirp : ::Pointer(Void)) : Nil\n def self.rmdir(path : ::Pointer(UInt8)) : Int32\n def self.sys(number : Int64, a : Int64, b : Int64, c : Int64) : Int64\nend\n" }, { "name": "std/dns", "path": "src/std/dns.iyi", - "sourceSha256": "bca672855bf97b25347fe10935098a3c2c6eaee988950470166ddf6c3a065875", - "surface": "module std/dns\n\n# Why a name was not resolved. One type with a question per answer, as\n# `SocketError` has, so a caller tells a name that does not exist\n# (`not_found?`, NXDOMAIN - authoritative, not worth asking again) from a\n# server that failed (`server_failure?`, SERVFAIL - maybe worth asking\n# again later) without reading a sentence.\npub struct DnsError\n # The same failure, said about *name*: a failure found while reading\n # bytes knows no name, and the resolver that asked does.\n def about(name : String, server : String) : DnsError\n def detail : String\n def initialize(kind : Int32, name : String, server : String = \"\", detail : String = \"\")\n # Not a host name at all, so nothing was asked.\n def invalid_name? : ::Bool\n def kind : Int32\n # An answer that carried the query's ID and question and could not be\n # read: a compression loop, a pointer past the end, a record running off\n # the message, an alias chain that does not end.\n def malformed? : ::Bool\n # The name as the caller wrote it.\n def name : String\n # The name exists and has no address of the kind asked for (NOERROR\n # with no records, \"NODATA\").\n def no_address? : ::Bool\n # NXDOMAIN: the name does not exist.\n def not_found? : ::Bool\n def reason : String\n # REFUSED, FORMERR or NOTIMP: the server would not answer this query.\n def refused? : ::Bool\n # The server whose answer this is, `address:port`; empty when no server\n # was asked.\n def server : String\n # SERVFAIL from every server asked.\n def server_failure? : ::Bool\n # No server answered within the timeout, on any attempt.\n def timed_out? : ::Bool\n # The server could not be reached: nothing listens on its port (an ICMP\n # refusal), no route to it, or the TCP connection the truncated answer\n # needed failed.\n def unreachable? : ::Bool\nend\n\n# A query, and the reading of an answer to one.\npub struct DnsMessage\n # The addresses of *type* this answer gives *name*, following CNAMEs:\n # the records for the end of the chain, the name the chain ended at, and\n # how many links it took. No addresses and a different name is a chain\n # that left this answer before it ended, which the resolver asks about\n # next. A chain of more than *budget* links is malformed.\n def addresses(name : String, type : Int32, budget : Int32 = MAX_CNAMES) : Tuple(Array(Bytes), String, Int32) | DnsError\n def answers : Array(DnsRecord)\n # Whether this is the answer to query *id* for *name* and *type*: a\n # response, a standard query's, with the ID, and repeating the question.\n # A refusal of the query (SERVFAIL, REFUSED, FORMERR, NOTIMP) may come\n # without the question, as some servers send it; an answer that says\n # anything about the name - NOERROR or NXDOMAIN - must carry it.\n def answers?(id : UInt16, name : String, type : Int32) : ::Bool\n def flags : Int32\n def id : UInt16\n # The ID in a datagram's first two bytes, or -1 when it is too short to\n # be a message: what the resolver reads before it reads anything else.\n def self.id_of(packet : Bytes) : Int32\n def initialize(id : UInt16, flags : Int32, question_name : String, question_type : Int32, question_class : Int32, answers : Array(DnsRecord))\n def self.malformed(why : String) : DnsError\n def opcode : Int32\n # The message in *packet*: its header, its one question, and - unless it\n # is truncated - its answer section. Anything that does not fit the\n # bytes is `DnsError` with `malformed?`, never a read past them.\n def self.parse(packet : Bytes) : DnsMessage | DnsError\n # The query for *name*'s records of *type*, class IN, with recursion\n # desired: a 12-byte header and one question. *name* is a host name\n # (`DnsName.valid?`); a trailing dot is dropped.\n def self.query(id : UInt16, name : String, type : Int32) : Bytes\n def question_class : Int32\n # The question the answer repeats; empty with `question_type` 0 when it\n # repeats none.\n def question_name : String\n def question_type : Int32\n def rcode : Int32\n # The name at *at* in *packet*, and the offset just past it where it\n # sits; nil when it cannot be read. Labels are 1 to 63 bytes, a label may\n # not hold a `.` (it would read as two), the name is at most 255 bytes on\n # the wire, and each compression pointer must point before the place the\n # name was last read from - RFC 1035 4.1.4's \"prior occurrence\" - so the\n # positions strictly fall and a loop cannot be written.\n def self.read_name(packet : Bytes, at : Int32) : Tuple(String, Int32) | ::Nil\n def response? : ::Bool\n # TC: the answer did not fit in the datagram and is to be asked again\n # over TCP. Its records are not read: what is there is a fragment.\n def truncated? : ::Bool\nend\n\n# What a host name may be, and the names a short one stands for.\npub struct DnsName\n # The fully qualified names a lookup of *name* asks for, in order, as\n # resolv.conf(5) says: a name ending in `.` is only itself; one with at\n # least *ndots* dots is tried as it is first and then under each search\n # domain; one with fewer is tried under each search domain first and as\n # it is last. A candidate longer than a name can be is left out.\n def self.candidates(name : String, search : Array(String), ndots : Int32) : Array(String)\n def initialize\n # *name* without the trailing dot that makes it absolute.\n def self.relative(name : String) : String\n # Two names are the same name in any case (RFC 4343), with or without\n # the trailing dot.\n def self.same?(a : String, b : String) : ::Bool\n # A host name as RFC 1123 and glibc's `res_hnok` read one: labels of 1 to\n # 63 letters, digits, `-` and `_`, no label starting with `-`, at most\n # 253 characters, one trailing dot allowed. The last label must not be\n # all digits (RFC 3696 2: no top-level domain is), so `999.1.1.1` and\n # `1.2.3` stay what the numeric parser refuses rather than becoming\n # questions to a name server.\n def self.valid?(name : String) : ::Bool\n # Why *name* is not a host name, or nil when it is.\n def self.why(name : String) : String | ::Nil\nend\n\n# One resource record from an answer section.\npub struct DnsRecord\n # The record's data as it came: four bytes for an A record, sixteen for\n # an AAAA, the encoded name for a CNAME.\n def data : Bytes\n def initialize(name : String, type : Int32, record_class : Int32, ttl : UInt32, data : Bytes, target : String)\n def name : String\n def record_class : Int32\n # A CNAME's target, read with compression; empty for any other type.\n def target : String\n def ttl : UInt32\n def type : Int32\nend\n\n# The hosts file: an address, then the names it answers for.\npub struct HostsFile\n def initialize\n # The addresses *text* gives *name*, as written and in the file's order:\n # every line whose names include it, in any case and with or without a\n # trailing dot. A line with an address and no name says nothing.\n def self.lookup(text : String, name : String) : Array(String)\nend\n\n# `/etc/resolv.conf`, as resolv.conf(5) describes it and glibc reads it.\npub struct ResolvConf\n def attempts : Int32\n def initialize(nameservers : Array(String) = [] of String, search : Array(String) = [] of String, ndots : Int32 = 1, timeout_ms : Int32 = 5000, attempts : Int32 = 2)\n # Each an address as written - IPv4, or IPv6 without a zone - optionally\n # with a port (`192.0.2.1:5353`, `[2001:db8::1]:5353`), which\n # resolv.conf itself never has and a resolver built in a program may.\n def nameservers : Array(String)\n def ndots : Int32\n # The keywords glibc reads: `nameserver`, `domain`, `search` (the later\n # of `domain` and `search` wins, as there) and `options` with `ndots:`,\n # `timeout:` (seconds) and `attempts:`, each held to glibc's bounds - 15,\n # 30 and 5. A `#` or `;` starts a comment. Anything else is ignored, as\n # glibc ignores it: a file other programs read too is not this module's\n # to refuse.\n def self.parse(text : String) : ResolvConf\n def search : Array(String)\n def timeout_ms : Int32\nend\n\nimpl Error for DnsError\n def message : String\nend\n" + "sourceSha256": "bb493ba2b8a8be515c2c05d1f388ea1650a49d239c9f7973483a16b1e85f06ae", + "surface": "module std/dns\n\n# Why a name was not resolved. One type with a question per answer, as\n# `SocketError` has, so a caller tells a name that does not exist\n# (`not_found?`, NXDOMAIN - authoritative, not worth asking again) from a\n# server that failed (`server_failure?`, SERVFAIL - maybe worth asking\n# again later) without reading a sentence.\npub struct DnsError\n # The same failure, said about *name*: a failure found while reading\n # bytes knows no name, and the resolver that asked does.\n def about(name : String, server : String) : DnsError\n def detail : String\n def initialize(kind : Int32, name : String, server : String = \"\", detail : String = \"\")\n # Not a host name at all, so nothing was asked.\n def invalid_name? : ::Bool\n def kind : Int32\n # An answer that carried the query's ID and question and could not be\n # read: a compression loop, a pointer past the end, a record running off\n # the message, an alias chain that does not end.\n def malformed? : ::Bool\n # The name as the caller wrote it.\n def name : String\n # The name exists and has no address of the kind asked for (NOERROR\n # with no records, \"NODATA\").\n def no_address? : ::Bool\n # NXDOMAIN: the name does not exist.\n def not_found? : ::Bool\n def reason : String\n # REFUSED, FORMERR or NOTIMP: the server would not answer this query.\n def refused? : ::Bool\n # The server whose answer this is, `address:port`; empty when no server\n # was asked.\n def server : String\n # SERVFAIL from every server asked.\n def server_failure? : ::Bool\n # No server answered within the timeout, on any attempt.\n def timed_out? : ::Bool\n # The server could not be reached: nothing listens on its port (an ICMP\n # refusal), no route to it, or the TCP connection the truncated answer\n # needed failed.\n def unreachable? : ::Bool\nend\n\n# A query, and the reading of an answer to one.\npub struct DnsMessage\n # The addresses of *type* this answer gives *name*, following CNAMEs:\n # the records for the end of the chain, the name the chain ended at, and\n # how many links it took. No addresses and a different name is a chain\n # that left this answer before it ended, which the resolver asks about\n # next. A chain of more than *budget* links is malformed.\n def addresses(name : String, type : Int32, budget : Int32 = MAX_CNAMES) : Tuple(Array(Bytes), String, Int32) | DnsError\n def answers : Array(DnsRecord)\n # Whether this is the answer to query *id* for *name* and *type*: a\n # response, a standard query's, with the ID, and repeating the question.\n # A refusal of the query (SERVFAIL, REFUSED, FORMERR, NOTIMP) may come\n # without the question, as some servers send it; an answer that says\n # anything about the name - NOERROR or NXDOMAIN - must carry it.\n def answers?(id : UInt16, name : String, type : Int32) : ::Bool\n # Where the message at the start of *packet* ends: past its header, its\n # questions and every record of its three sections, as their counts\n # say; -1 when they run past the bytes or a name cannot be read. Over a\n # stream the frame is the message, so an answer whose frame holds bytes\n # past this point is refused as oversized there (`Resolver`'s encrypted\n # upstreams); a datagram is not held to it.\n def self.ends_at(packet : Bytes) : Int32\n def flags : Int32\n def id : UInt16\n # The ID in a datagram's first two bytes, or -1 when it is too short to\n # be a message: what the resolver reads before it reads anything else.\n def self.id_of(packet : Bytes) : Int32\n # *extended_rcode* is the upper eight bits of the RCODE, from the\n # answer's OPT record (RFC 6891 6.1.3); 0 without one.\n def initialize(id : UInt16, flags : Int32, question_name : String, question_type : Int32, question_class : Int32, answers : Array(DnsRecord), extended_rcode : Int32 = 0)\n def self.malformed(why : String) : DnsError\n def opcode : Int32\n # The message in *packet*: its header, its one question, and - unless it\n # is truncated - its answer section, and the RCODE's upper bits from the\n # OPT record in its additional section. The authority and additional\n # sections are walked to find that record, so their records must fit\n # the bytes too; one OPT record at most (RFC 6891 6.1.1), owned by the\n # root. Anything that does not fit the bytes is `DnsError` with\n # `malformed?`, never a read past them.\n def self.parse(packet : Bytes) : DnsMessage | DnsError\n # The query for *name*'s records of *type*, class IN, with recursion\n # desired: a 12-byte header and one question. *name* is a host name\n # (`DnsName.valid?`); a trailing dot is dropped.\n #\n # A *block* above 0 pads it (RFC 7830): an OPT record follows the\n # question - the root for its name, `EDNS_PAYLOAD` for its class,\n # extended RCODE, version and flags all 0 (RFC 6891 6.1.2-6.1.4) - and\n # holds a single Padding option of zero bytes (RFC 7830 3's SHOULD), as\n # many as bring the message to the next multiple of *block*. The length\n # brought there is the message's own, without the two bytes that frame\n # it over TCP (RFC 8467 3), so a question pads to the same length over\n # TLS as over HTTPS. With no *block* there is no OPT record: that is the\n # query that goes out in the clear, where RFC 7830 6 forbids padding.\n def self.query(id : UInt16, name : String, type : Int32, block : Int32 = 0) : Bytes\n def question_class : Int32\n # The question the answer repeats; empty with `question_type` 0 when it\n # repeats none.\n def question_name : String\n def question_type : Int32\n # The whole twelve-bit RCODE: the header's four bits under the OPT\n # record's eight. An answer that says BADVERS (16) has 0 in its header,\n # and read from the header alone it would be NOERROR without records.\n def rcode : Int32\n # The name at *at* in *packet*, and the offset just past it where it\n # sits; nil when it cannot be read. Labels are 1 to 63 bytes, a label may\n # not hold a `.` (it would read as two), the name is at most 255 bytes on\n # the wire, and each compression pointer must point before the place the\n # name was last read from - RFC 1035 4.1.4's \"prior occurrence\" - so the\n # positions strictly fall and a loop cannot be written.\n def self.read_name(packet : Bytes, at : Int32) : Tuple(String, Int32) | ::Nil\n def response? : ::Bool\n # TC: the answer did not fit in the datagram and is to be asked again\n # over TCP. Its records are not read: what is there is a fragment.\n def truncated? : ::Bool\nend\n\n# What a host name may be, and the names a short one stands for.\npub struct DnsName\n # The fully qualified names a lookup of *name* asks for, in order, as\n # resolv.conf(5) says: a name ending in `.` is only itself; one with at\n # least *ndots* dots is tried as it is first and then under each search\n # domain; one with fewer is tried under each search domain first and as\n # it is last. A candidate longer than a name can be is left out.\n def self.candidates(name : String, search : Array(String), ndots : Int32) : Array(String)\n def initialize\n # *name* without the trailing dot that makes it absolute.\n def self.relative(name : String) : String\n # Two names are the same name in any case (RFC 4343), with or without\n # the trailing dot.\n def self.same?(a : String, b : String) : ::Bool\n # A host name as RFC 1123 and glibc's `res_hnok` read one: labels of 1 to\n # 63 letters, digits, `-` and `_`, no label starting with `-`, at most\n # 253 characters, one trailing dot allowed. The last label must not be\n # all digits (RFC 3696 2: no top-level domain is), so `999.1.1.1` and\n # `1.2.3` stay what the numeric parser refuses rather than becoming\n # questions to a name server.\n def self.valid?(name : String) : ::Bool\n # Why *name* is not a host name, or nil when it is.\n def self.why(name : String) : String | ::Nil\nend\n\n# One resource record from an answer section.\npub struct DnsRecord\n # The character-strings of a TXT record's data (RFC 1035 3.3.14), each\n # a length byte and that many bytes; nil when the last one runs past the\n # data. A record holds one or more, and `Resolver#txt` joins them, as\n # SPF (RFC 7208 3.3) and DKIM read a record of several.\n def self.character_strings(data : Bytes) : Array(String) | ::Nil\n # The record's data as it came: four bytes for an A record, sixteen for\n # an AAAA, the encoded name for a CNAME.\n def data : Bytes\n def initialize(name : String, type : Int32, record_class : Int32, ttl : UInt32, data : Bytes, target : String)\n def name : String\n def record_class : Int32\n # A CNAME's target, read with compression; empty for any other type.\n def target : String\n def ttl : UInt32\n def type : Int32\nend\n\n# The hosts file: an address, then the names it answers for.\npub struct HostsFile\n def initialize\n # The addresses *text* gives *name*, as written and in the file's order:\n # every line whose names include it, in any case and with or without a\n # trailing dot. A line with an address and no name says nothing.\n def self.lookup(text : String, name : String) : Array(String)\nend\n\n# `/etc/resolv.conf`, as resolv.conf(5) describes it and glibc reads it.\npub struct ResolvConf\n def attempts : Int32\n def initialize(nameservers : Array(String) = [] of String, search : Array(String) = [] of String, ndots : Int32 = 1, timeout_ms : Int32 = 5000, attempts : Int32 = 2)\n # Each an address as written - IPv4, or IPv6 without a zone - optionally\n # with a port (`192.0.2.1:5353`, `[2001:db8::1]:5353`), which\n # resolv.conf itself never has and a resolver built in a program may.\n def nameservers : Array(String)\n def ndots : Int32\n # The keywords glibc reads: `nameserver`, `domain`, `search` (the later\n # of `domain` and `search` wins, as there) and `options` with `ndots:`,\n # `timeout:` (seconds) and `attempts:`, each held to glibc's bounds - 15,\n # 30 and 5. A `#` or `;` starts a comment. Anything else is ignored, as\n # glibc ignores it: a file other programs read too is not this module's\n # to refuse.\n def self.parse(text : String) : ResolvConf\n def search : Array(String)\n def timeout_ms : Int32\nend\n\n# What SVCB resolution (RFC 9460 section 3) of a service came to: the\n# ServiceMode records found, by priority, and the name they were asked\n# at - the service's own, or the target of the last AliasMode record\n# followed (`aliases` of them). No records is resolution that found no\n# endpoint; where `aliases` is above 0 the name is still one to connect\n# to (section 3's last endpoint), and \".\" says the service is not there\n# (section 2.5.1). `Resolver#https_records` answers one.\npub struct SvcbAnswer\n def aliases : Int32\n def initialize(name : String, aliases : Int32, records : Array(SvcbRecord))\n def name : String\n def records : Array(SvcbRecord)\n # An AliasMode record's target was \".\": the service says it is not there.\n def unavailable? : ::Bool\nend\n\n# One SVCB or HTTPS record's data (RFC 9460 section 2.2): its SvcPriority,\n# its TargetName, and its SvcParams by key.\n#\n# A priority of 0 is AliasMode - the service is at *target*'s records of\n# the same type, and the params mean nothing (section 2.4.2) - and any\n# other ServiceMode, *target* an endpoint and the params how to reach it,\n# a smaller priority preferred. The target is written out without its\n# trailing dot, and is \".\" for the root, which in ServiceMode stands for\n# the record's owner (`endpoint`, section 2.5.2) and in AliasMode says\n# the service is not there (section 2.5.1).\n#\n# What `parse` refuses as malformed, with `DnsError#malformed?`: what\n# section 2.2 has a client refuse - a param cut short by the end of the\n# data, keys out of strictly increasing order, a key twice - a target\n# that is compressed (it must not be, section 2.2) or holds a label with\n# a dot in it (see `DnsMessage.read_name`), and a value of a key it\n# reads that is not of its key's form (sections 7.1 to 7.4, and RFC 9848\n# 3's ech): mandatory a list of keys in increasing order that does not\n# list itself, alpn one or more ids of 1 to 255 bytes filling the value,\n# no-default-alpn empty, port two bytes, ipv4hint and ipv6hint one or\n# more addresses, ech an ECHConfigList whose length prefix is its own.\n# So is a record that is not self-consistent (section 2.4.3): a key\n# mandatory lists that it does not carry, no-default-alpn without alpn.\n# Section 2.2 then has the whole RRset refused, which `Resolver` does.\n# A key past ech is kept as its bytes, whatever they are.\n#\n# `to_s` is the record's data in presentation format as dig 9.20 prints it,\n# for reading the record while debugging: bench/std_dns_exercise.sh holds\n# the two to the same text, record by record.\npub struct SvcbRecord\n # AliasMode: the service is at the target's records of the same type.\n def alias? : ::Bool\n # The alpn-ids of `alpn` (section 7.1), in their order; none without it.\n def alpn : Array(String)\n # The ECHConfigList of `ech` (RFC 9848 3), length prefix and all, as\n # std/tls's `TlsConfig#ech_configs` takes it; nil without it.\n def ech : Bytes | ::Nil\n # The host a ServiceMode record's endpoint is: the target, or the\n # record's owner when the target is \".\" (section 2.5.2).\n def endpoint : String\n def initialize(owner : String, priority : Int32, target : String, keys : Array(Int32), values : Array(Bytes))\n # The addresses of `ipv4hint` and `ipv6hint` (section 7.3), four bytes\n # and sixteen each, as they came.\n def ipv4hint : Array(Bytes)\n # Sixteen bytes as BIND's inet_ntop writes them, which is RFC 5952's\n # form with one more rule: the longest run of two or more zero groups,\n # the first of equal ones, as `::`; and an address whose first six\n # groups are zero, or five zero and then ffff, ending in its last four\n # bytes dotted - `::1.2.3.4`, `::ffff:192.0.2.1` - though not `::` and\n # `::1`, whose run of zeros is longer.\n def self.ipv6_text(address : Bytes) : String\n def ipv6hint : Array(Bytes)\n # *key*'s name in presentation format: one of `NAMES`, or `keyNNNNN`\n # (section 2.1).\n def self.key_name(key : Int32) : String\n # The keys in their order, which is increasing, and each one's value as\n # it came.\n def keys : Array(Int32)\n # The keys `mandatory` lists (section 8); none without it.\n def mandatory : Array(Int32)\n # Whether the scheme's default protocols are left out of the record's\n # (section 7.1): http/1.1, for HTTPS.\n def no_default_alpn? : ::Bool\n # The name the record was found at: what a ServiceMode target of \".\"\n # stands for.\n def owner : String\n # The record in *data*, found at *owner*; or why it is malformed (see\n # the struct).\n def self.parse(data : Bytes, owner : String = \"\") : SvcbRecord | DnsError\n # The port the endpoint is reached on (section 7.2); nil for the\n # origin's own.\n def port : Int32 | ::Nil\n def priority : Int32\n # *data* in pieces of *width* bytes; none for nil.\n def self.split(data : Bytes | ::Nil, width : Int32) : Array(Bytes)\n def target : String\n # The record's data in presentation format (section 2.1), as dig 9.20\n # writes it: the priority; the target, absolute, its bytes escaped as\n # BIND escapes a name's; then each param in the order it came, by its\n # name - alpn's ids quoted and joined by commas, a comma in one written\n # `\\\\,` and a backslash `\\\\\\\\`; port in decimal; the hints as addresses,\n # IPv6 as BIND's inet_ntop writes one (`SvcbRecord.ipv6_text`); ech in\n # Base64; a key this module does not read as `keyNNNNN` and its value\n # quoted, or alone when it is empty. Inside quotes a byte outside\n # printable ASCII is `\\DDD`, in decimal; alpn's ids take a space so too,\n # and the generic form takes it as it is (dig 9.20.24, measured).\n def to_s : String\n # The value of *key*, or nil when the record does not carry it.\n def value(key : Int32) : Bytes | ::Nil\n def values : Array(Bytes)\n # One byte of an alpn-id, inside the quotes: the list's own escapes (RFC\n # 9460 appendix A.1) under the quoted string's.\n def self.write_alpn_byte(text : String::Builder, byte : UInt8) : Nil\n # *name*, absolute, as BIND writes one: `\"`, `(`, `)`, `;`, `\\`, `@`\n # and `$` after a backslash, a byte outside printable ASCII as `\\DDD`.\n def self.write_name(text : String::Builder, name : String) : Nil\n # One byte of a value in the generic form, inside the quotes.\n def self.write_quoted_byte(text : String::Builder, byte : UInt8) : Nil\nend\n\nimpl Error for DnsError\n def message : String\nend\n" }, { "name": "std/ecdsa", "path": "src/std/ecdsa.iyi", - "sourceSha256": "f03b7a2eb1d7e257fb04f8a0a2cd787550f4f31ea2b1fd7ea1a212fafc1c0317", + "sourceSha256": "29ecb1c042308053d33ee2fc0289839f8a96ca4e5c6f36815c8f379fb3c57399", "surface": "module std/ecdsa\n\n# The curves a key can be on.\npub enum EcdsaCurve : Int32\n P256 = 0\n P384 = 1\n P521 = 2\n # The length of the group's order n in bits.\n def bits : Int32\n def self.from_oid(oid : String) : EcdsaCurve | ::Nil\n # The curve's OID, as a key's AlgorithmIdentifier names it.\n def oid : String\n # The bytes a coordinate, or a scalar, is written in.\n def size : Int32\nend\n\n# What reading a key answers for bytes that are not an ECDSA public key.\npub struct EcdsaError\n def initialize(message : String)\n def to_s : String\nend\n\n# The hashes a signature is made over.\npub enum EcdsaHash : Int32\n SHA256 = 0\n SHA384 = 1\n SHA512 = 2\n def digest(data : Array(UInt8)) : Array(UInt8)\nend\n\npub struct EcdsaPublicKey\n def curve : EcdsaCurve\n # The key from a point in SEC 1's uncompressed encoding (section 2.3.3):\n # 0x04, then x and y big-endian at the curve's width.\n def self.from_point(curve : EcdsaCurve, point : Array(UInt8)) : EcdsaPublicKey | EcdsaError\n # A SubjectPublicKeyInfo (RFC 5280 section 4.1.2.7) naming\n # id-ecPublicKey and one of the three curves (RFC 5480 section 2.1.1).\n def self.from_spki(der : Array(UInt8)) : EcdsaPublicKey | EcdsaError\n def self.from_spki(value : DerValue) : EcdsaPublicKey | EcdsaError\n def initialize(curve : EcdsaCurve, x : BigInt, y : BigInt, group : EcdsaGroup)\n # Whether *signature*, the DER of an Ecdsa-Sig-Value, is this key's\n # signature of *message* under *hash*.\n def verify(hash : EcdsaHash, message : Array(UInt8) | String, signature : Array(UInt8)) : Bool\n def x : BigInt\n def y : BigInt\nend\n\nimpl Error for EcdsaError\n def message : String\nend\n" }, { @@ -203,7 +215,7 @@ "name": "std/file", "path": "src/std/file.iyi", "sourceSha256": "356dadb8c25c92194b4438cb0c8891fc4758042e8c3d8e7c25c58952e94643bb", - "surface": "module std/file\n\npub alias File = ::File\n\nclass ::File\n def self.basename(path : String | Path, suffix : String | ::Nil = nil) : String\n def self.chmod(path : String | Path, mode : Int32) : Nil\n def self.chown(path : String | Path, uid : Int32, gid : Int32) : Nil\n def self.directory?(path : String | Path) : Bool\n def self.dirname(path : String | Path) : String\n # A line at a time, off the file as it is read: it read the whole file\n # into an array of its lines first, so a log of any size was the\n # program's memory twice over before the first line was seen. Lines as\n # `read_lines` gives them, without their `\\n` or a `\\r` before it.\n def self.each_line(path : String | Path, &block : (String -> Nil)) : Nil\n def self.empty?(path : String | Path) : Bool\n # On Windows a file runs by its extension, one of PATHEXT's - what cmd\n # and `CreateProcess`'s search go by - and a directory is searchable\n # when it can be read. `cmd.exe` answered false: the made-up mode gave\n # the execute bit to directories alone.\n def self.executable?(path : String | Path) : Bool\n def self.expand_path(path : String | Path, base : String | ::Nil = nil) : String\n def self.extname(path : String | Path) : String\n def self.file?(path : String | Path) : Bool\n def self.info(path : String | Path, follow_symlinks : Bool = true) : Info\n def self.info?(path : String | Path, follow_symlinks : Bool = true) : Info | ::Nil\n def self.join(first : String | Path, second : String | Path, third : String | Path) : String\n def self.join(first : String | Path, second : String | Path) : String\n def self.join(parts : Array(String)) : String\n def self.link(old_path : String | Path, new_path : String | Path) : Nil\n # Whether *path* matches the shell-style *pattern*: `*` any run of\n # characters within a segment, `**` any run of segments (a whole\n # segment of the pattern), `?` one character but a separator, `[abc]`,\n # `[a-z]` and `[^...]` one character of a set, `{a,b}` one of the\n # branches (nested to ten), and `\\` the next character literally. Only\n # `/` in the pattern matches a separator. On Windows a name's `\\` is a\n # separator as well, and a pattern's `\\` is one too rather than an\n # escape: `Dir.glob` answers with either.\n #\n # The other library's algorithm (a port of the glob-match crate, after\n # research.swtch.com/glob), linear in the name but for braces. This\n # had `*` and `?` alone, byte by byte: `*` crossed separators, `?` took\n # half of a two-byte character, `[a]` and `{a,b}` were literal text,\n # and `*a*a*a*a*a*a*a*a*a*a*b` against forty `a`s did not finish.\n def self.match?(path : String | Path, pattern : String) : Bool\n def self.read_lines(path : String | Path) : Array(String)\n def self.readable?(path : String | Path) : Bool\n def self.readlink(path : String | Path) : String\n def self.real_path(path : String | Path) : String\n def self.rename(old_path : String | Path, new_path : String | Path) : Nil\n def self.same?(path1 : String | Path, path2 : String | Path) : Bool\n def self.same_content?(path1 : String | Path, path2 : String | Path) : Bool\n def self.size(path : String | Path) : Int64\n def self.symlink(old_path : String | Path, new_path : String | Path) : Nil\n def self.symlink?(path : String | Path) : Bool\n # A new, empty file in the temporary directory, and its path.\n #\n # Made with an exclusive create - `O_CREAT | O_EXCL`, `CREATE_NEW` on\n # Windows - which fails when anything is at the path, a symlink\n # included, rather than asked whether something is there and written\n # after. The name was the process id and a counter, and the file was\n # written wherever the path led if nothing was there when asked: a\n # symlink planted at the next name in a shared `/tmp` between the\n # question and the write sent an upload wherever its owner pointed it.\n # The name is sixteen hex digits of the system's randomness now, so it\n # cannot be planted in advance either; Windows' `%TEMP%` belongs to the\n # user, and there the create's refusal is the guarantee and the name\n # needs only to be new. The file is the owner's alone, mode 0600.\n def self.tempfile(prefix : String = \"tmp\", suffix : String = \"\") : String\n # The file is deleted after the block if it is still there: the block\n # may have renamed it into place - write to a temporary name, then\n # rename, is what the name is for - and `delete` of a path that is gone\n # panicked after the block had done its work.\n def self.tempfile(prefix : String = \"tmp\", suffix : String = \"\", &block : (String -> Nil)) : Nil\n # *time* 0 is \"now\"; any other value is the Unix second both atime and\n # mtime are set to.\n #\n # The darwin branch passed a null `times` to `utimes`, which is the\n # kernel's spelling of \"now\" — so `touch(path, 1)` set the clock's time\n # there and the epoch second on Linux, one name with two behaviours\n # decided by the platform (SPEC.md III.1.7a). It writes the pair now, in\n # the same shape the Linux branch writes its `timespec`s: `timeval` is an\n # `Int64` second and an `Int32` microsecond padded to eight, so four\n # `Int64` slots are the two structures and the odd slots are the\n # microseconds, zero.\n def self.touch(path : String | Path, time : Int64 = 0_i64) : Nil\n def self.touch?(path : String | Path, time : Int64 = 0_i64) : Bool\n def self.truncate(path : String | Path, size : Int64 = 0_i64) : Nil\n # Why the last call failed, in Windows' own words. A message that names\n # only what was attempted — \"Cannot symlink A to B\" — leaves the caller\n # with nothing to act on, and on Windows the difference between \"a\n # required privilege is not held\" and \"the file already exists\" is the\n # difference between a machine setting and a bug in the program. The\n # code is kept beside the text because the text is localised and the\n # number is not.\n #\n # FORMAT_MESSAGE_FROM_SYSTEM is 0x1000 and FORMAT_MESSAGE_IGNORE_INSERTS\n # 0x200: without the second, a message with an insert in it fails rather\n # than printing the placeholder. Windows ends these sentences with CRLF\n # and sometimes a trailing space, which is a line break in the middle of\n # a panic, so the tail comes off. `std/dir`'s refusals say it too.\n def self.win_error : String\n def self.writable?(path : String | Path) : Bool\nend\n\nstruct ::File::Flags\n def initialize(value : Int32 = 0)\n def set_group? : Bool\n def set_user? : Bool\n def sticky? : Bool\n def value : Int32\nend\n\nstruct ::File::Info\n def dev : Int64\n def directory? : Bool\n def executable? : Bool\n def file? : Bool\n def flags : Flags\n def group_id : String\n def initialize(size : Int64, permissions : Permissions, type : Type, flags : Flags, modification_time : Int64, owner_id : String, group_id : String, dev : Int64 = 0_i64, ino : UInt64 = 0_u64)\n def ino : UInt64\n def modification_time : Int64\n def owner_id : String\n def permissions : Permissions\n def readable? : Bool\n # An identity of 0 is none: Windows answers a path it could not open\n # with the attributes alone (`info?`), and two such files - different\n # sizes, different contents - were the same file.\n def same_file?(other : Info) : Bool\n def size : Int64\n def symlink? : Bool\n def type : Type\n def writable? : Bool\nend\n\nstruct ::File::Permissions\n def group_execute? : Bool\n def group_read? : Bool\n def group_write? : Bool\n def initialize(value : Int32)\n def other_execute? : Bool\n def other_read? : Bool\n def other_write? : Bool\n def owner_execute? : Bool\n def owner_read? : Bool\n def owner_write? : Bool\n def to_i : Int32\n def to_s(io : IO) : Nil\n def to_s : String\n def value : Int32\nend\n\nenum ::File::Type : UInt8\n # Returns `true` if this enum value equals `BlockDevice`\n def block_device? : Bool\n # Returns `true` if this enum value equals `CharacterDevice`\n def character_device? : Bool\n def device? : Bool\n # Returns `true` if this enum value equals `Directory`\n def directory? : Bool\n # Returns `true` if this enum value equals `File`\n def file? : Bool\n # Returns `true` if this enum value equals `Pipe`\n def pipe? : Bool\n # Returns `true` if this enum value equals `Socket`\n def socket? : Bool\n # Returns `true` if this enum value equals `Symlink`\n def symlink? : Bool\nend\n\nclass ::IyiIO\n # Advisory locks on the whole file, the other library's `flock_*`: a\n # shared one many holders may have at once, an exclusive one a single\n # holder. The holder is this open file - another `File.open` of the same\n # path, in this process or another, is another holder - until\n # `flock_unlock`, or until the file is closed.\n #\n # File.open(\"app.lock\", \"w\") do |f|\n # f.flock_exclusive { run_alone }.or_panic\n # end\n #\n # A lock another holder has is waited for a task at a time: tried again\n # after 1, 2, 4 ... 64 ms, the thread's other tasks running meanwhile,\n # and cancellable. `try_flock_*` answers at once whether it took it.\n #\n # Linux and darwin lock with `flock(2)`, which only other locks heed, and\n # turn a shared lock this file holds into an exclusive one in place.\n # Windows locks every byte with `LockFileEx`, which is mandatory - while\n # one handle holds it exclusively, another handle's reads and writes of\n # the file fail - and counts each lock a handle takes: unlock a shared\n # lock before taking the exclusive one.\n def flock_exclusive : Nil | Cancelled\n # The block's answer, run with the lock held and unlocked after it, even\n # when the block panics.\n def flock_exclusive(&block : (-> R)) : R | Cancelled forall R\n def flock_shared : Nil | Cancelled\n def flock_shared(&block : (-> R)) : R | Cancelled forall R\n # Gives the lock back; one this file does not hold is no error.\n def flock_unlock : Nil\n # The kernel's move: the new offset, or a negative error. A stream with\n # no descriptor - a `Memory` - is -1, which Windows' `to_u64` of it\n # panicked \"arithmetic overflow\" on; it is EBADF everywhere, as Linux's\n # kernel answers it.\n protected def self.lseek(fd : Int64, offset : Int64, whence : Int32) : Int64\n # Bytes from the start to where the next read or write happens.\n def pos : Int64\n def pos=(position : Int64) : Int64\n # Moves to *offset* from the start, from here, or from the end, and\n # answers the new position.\n def seek(offset : Int64, whence : Seek = Seek::Set) : Int64\n def seek(offset : Int32, whence : Seek = Seek::Set) : Int64\n def try_flock_exclusive : Bool\n def try_flock_shared : Bool\nend\n\nenum ::IyiIO::Seek : Int32\nend\n" + "surface": "module std/file\n\npub alias File = ::File\n\n# Linux: the kernel's own calls, as `socket` and the prelude make them\n# (SPEC.md III.9: an own-prelude object asks libc for nothing). The\n# shape is libc's, so the callers above read the same; a failure comes\n# back as the negative errno the kernel answers, which every caller\n# here reads as \"not zero\". `realpath` is a walk over `readlinkat` and\n# `newfstatat`, since libc's is a library function and not a call.\npub struct LibC\n # x86_64 `struct stat`, 144 bytes, the layout glibc shares with the kernel.\n struct Stat\n def initialize\n def st_atime : Timespec\n def st_blksize : Int64\n def st_blocks : Int64\n def st_ctime : Timespec\n def st_dev : UInt64\n def st_gid : Int32\n def st_ino : UInt64\n def st_mode : Int32\n def st_mtime : Timespec\n def st_nlink : UInt64\n def st_pad0 : Int32\n def st_rdev : UInt64\n def st_reserved0 : Int64\n def st_reserved1 : Int64\n def st_reserved2 : Int64\n def st_size : Int64\n def st_uid : Int32\n end\n struct Timespec\n def initialize\n def tv_nsec : Int64\n def tv_sec : Int64\n end\n def self.access(path : ::Pointer(UInt8), mode : Int32) : Int32\n def self.chmod(path : ::Pointer(UInt8), mode : Int32) : Int32\n def self.chown(path : ::Pointer(UInt8), owner : Int32, group : Int32) : Int32\n def self.fstat(fd : Int32, buf : ::Pointer(Stat)) : Int32\n def self.ftruncate(fd : Int32, length : Int64) : Int32\n def initialize\n def self.link(oldpath : ::Pointer(UInt8), newpath : ::Pointer(UInt8)) : Int32\n def self.lstat(path : ::Pointer(UInt8), buf : ::Pointer(Stat)) : Int32\n def self.readlink(path : ::Pointer(UInt8), buf : ::Pointer(UInt8), bufsiz : UInt64) : Int64\n # The absolute path with every `.`, `..` and symbolic link resolved, or\n # null when a component does not exist. Forty links deep is the limit,\n # as it is in libc.\n def self.realpath(path : ::Pointer(UInt8), resolved : ::Pointer(UInt8)) : ::Pointer(UInt8)\n def self.rename(oldpath : ::Pointer(UInt8), newpath : ::Pointer(UInt8)) : Int32\n def self.stat(path : ::Pointer(UInt8), buf : ::Pointer(Stat)) : Int32\n def self.symlink(target : ::Pointer(UInt8), linkpath : ::Pointer(UInt8)) : Int32\n def self.sys(number : Int64, a : Int64, b : Int64, c : Int64, d : Int64 = 0_i64, e : Int64 = 0_i64) : Int64\n def self.truncate(path : ::Pointer(UInt8), length : Int64) : Int32\n # *sec* 0 is \"now\" (a null timespec, as utimensat documents). Otherwise\n # atime and mtime are both that Unix second.\n def self.utimensat(path : ::Pointer(UInt8), sec : Int64) : Int32\nend\n\nclass ::File\n def self.basename(path : String | Path, suffix : String | ::Nil = nil) : String\n def self.chmod(path : String | Path, mode : Int32) : Nil\n def self.chown(path : String | Path, uid : Int32, gid : Int32) : Nil\n def self.directory?(path : String | Path) : Bool\n def self.dirname(path : String | Path) : String\n # A line at a time, off the file as it is read: it read the whole file\n # into an array of its lines first, so a log of any size was the\n # program's memory twice over before the first line was seen. Lines as\n # `read_lines` gives them, without their `\\n` or a `\\r` before it.\n def self.each_line(path : String | Path, &block : (String -> Nil)) : Nil\n def self.empty?(path : String | Path) : Bool\n # On Windows a file runs by its extension, one of PATHEXT's - what cmd\n # and `CreateProcess`'s search go by - and a directory is searchable\n # when it can be read. `cmd.exe` answered false: the made-up mode gave\n # the execute bit to directories alone.\n def self.executable?(path : String | Path) : Bool\n def self.expand_path(path : String | Path, base : String | ::Nil = nil) : String\n def self.extname(path : String | Path) : String\n def self.file?(path : String | Path) : Bool\n def self.info(path : String | Path, follow_symlinks : Bool = true) : Info\n def self.info?(path : String | Path, follow_symlinks : Bool = true) : Info | ::Nil\n def self.join(first : String | Path, second : String | Path, third : String | Path) : String\n def self.join(first : String | Path, second : String | Path) : String\n def self.join(parts : Array(String)) : String\n def self.link(old_path : String | Path, new_path : String | Path) : Nil\n # Whether *path* matches the shell-style *pattern*: `*` any run of\n # characters within a segment, `**` any run of segments (a whole\n # segment of the pattern), `?` one character but a separator, `[abc]`,\n # `[a-z]` and `[^...]` one character of a set, `{a,b}` one of the\n # branches (nested to ten), and `\\` the next character literally. Only\n # `/` in the pattern matches a separator. On Windows a name's `\\` is a\n # separator as well, and a pattern's `\\` is one too rather than an\n # escape: `Dir.glob` answers with either.\n #\n # The other library's algorithm (a port of the glob-match crate, after\n # research.swtch.com/glob), linear in the name but for braces. This\n # had `*` and `?` alone, byte by byte: `*` crossed separators, `?` took\n # half of a two-byte character, `[a]` and `{a,b}` were literal text,\n # and `*a*a*a*a*a*a*a*a*a*a*b` against forty `a`s did not finish.\n def self.match?(path : String | Path, pattern : String) : Bool\n def self.read_lines(path : String | Path) : Array(String)\n def self.readable?(path : String | Path) : Bool\n def self.readlink(path : String | Path) : String\n def self.real_path(path : String | Path) : String\n def self.rename(old_path : String | Path, new_path : String | Path) : Nil\n def self.same?(path1 : String | Path, path2 : String | Path) : Bool\n def self.same_content?(path1 : String | Path, path2 : String | Path) : Bool\n def self.size(path : String | Path) : Int64\n def self.symlink(old_path : String | Path, new_path : String | Path) : Nil\n def self.symlink?(path : String | Path) : Bool\n # A new, empty file in the temporary directory, and its path.\n #\n # Made with an exclusive create - `O_CREAT | O_EXCL`, `CREATE_NEW` on\n # Windows - which fails when anything is at the path, a symlink\n # included, rather than asked whether something is there and written\n # after. The name was the process id and a counter, and the file was\n # written wherever the path led if nothing was there when asked: a\n # symlink planted at the next name in a shared `/tmp` between the\n # question and the write sent an upload wherever its owner pointed it.\n # The name is sixteen hex digits of the system's randomness now, so it\n # cannot be planted in advance either; Windows' `%TEMP%` belongs to the\n # user, and there the create's refusal is the guarantee and the name\n # needs only to be new. The file is the owner's alone, mode 0600.\n def self.tempfile(prefix : String = \"tmp\", suffix : String = \"\") : String\n # The file is deleted after the block if it is still there: the block\n # may have renamed it into place - write to a temporary name, then\n # rename, is what the name is for - and `delete` of a path that is gone\n # panicked after the block had done its work.\n def self.tempfile(prefix : String = \"tmp\", suffix : String = \"\", &block : (String -> Nil)) : Nil\n # *time* 0 is \"now\"; any other value is the Unix second both atime and\n # mtime are set to.\n #\n # The darwin branch passed a null `times` to `utimes`, which is the\n # kernel's spelling of \"now\" — so `touch(path, 1)` set the clock's time\n # there and the epoch second on Linux, one name with two behaviours\n # decided by the platform (SPEC.md III.1.7a). It writes the pair now, in\n # the same shape the Linux branch writes its `timespec`s: `timeval` is an\n # `Int64` second and an `Int32` microsecond padded to eight, so four\n # `Int64` slots are the two structures and the odd slots are the\n # microseconds, zero.\n def self.touch(path : String | Path, time : Int64 = 0_i64) : Nil\n def self.touch?(path : String | Path, time : Int64 = 0_i64) : Bool\n def self.truncate(path : String | Path, size : Int64 = 0_i64) : Nil\n def self.writable?(path : String | Path) : Bool\nend\n\nstruct ::File::Flags\n def initialize(value : Int32 = 0)\n def set_group? : Bool\n def set_user? : Bool\n def sticky? : Bool\n def value : Int32\nend\n\nstruct ::File::Info\n def dev : Int64\n def directory? : Bool\n def executable? : Bool\n def file? : Bool\n def flags : Flags\n def group_id : String\n def initialize(size : Int64, permissions : Permissions, type : Type, flags : Flags, modification_time : Int64, owner_id : String, group_id : String, dev : Int64 = 0_i64, ino : UInt64 = 0_u64)\n def ino : UInt64\n def modification_time : Int64\n def owner_id : String\n def permissions : Permissions\n def readable? : Bool\n # An identity of 0 is none: Windows answers a path it could not open\n # with the attributes alone (`info?`), and two such files - different\n # sizes, different contents - were the same file.\n def same_file?(other : Info) : Bool\n def size : Int64\n def symlink? : Bool\n def type : Type\n def writable? : Bool\nend\n\nstruct ::File::Permissions\n def group_execute? : Bool\n def group_read? : Bool\n def group_write? : Bool\n def initialize(value : Int32)\n def other_execute? : Bool\n def other_read? : Bool\n def other_write? : Bool\n def owner_execute? : Bool\n def owner_read? : Bool\n def owner_write? : Bool\n def to_i : Int32\n def to_s(io : IO) : Nil\n def to_s : String\n def value : Int32\nend\n\nenum ::File::Type : UInt8\n # Returns `true` if this enum value equals `BlockDevice`\n def block_device? : Bool\n # Returns `true` if this enum value equals `CharacterDevice`\n def character_device? : Bool\n def device? : Bool\n # Returns `true` if this enum value equals `Directory`\n def directory? : Bool\n # Returns `true` if this enum value equals `File`\n def file? : Bool\n # Returns `true` if this enum value equals `Pipe`\n def pipe? : Bool\n # Returns `true` if this enum value equals `Socket`\n def socket? : Bool\n # Returns `true` if this enum value equals `Symlink`\n def symlink? : Bool\nend\n\nclass ::IyiIO\n # Advisory locks on the whole file, the other library's `flock_*`: a\n # shared one many holders may have at once, an exclusive one a single\n # holder. The holder is this open file - another `File.open` of the same\n # path, in this process or another, is another holder - until\n # `flock_unlock`, or until the file is closed.\n #\n # File.open(\"app.lock\", \"w\") do |f|\n # f.flock_exclusive { run_alone }.or_panic\n # end\n #\n # A lock another holder has is waited for a task at a time: tried again\n # after 1, 2, 4 ... 64 ms, the thread's other tasks running meanwhile,\n # and cancellable. `try_flock_*` answers at once whether it took it.\n #\n # Linux and darwin lock with `flock(2)`, which only other locks heed, and\n # turn a shared lock this file holds into an exclusive one in place.\n # Windows locks every byte with `LockFileEx`, which is mandatory - while\n # one handle holds it exclusively, another handle's reads and writes of\n # the file fail - and counts each lock a handle takes: unlock a shared\n # lock before taking the exclusive one.\n def flock_exclusive : Nil | Cancelled\n # The block's answer, run with the lock held and unlocked after it, even\n # when the block panics.\n def flock_exclusive(&block : (-> R)) : R | Cancelled forall R\n def flock_shared : Nil | Cancelled\n def flock_shared(&block : (-> R)) : R | Cancelled forall R\n # Gives the lock back; one this file does not hold is no error.\n def flock_unlock : Nil\n # The kernel's move: the new offset, or a negative error. A stream with\n # no descriptor - a `Memory` - is -1, which Windows' `to_u64` of it\n # panicked \"arithmetic overflow\" on; it is EBADF everywhere, as Linux's\n # kernel answers it.\n protected def self.lseek(fd : Int64, offset : Int64, whence : Int32) : Int64\n # Bytes from the start to where the next read or write happens.\n def pos : Int64\n def pos=(position : Int64) : Int64\n # Moves to *offset* from the start, from here, or from the end, and\n # answers the new position.\n def seek(offset : Int64, whence : Seek = Seek::Set) : Int64\n def seek(offset : Int32, whence : Seek = Seek::Set) : Int64\n def try_flock_exclusive : Bool\n def try_flock_shared : Bool\nend\n\nenum ::IyiIO::Seek : Int32\nend\n" }, { "name": "std/file_utils", @@ -247,6 +259,12 @@ "sourceSha256": "b360a4741701255597bd44285eab9b6577e63afd86cdc4425f8008b21a3a781c", "surface": "module std/hpack\n\npub alias Bytes = Std::Slice::Bytes\n\npub class Decoder\n def decode(payload : Bytes) : Array(HeaderField) | HpackError\n def dynamic_table : DynamicTable\n def initialize(max_table_size : Int32 = 4096, protocol_max_table_size : Int32 = 4096, max_header_list_size : Int32 = 65536, max_header_count : Int32 = 1000)\n def max_header_count : Int32\n def max_header_count=(value : Int32) : Int32\n def max_header_list_size : Int32\n def max_header_list_size=(value : Int32) : Int32\n def protocol_max_table_size : Int32\n # A SETTINGS_HEADER_TABLE_SIZE change reaches the table too: the limit\n # was only this field's, and the table went on refusing an update above\n # the size it was made with.\n def protocol_max_table_size=(limit : Int32) : Nil\nend\n\npub class DynamicTable\n def add(name : String, value : String, never_indexed : Bool = false) : Nil\n def add(field : HeaderField) : Nil\n def empty? : Bool\n def entries : Array(HeaderField)\n def find(name : String, value : String) : Tuple(Int32, Bool)\n def find_name(name : String) : Int32\n def get(relative_index : Int32) : HeaderField | ::Nil\n # A table is made within the limit it is resized within: made above it,\n # an encoder's table outgrew the peer's, and an Encoder made with 8192\n # sent blocks a default Decoder refused (\"Index 121 out of range (max:\n # 103)\") while `set_max_size(8192)` on it was refused.\n def initialize(max_size : Int32 = 4096, settings_max_size : Int32 = 4096)\n def length : Int32\n def max_size : Int32\n def set_max_size(new_max : Int32) : Nil | HpackError\n def settings_max_size : Int32\n # The protocol's limit (SETTINGS_HEADER_TABLE_SIZE) as it changes during\n # a connection; the size in use still moves only by `set_max_size`.\n def settings_max_size=(limit : Int32) : Nil\n def size : Int32\n def self.size_error(new_max : Int32, limit : Int32) : HpackError | ::Nil\nend\n\npub class Encoder\n def dynamic_table : DynamicTable\n def encode(headers : Array(HeaderField), force_huffman : Bool | ::Nil = nil) : Bytes\n def initialize(max_table_size : Int32 = 4096, protocol_max_table_size : Int32 = 4096, use_huffman : Bool = true)\n def protocol_max_table_size : Int32\n # A SETTINGS_HEADER_TABLE_SIZE change reaches the table too: the limit\n # was only this field's, so a raised one was refused by the table and a\n # lowered one left the table above it (RFC 7541 4.2), with no update.\n # A lowered limit is always signalled: the peer's table may still be the\n # size the old limit let it start at, which this encoder never sent.\n def protocol_max_table_size=(limit : Int32) : Nil\n def set_max_table_size(new_max : Int32) : Nil | HpackError\n def use_huffman : Bool\n def use_huffman=(value : Bool) : Bool\nend\n\npub struct HeaderField\n def ==(other : HeaderField) : Bool\n def indexing : IndexingMode\n def initialize(name : String, value : String, indexing : IndexingMode = IndexingMode::Incremental)\n def initialize(name : String, value : String, never_indexed : Bool)\n def name : String\n def never_indexed : Bool\n def size : Int32\n def to_s : String\n def value : String\nend\n\npub struct HpackError\n def initialize(message : String)\n def to_s : String\nend\n\npub class Huffman\n def self.decode(bytes : Bytes, offset : Int32, length : Int32) : String | HpackError\n def self.decode(bytes : Bytes) : String | HpackError\n def self.encode(input : String, buffer : Array(UInt8)) : Nil\n def self.encode(input : String) : Bytes\n def self.encode(input : Bytes) : Bytes\n def self.encoded_size(input : String) : Int32\nend\n\npub struct IndexingMode\n def ==(other : IndexingMode) : Bool\n def initialize(value : Int32)\n def value : Int32\nend\n\npub class Integer\n def self.decode(bytes : Bytes, offset : Int32, prefix_bits : Int32) : Tuple(UInt64, Int32) | HpackError\n def self.encode(val : UInt64, prefix_bits : Int32, prefix_byte : UInt8, buffer : Array(UInt8)) : Nil\n def self.encode(val : UInt64, prefix_bits : Int32, prefix_byte : UInt8 = 0_u8) : Bytes\nend\n\npub alias IntegerCodec = Integer\n\npub class StaticTable\n def self.find(name : String, value : String) : Tuple(Int32, Bool)\n def self.find_name(name : String) : Int32\n def self.get(index : Int32) : HeaderField | ::Nil\n def self.size : Int32\nend\n\npub class Table\n def self.find(dynamic_table : DynamicTable, name : String, value : String) : Tuple(Int32, Bool)\n def self.find_name(dynamic_table : DynamicTable, name : String) : Int32\n def self.get(dynamic_table : DynamicTable, global_index : Int32) : HeaderField | ::Nil\nend\n\nimpl Error for HpackError\n def message : String\nend\n" }, + { + "name": "std/hpke", + "path": "src/std/hpke.iyi", + "sourceSha256": "5435d94d48664066af94dd296f2ca5dad22025223f78530a40001a6863f66ccc", + "surface": "module std/hpke\n\n# The AEADs, by their code points (section 7.3, table 5).\npub enum HpkeAead : Int32\n Aes128Gcm = 1\n Aes256Gcm = 2\n ChaCha20Poly1305 = 3\n ExportOnly = 65535\n # Nk: the bytes of a key; none for export-only.\n def key_size : Int32\n def name : String\n # Nn: the bytes of a nonce; none for export-only.\n def nonce_size : Int32\n # Nt: the bytes of a tag; none for export-only.\n def tag_size : Int32\nend\n\n# What is wrong with an encapsulation, a key, a ciphertext or a suite from\n# outside, or a context out of nonces: `message` is the sentence.\npub struct HpkeError\n def initialize(message : String)\n def to_s : String\nend\n\n# The KDFs, by their code points (section 7.2, table 3).\npub enum HpkeKdf : Int32\n HkdfSha256 = 1\n HkdfSha384 = 2\n HkdfSha512 = 3\n # HKDF-Expand (RFC 5869 section 2.3) of *prk* to *length* bytes.\n def expand(prk : Array(UInt8), info : Array(UInt8), length : Int32) : Array(UInt8)\n # Nh: the bytes of the hash's output.\n def hash_size : Int32\n # HMAC under the hash, keyed with *key*.\n def mac(key : String | Array(UInt8)) : HMAC\n def name : String\nend\n\n# The KEMs, by their code points (section 7.1, table 2).\npub enum HpkeKem : Int32\n P256Sha256 = 16\n P384Sha384 = 17\n X25519Sha256 = 32\n # Decap, or AuthDecap when *sender_public* is given (section 4.1): the\n # shared secret *enc* carries to *key*, or an `HpkeError` for an *enc*\n # of the wrong length, not a point of the curve, or of small order.\n def decapsulate(key : HpkePrivateKey, enc : String | Array(UInt8), sender_public : HpkePublicKey | Nil = nil) : Array(UInt8) | HpkeError\n # Encap, or AuthEncap when *sender_key* is given (section 4.1): the\n # encapsulation, enc, and the shared secret, from the ephemeral key\n # DeriveKeyPair makes of *randomness* (at least Nsk bytes). An\n # `HpkeError` when a Diffie-Hellman step is refused: *recipient* is an\n # X25519 key of small order.\n def encapsulate(recipient : HpkePublicKey, randomness : String | Array(UInt8), sender_key : HpkePrivateKey | Nil = nil) : ::Tuple(Array(UInt8), Array(UInt8)) | HpkeError\n # The KDF the KEM's own steps use (section 4.1), whatever the suite's.\n def kdf : HpkeKdf\n # RFC 9180's name for it.\n def name : String\n # Nsk: the bytes of a serialised private key.\n def private_key_size : Int32\n # Nenc and Npk, which are the same: a serialised public key.\n def public_key_size : Int32\n # Nsecret: the bytes of a shared secret, the KEM's hash's.\n def secret_size : Int32\nend\n\n# The four modes of section 5, by the byte the key schedule binds.\npub enum HpkeMode : Int32\n Base = 0\n Psk = 1\n Auth = 2\n AuthPsk = 3\nend\n\n# A KEM's private key and the public key that goes with it.\npub struct HpkePrivateKey\n # DH(sk, pk) of section 4.1 with the serialised public key *peer*: the\n # X25519 secret, or the x-coordinate of the product on P-256 and P-384.\n # An `HpkeError` for a peer of the wrong length, a point not on the\n # curve, or an all-zero X25519 secret (section 7.1.4).\n def agree(peer : String | Array(UInt8)) : Array(UInt8) | HpkeError\n # SerializePrivateKey: the 32 bytes of an X25519 key, clamped; the\n # scalar of a P-256 or P-384 key, 32 or 48 bytes big-endian.\n def bytes : Array(UInt8)\n # DeriveKeyPair (section 7.1.3): the key pair of *ikm*, at least Nsk\n # bytes, under the KEM's own KDF. For P-256 and P-384, candidates are\n # drawn until one is in [1, n - 1].\n def self.derive(kem : HpkeKem, ikm : String | Array(UInt8)) : HpkePrivateKey\n # DeserializePrivateKey: the key *bytes* are, or an `HpkeError` for the\n # wrong length or, on P-256 and P-384, a scalar not in [1, n - 1]. An\n # X25519 key is clamped (section 7.1.2).\n def self.from_bytes(kem : HpkeKem, bytes : String | Array(UInt8)) : HpkePrivateKey | HpkeError\n def initialize(kem : HpkeKem, public_key : HpkePublicKey, secret : Array(UInt8), curve : P256PrivateKey | P384PrivateKey | Nil)\n def kem : HpkeKem\n def public_key : HpkePublicKey\nend\n\n# A KEM's public key, serialised as section 7.1.1 has it.\npub struct HpkePublicKey\n # SerializePublicKey: 32 bytes for X25519, the uncompressed point for\n # P-256 (65) and P-384 (97).\n def bytes : Array(UInt8)\n # DeserializePublicKey, validated: the key *bytes* are, or an\n # `HpkeError` for the wrong length or a point not on the curve.\n def self.from_bytes(kem : HpkeKem, bytes : String | Array(UInt8)) : HpkePublicKey | HpkeError\n def initialize(kem : HpkeKem, bytes : Array(UInt8))\n def kem : HpkeKem\nend\n\n# The recipient's context (section 5.2): messages opened at sequence 0, 1,\n# 2 and on, and secrets exported, the same ones the sender's exports.\npub class HpkeRecipient\n # Skips the sequence forward to *sequence*, never back: a message lost\n # in between is not opened.\n def advance_to(sequence : UInt128) : Nil\n # Context.Export (section 5.3).\n def export(exporter_context : String | Array(UInt8), length : Int32) : Array(UInt8)\n def initialize(cipher : HpkeCipher)\n # The mode the context was set up in, by the inputs given.\n def mode : HpkeMode\n # ContextR.Open: the plaintext of *ciphertext* at the next nonce, or an\n # `HpkeError` - its tag does not match, or the sequence is at 2^96 - 1 -\n # with the sequence left where it was.\n def open(ciphertext : String | Array(UInt8), aad : String | Array(UInt8) = \"\") : String | HpkeError\n # The sequence number the next message is opened at.\n def sequence : UInt128\nend\n\n# The sender's context (section 5.2): `enc` for the recipient, then\n# messages sealed at sequence 0, 1, 2 and on, and secrets exported.\npub class HpkeSender\n # Skips the sequence forward to *sequence*, never back, so no nonce is\n # used twice: for a protocol that numbers its messages itself.\n def advance_to(sequence : UInt128) : Nil\n # The encapsulation the recipient sets its context up from.\n def enc : Array(UInt8)\n # Context.Export (section 5.3): *length* bytes, at most 255 hashes,\n # bound to *exporter_context*.\n def export(exporter_context : String | Array(UInt8), length : Int32) : Array(UInt8)\n def initialize(enc : Array(UInt8), cipher : HpkeCipher)\n # The mode the context was set up in, by the inputs given.\n def mode : HpkeMode\n # ContextS.Seal: *plaintext* sealed under the next nonce, *aad*\n # authenticated with it; or an `HpkeError` once the sequence is at\n # 2^96 - 1, with nothing sealed.\n def seal(plaintext : String | Array(UInt8), aad : String | Array(UInt8) = \"\") : String | HpkeError\n # The sequence number the next message is sealed at.\n def sequence : UInt128\nend\n\n# A KEM, a KDF and an AEAD: what the two ends agree on before anything is\n# sealed, and what every function of sections 5 and 6 runs under.\npub struct HpkeSuite\n def aead : HpkeAead\n # The suite named by its three code points, or an `HpkeError` naming the\n # one this module does not have.\n def self.from_ids(kem_id : Int32, kdf_id : Int32, aead_id : Int32) : HpkeSuite | HpkeError\n def initialize(kem : HpkeKem, kdf : HpkeKdf, aead : HpkeAead)\n def kdf : HpkeKdf\n def kem : HpkeKem\n # Single-shot Open (section 6.1): the plaintext, or an `HpkeError`.\n def open(key : HpkePrivateKey, enc : String | Array(UInt8), info : String | Array(UInt8), aad : String | Array(UInt8), ciphertext : String | Array(UInt8), psk : String | Array(UInt8) | Nil = nil, psk_id : String | Array(UInt8) | Nil = nil, sender_public : HpkePublicKey | Nil = nil) : String | HpkeError\n # Single-shot ReceiveExport (section 6.2): what `send_export`\n # exported, or an `HpkeError` when *enc* is refused.\n def receive_export(key : HpkePrivateKey, enc : String | Array(UInt8), info : String | Array(UInt8), exporter_context : String | Array(UInt8), length : Int32, psk : String | Array(UInt8) | Nil = nil, psk_id : String | Array(UInt8) | Nil = nil, sender_public : HpkePublicKey | Nil = nil) : Array(UInt8) | HpkeError\n # SetupBaseR, SetupPSKR, SetupAuthR or SetupAuthPSKR (section 5.1): the\n # recipient's context for *enc*, or an `HpkeError` when *enc* is refused.\n # The mode is chosen as `sender`'s is, by *sender_public* in place of\n # the sender's key.\n def recipient(key : HpkePrivateKey, enc : String | Array(UInt8), info : String | Array(UInt8), psk : String | Array(UInt8) | Nil = nil, psk_id : String | Array(UInt8) | Nil = nil, sender_public : HpkePublicKey | Nil = nil) : HpkeRecipient | HpkeError\n # Single-shot Seal (section 6.1): enc and *plaintext* sealed, the\n # context's first message.\n def seal(recipient : HpkePublicKey, info : String | Array(UInt8), aad : String | Array(UInt8), plaintext : String | Array(UInt8), randomness : String | Array(UInt8), psk : String | Array(UInt8) | Nil = nil, psk_id : String | Array(UInt8) | Nil = nil, sender_key : HpkePrivateKey | Nil = nil) : ::Tuple(Array(UInt8), String) | HpkeError\n # Single-shot SendExport (section 6.2): enc and *length* bytes\n # exported under *exporter_context*.\n def send_export(recipient : HpkePublicKey, info : String | Array(UInt8), exporter_context : String | Array(UInt8), length : Int32, randomness : String | Array(UInt8), psk : String | Array(UInt8) | Nil = nil, psk_id : String | Array(UInt8) | Nil = nil, sender_key : HpkePrivateKey | Nil = nil) : ::Tuple(Array(UInt8), Array(UInt8)) | HpkeError\n # SetupBaseS, SetupPSKS, SetupAuthS or SetupAuthPSKS (section 5.1), by\n # which of *psk* and *psk_id*, and *sender_key*, are given: the sender's\n # context, whose `enc` goes to the recipient. An `HpkeError` when the\n # encapsulation is refused (*recipient* is an X25519 key of small order).\n def sender(recipient : HpkePublicKey, info : String | Array(UInt8), randomness : String | Array(UInt8), psk : String | Array(UInt8) | Nil = nil, psk_id : String | Array(UInt8) | Nil = nil, sender_key : HpkePrivateKey | Nil = nil) : HpkeSender | HpkeError\n def to_s : String\nend\n\nimpl Error for HpkeError\n def message : String\nend\n" + }, { "name": "std/html", "path": "src/std/html.iyi", @@ -256,8 +274,8 @@ { "name": "std/http", "path": "src/std/http.iyi", - "sourceSha256": "6ee9e23312eb79e5d1a46685ec5e928385b6985b36cb038bbd934a56b781245a", - "surface": "module std/http\n\n# A body as it arrives: from a connection, framed by its length, by chunks\n# or by the connection's close, or from a string already in hand. `read`\n# answers the next piece, \"\" once the body is done; what the other end\n# does wrong is an `HTTPError`, and a connection that fails or is\n# cancelled answers that. The first failure is kept: every read after it\n# answers the same. A body coded `gzip`, `deflate` or `zstd` is decoded\n# as it is read when the client asked for that.\n#\n# A body has a limit: past it a read answers an `HTTPError` with status\n# 413. The server's is `Server::MAX_BODY`; a client's is none.\npub class BodyReader\n # The body's coding undone from here on: `Envelope::Gzip` for gzip,\n # `Envelope::Zlib` for HTTP's deflate - which some servers send as the\n # bare stream instead, without zlib's two bytes of header, so the first\n # two bytes are looked at first, and a pair that is not a zlib header\n # (RFC 1950 §2.2: method 8, a multiple of 31) is read as the bare\n # stream. A body that does not decode is an `HTTPError` naming the\n # coding and why.\n def decode(envelope : Envelope) : Nil\n # The body's `zstd` coding (RFC 8878) undone from here on, by std/zstd's\n # `ZstdReader` as the pieces arrive, frames one after another. A frame\n # that asks for a window past *max_window* bytes is refused rather than\n # given the memory (a window outside 1 KiB to 512 MiB is a panic), and a\n # body that does not decode is an `HTTPError` naming the coding and why.\n def decode_zstd(max_window : Int32 = Zstd::WINDOW_LIMIT) : Nil\n # Reads past the rest of the body, *limit* bytes at most: whether it\n # ended within them. A server reads past what a block left unread, so\n # the next request on the connection starts where it should.\n def drain(limit : Int64) : Bool\n # Whether every byte of the body has been read, the framing's end too.\n def finished? : Bool\n # A body that arrives as an HTTP/2 stream's DATA: refused past *limit*.\n protected def self.frames(h2 : H2Connection, id : Int32, limit : Int64) : BodyReader\n def initialize(conn : Conn | ::Nil, kind : Int32, length : Int64, limit : Int64, text : String = \"\", hello : Proc(Bool) | ::Nil = nil)\n protected def on_frames(h2 : H2Connection, id : Int32) : Nil\n # The body's bytes as the framing delivers them, before any decoding.\n protected def raw(max : Int32) : String | Cancelled | SocketError | HTTPError\n # The next piece of the body, at most *max* bytes; \"\" when it is done.\n def read(max : Int32 = 65536) : String | Cancelled | SocketError | HTTPError\n # The rest of the body as one string, refused past *limit* bytes (413).\n # The pieces are kept as they arrive and joined once: a builder of the\n # length a head declared was made before any of it had come, and a head\n # that declared 64 MB and sent two bytes cost the server 64 MB.\n def read_all(limit : Int64 = 2147483647_i64) : String | Cancelled | SocketError | HTTPError\n protected def remember(fault : HTTPError | Cancelled | SocketError) : HTTPError | Cancelled | SocketError\n # A body that is a string already in hand.\n def self.text(text : String) : BodyReader\n # Whether the body ends where the connection does: nothing can follow\n # it on the connection.\n def to_close? : Bool\nend\n\n# What a streamed body is written to: an answer's `Response.stream`\n# block's, and a client's upload from an `IyiIO`. Each `write` goes out as\n# one chunk (RFC 9112 §7.1), or as it is where the connection's close ends\n# the body, so a block that writes a line a second is read a line a\n# second. Under a server's `compress`, each write is a gzip piece flushed\n# whole (std/compress's `Deflater`), which decodes as it arrives too. The\n# first failure is kept, and every write after it answers it; `finish`,\n# which the server calls when the block returns, writes the end.\npub class BodyWriter\n # The end of the body: the gzip trailer, and the last chunk with the\n # blank line after it. Once; the server's call after a block that\n # finished its own body writes nothing.\n def finish : Nil | Cancelled | SocketError\n def initialize(socket : IyiSocket | TlsStream | H2Out, chunked : Bool, deflater : Deflater | ::Nil = nil)\n def write(text : String) : Nil | Cancelled | SocketError\n # Bytes of the body written so far, before any framing or coding.\n def written : Int64\nend\n\n# What `HTTP.request`'s `jar:` keeps cookies in: the `Cookie` header a\n# request to a URL carries, and an answer's `Set-Cookie` lines taken in.\n# std/cookie's `CookieJar` is one; std/http itself reads no clock, so the\n# expiry of a cookie is the store's to keep.\npub trait CookieStore\n abstract def header_for(url : String) : String | ::Nil\n abstract def update(url : String, response : Response) : Nil\nend\n\npub struct HTTP\n # For a request target in absolute form (RFC 9112 §3.2.2), where its\n # authority starts: after `http://` or `https://`, in any case.\n def self.absolute_form(target : String) : Int32 | ::Nil\n # Whether a list of codings a client accepts (`Accept-Encoding`, RFC\n # 9110 §12.5.3) takes *coding*: named, or `*`, with a `q` above 0.\n def self.accepts?(list : String, coding : String) : Bool\n # A 1xx, 204 or 304: an answer with no content (RFC 9110 §15).\n def self.bodiless?(status : Int32) : Bool\n # Where a chunked body that starts at *from* ends in `text` — the byte\n # after the last chunk's terminating CRLF (trailers included) — nil when\n # it has not all arrived, or why it is not a chunked body. What\n # `decode_chunked` will then read whole.\n def self.chunked_end(text : String, from : Int32 = 0) : Int32 | String | Nil\n # How much a list of codings a client accepts wants *coding*, as its\n # `q` in thousandths: the weight it is named with, else `*`'s, else 0 -\n # and 0 refuses it.\n def self.coding_weight(list : String, coding : String) : Int32\n # A `Content-Length` as a number, or nil when it is not one. Repeated\n # lines arrive joined, and are one length only when every one says the\n # same (RFC 9112 §6.3). A length past 2147483647 is still a length, too\n # large for either side, and is read as one past it: `to_i?` answered\n # nil for it, and 3000000000 was refused as \"not a number\".\n def self.content_length(value : String) : Int64 | ::Nil\n # A control character other than a tab, or DEL: what a field value may\n # not hold (RFC 9110 §5.5), nor a request target or a reason phrase.\n def self.control?(text : String) : Bool\n # The pairs of a request's `Cookie` header, `a=1; b=2` (RFC 6265 §4.2),\n # a value's quotes taken off; the first of a name is kept, as a server\n # reads the most specific cookie first.\n def self.cookie_pairs(value : String) : Hash(String, String)\n # A chunked body (RFC 9112 §7.1) as one string: each chunk's size line\n # is hexadecimal, extensions after `;` are ignored, and a zero-length\n # chunk ends it. What follows the last chunk is trailers, which nothing\n # here reads.\n def self.decode_chunked(text : String) : String\n def self.delete(url : String, headers : Hash(String, String) = {} of String => String) : Response | Cancelled | SocketError | HTTPError\n def self.find_headers_end(text : String, from : Int32 = 0) : Int32 | ::Nil\n # The request as it goes on the wire, whole. `Host`, `Connection` and\n # `Content-Length` are the request's own lines; a caller's header of\n # that name is refused rather than sent twice. A body's length is\n # always written for the methods a body belongs to, so `POST` with\n # nothing to say still says `Content-Length: 0`. A byte of the path past\n # 127 goes as `%` and two hex digits: a request target is ASCII (RFC\n # 9112 §3.2, RFC 3986 §2.1), and `/ü` went out as its UTF-8 bytes, raw.\n def self.format_request(method : String, path : String, host : String, body : String = \"\", headers : Hash(String, String) = {} of String => String) : String\n def self.get(url : String, headers : Hash(String, String) = {} of String => String) : Response | Cancelled | SocketError | HTTPError\n # *text* in gzip, whole: an answer's body under a server's `compress`.\n def self.gzip(text : String) : String\n # A writer whose body goes out in gzip as it is written.\n def self.gzip_writer(socket : IyiSocket | TlsStream | H2Out, chunked : Bool) : BodyWriter\n def self.has_break?(text : String) : Bool\n # Whether a list of tokens (RFC 9110 §5.6.1), its repeated lines joined\n # with \", \", holds *token*, in any case.\n def self.has_token?(list : String, token : String) : Bool\n def self.head(url : String, headers : Hash(String, String) = {} of String => String) : Response | Cancelled | SocketError | HTTPError\n # The value of a chunk size's hex digits, nil for anything else or for\n # one past what an Int32 holds.\n def self.hex(text : String) : Int32 | ::Nil\n # *n* in lowercase hexadecimal: a chunk's size line.\n def self.hex_text(n : Int64) : String\n # A Host value - the `a` of `Host: a` - or an absolute-form target's\n # authority, made of what a host and its port are spelled with (RFC 3986\n # §3.2.2, §3.2.3): a name, an IPv4 address or an IPv6 one in brackets,\n # and digits after a colon. Empty is one too, for a target with no\n # authority (RFC 9112 §3.2). A blank, a `/`, an `@` - the bytes another\n # host or a path begins with - are not.\n def self.host?(text : String) : Bool\n def initialize\n # One request, and the block's answer to the response, its body still\n # arriving: `response.body_io.read` takes it a piece at a time, and\n # `response.body` all of it. The connection closes when the block\n # returns. A body of *body* is a string, sent with its length, or an\n # `IyiIO`, sent chunked as it is read - which a redirect that keeps the\n # method (307, 308) cannot send again, so that answer is handed to the\n # block as it is.\n #\n # The redirects followed are RFC 9110 §15.4's: 301 and 302 make a POST a\n # GET, 303 makes anything but a HEAD a GET, and 307 and 308 keep the\n # method and the body. `Authorization`, `Proxy-Authorization` and\n # `Cookie` written by the caller are not sent to another host. One more\n # than *redirects* is an `HTTPError`; with 0 the first answer is the\n # block's.\n #\n # *timeout_ms* bounds the connect, and each read and write after it -\n # a pause, not the whole exchange, as Python's `timeout` is: a body that\n # keeps arriving is read for as long as it takes. One that runs out is a\n # `SocketError` whose `timed_out?` is true. 0, the default, waits as\n # long as the server does, as Go's and Python's clients do; a client\n # that talks to servers it does not control should give one.\n #\n # *proxy* is a proxy's URL - `http://user:password@host:port`, or\n # `host:port` alone - and every request goes through it, every redirect\n # too: `http://` as an absolute-form request to the proxy (RFC 9112\n # §3.2.2), which carries `Proxy-Authorization: Basic` when the URL has\n # a user; `https://` through a tunnel the proxy opens with `CONNECT\n # host:port` (RFC 9110 §9.3.6), the credential on the CONNECT alone and\n # TLS to the server inside it, its certificate checked as without a\n # proxy. A caller's own `Proxy-Authorization` is the proxy's too: sent\n # on the CONNECT when the URL has no user, and never inside the tunnel.\n # A CONNECT answered with anything but a 2xx - 407 when the proxy wants\n # credentials, 403, 502 - is an `HTTPError` naming the proxy and its\n # answer. `http://` through a proxy is HTTP/1.1 whatever\n # *prior_knowledge* says. Which proxy, if any, a URL's environment\n # names is `proxy_for`'s, and std/http_proxy's `HTTPProxy.from_env`.\n def self.open(method : String, url : String, headers : Hash(String, String) = {} of String => String, body : String | IyiIO = \"\", redirects : Int32 = 10, jar : CookieStore | ::Nil = nil, decompress : Bool = true, client : HTTPClient | ::Nil = nil, timeout_ms : Int32 = 0, proxy : String | ::Nil = nil, &block : (Response -> R)) : R | Cancelled | SocketError | HTTPError forall R\n # The field lines after the first, or why they are not fields. A name\n # repeated, in any case, is one field, its values joined in order with\n # \", \" (RFC 9110 §5.3): into a Hash by name, a second line spelled the\n # same replaced the first and one spelled otherwise was an entry\n # `header` never reached, so two different `Content-Length`s were read\n # as whichever came first or last. A value with a control character in\n # it - a CR or LF that ends no line, a NUL - is refused (§5.5) rather than\n # handed to whoever reads it or echoes it into a header.\n #\n # *unfold*, for an answer: a line that begins with a blank continues the\n # field above it (obs-fold, RFC 9112 §5.2), and a user agent joins it on\n # with one space; read as a field of its own, `HTTP.get` panicked with\n # \"header without a colon: \\\" b\\\"\". A server may refuse one, and this\n # one does.\n #\n # *apart*, when given, is handed each repeated field's values by the\n # name in the answer, a line each, before they are joined.\n def self.parse_fields(lines : Array(String), unfold : Bool = false, apart : Hash(String, Array(String)) | ::Nil = nil) : Hash(String, String) | String\n # The response as it came off the wire, whole. `head` says the request\n # was a `HEAD`, whose answer carries the headers of a body it does not\n # send. An interim answer - `100 Continue`, `103 Early Hints` - is read\n # past to the final one after it (RFC 9110 §15.2). A `101` switches\n # protocols, and HTTP ends with it. What is not a response panics with\n # why: this is the text a program has in hand; the client answers the\n # same sentences as `HTTPError`s.\n def self.parse_response(text : String, head : Bool = false) : Response\n # A response's head - the text before its blank line - read: status,\n # reason, the fields, and the lines of those on more than one. A line\n # that begins with a blank continues the field above it (obs-fold, RFC\n # 9112 §5.2), which a user agent joins on with one space.\n def self.parse_response_head(text : String) : ::Tuple(Int32, String, Hash(String, String), Hash(String, Array(String)) | ::Nil) | HTTPError\n # Where *text* goes on at *from* past the empty lines there: what a\n # server skips before a request line (RFC 9112 §2.2).\n def self.past_empty_lines(text : String, from : Int32) : Int32\n def self.post(url : String, body : String | IyiIO = \"\", headers : Hash(String, String) = {} of String => String) : Response | Cancelled | SocketError | HTTPError\n # The proxy a request for *url* goes through, given the values of\n # `HTTP_PROXY`, `HTTPS_PROXY` and `NO_PROXY` - nil when it goes\n # direct. Go's `golang.org/x/net/http/httpproxy` is the rule, line for\n # line, as its documentation and tests state it:\n #\n # * `https://` takes *https_proxy*, `http://` *http_proxy*, any other\n # scheme none. A proxy written without a scheme is `http://`'s, and is\n # answered with it, ready for `open`'s *proxy*.\n # * `localhost` (in lower case: Go's comparison) and a loopback address\n # (127.0.0.0/8, ::1, the first as IPv4-mapped too) never go through a\n # proxy.\n # * *no_proxy* is a comma-separated list, each entry trimmed and read\n # without regard to case: `*` alone sends everything direct; an IP\n # address or a CIDR range (`10.0.0.0/8`, `2001:db8::/32`) matches the\n # addresses in it, IPv4 and its IPv4-mapped form alike, and a CIDR\n # range of one family never the other's; a domain matches itself and\n # every name under it (`foo.com`: `foo.com`, `bar.foo.com`, not\n # `barfoo.com`); with a leading dot, or `*.`, only the names under it\n # (`.y.com`: `x.y.com`, not `y.com`). An address or domain may carry\n # a port (`1.2.3.4:80`, `[::1]:443`, `foo.com:8080`), and matches\n # then on that port alone, the URL's own or its scheme's default.\n # An entry that is none of these (`:80`) is passed over.\n # * A host is compared as IDNA's ASCII form, as Go compares it.\n #\n # Pure: the values are the caller's, so std/http reaches no environment;\n # std/http_proxy reads them from it.\n def self.proxy_for(url : String, http_proxy : String | ::Nil, https_proxy : String | ::Nil, no_proxy : String | ::Nil = nil) : String | ::Nil\n def self.put(url : String, body : String | IyiIO = \"\", headers : Hash(String, String) = {} of String => String) : Response | Cancelled | SocketError | HTTPError\n # The reason phrase a status carries (RFC 9110 §15), for a response the\n # server writes; a status this table does not know gets its class's.\n def self.reason_for(status : Int32) : String\n # One request and its whole answer: the answer as `open` hands it, its\n # body read. Redirects are followed, *redirects* at most; *jar* keeps\n # the cookies the answers set and sends them back; *decompress* asks\n # for gzip, deflate and zstd and undoes them. A refused or reset\n # connection answers `SocketError`; a task cancelled answers\n # `Cancelled`; what the server does wrong answers `HTTPError`. `!`\n # passes any of them up, `.or_panic` refuses it.\n def self.request(method : String, url : String, headers : Hash(String, String) = {} of String => String, body : String | IyiIO = \"\", redirects : Int32 = 10, jar : CookieStore | ::Nil = nil, decompress : Bool = true, timeout_ms : Int32 = 0, proxy : String | ::Nil = nil) : Response | Cancelled | SocketError | HTTPError\n # A request's head: the request line, `Host`, `Connection` (*connection*:\n # `close`, or `Upgrade`), the caller's headers, and the body's framing -\n # *length*, chunks, or none.\n def self.request_head(method : String, path : String, host : String, headers : Hash(String, String), length : Int64 | ::Nil, chunked : Bool, connection : String) : String\n # Two field names for the same field: ASCII case is the only difference\n # a name may carry.\n def self.same_name?(a : String, b : String) : Bool\n def self.split_crlf(text : String) : Array(String)\n # A status line read: the status and its reason, or why it is not one.\n def self.status_line(line : String) : ::Tuple(Int32, String) | HTTPError\n # What an `https://` request is checked against and offers: the\n # system's roots, and ALPN's `http/1.1`, unless a program sets its own -\n # roots of its own for a server it runs, say.\n def self.tls_config : TlsConfig\n def self.tls_config=(config : TlsConfig) : TlsConfig\n # A token (RFC 9110 §5.6.2): what a method or a field name is made of.\n def self.token?(text : String) : Bool\n # Without the blanks at either end (RFC 9112 §5.1: field values are\n # trimmed of the whitespace around them).\n def self.trim(s : String) : String\n # The 101 an upgrade to *protocol* is answered with, and the connection,\n # which is the caller's from then on: std/websocket's handshake. Any\n # other answer is an `HTTPError` naming it.\n #\n # *proxy* is `open`'s, and so is its credential, on the CONNECT alone;\n # but an upgrade goes through a tunnel for `http://` as for `https://`,\n # the handshake inside it in origin form. `Upgrade` belongs to the\n # connection it is sent on (RFC 9110 §7.8), and a proxy forwarding a\n # request removes `Connection` and every field it names (§7.6.1), so a\n # handshake handed to a forward proxy in absolute form reaches the\n # server, at best, as a plain GET: the gate's proxy, which drops\n # `Connection`, leaves std/websocket's server a request it answers 400.\n def self.upgrade(url : String, protocol : String, headers : Hash(String, String) = {} of String => String, timeout_ms : Int32 = 0, proxy : String | ::Nil = nil) : Upgraded | Cancelled | SocketError | HTTPError\nend\n\n# Requests that keep their connections: an `HTTPClient` holds the connections\n# its answers left open, by host and port, and the next request to that\n# server goes over one of them instead of a new one - the TCP handshake,\n# and the slow start after it, paid once rather than per request. Its\n# methods are `HTTP`'s, redirects, cookies and decoding included:\n#\n# ```\n# client = HTTPClient.new\n# client.get(\"http://127.0.0.1:8080/a\")\n# client.get(\"http://127.0.0.1:8080/b\") # the same connection\n# client.close\n# ```\n#\n# A connection goes back once its answer has been read to the end (inside\n# `open`, up to 64 KiB left unread is read past for it) and the answer\n# allows it; at most *idle* wait per server, and the rest close. A server\n# may close an idle connection whenever it likes (RFC 9112 §9.3.1), so a\n# request whose kept connection turns out closed - the write fails, or it\n# ends before a byte of an answer - is sent again once on a new one, when\n# its method is idempotent (RFC 9110 §9.2.2) and its body a string;\n# anything else answers the failure. One task at a time per request: two\n# tasks sending at once take two connections, and a client is not for\n# sharing across threads.\n#\n# Over HTTP/2 - `https://` where ALPN chose `h2`, or `http://` with\n# *prior_knowledge* (h2c, RFC 9113 §3.3) - a kept connection carries the\n# next request on a new stream, until the server says GOAWAY.\npub class HTTPClient\n # Every idle connection closed. The client may be used after; it opens\n # new ones.\n def close : Nil\n # Connections this client has opened, and requests sent over one it\n # kept: what a program reads to see that its connections are kept.\n def connections_made : Int32\n def connections_reused : Int32\n def delete(url : String, headers : Hash(String, String) = {} of String => String) : Response | Cancelled | SocketError | HTTPError\n def get(url : String, headers : Hash(String, String) = {} of String => String) : Response | Cancelled | SocketError | HTTPError\n protected def give_back(key : String, conn : Conn) : Nil\n def head(url : String, headers : Hash(String, String) = {} of String => String) : Response | Cancelled | SocketError | HTTPError\n # *timeout_ms* and *proxy* are `HTTP.open`'s, for every request the\n # client sends.\n def initialize(idle : Int32 = 4, timeout_ms : Int32 = 0, prior_knowledge : Bool = false, proxy : String | ::Nil = nil)\n protected def made : Nil\n def open(method : String, url : String, headers : Hash(String, String) = {} of String => String, body : String | IyiIO = \"\", redirects : Int32 = 10, jar : CookieStore | ::Nil = nil, decompress : Bool = true, &block : (Response -> R)) : R | Cancelled | SocketError | HTTPError forall R\n def post(url : String, body : String | IyiIO = \"\", headers : Hash(String, String) = {} of String => String) : Response | Cancelled | SocketError | HTTPError\n # `http://` spoken as HTTP/2 from the first byte, without asking: for a\n # server known to take it.\n def prior_knowledge : Bool\n # The proxy every request goes through, `HTTP.open`'s *proxy*; its\n # connections are kept under it.\n def proxy : String | ::Nil\n def put(url : String, body : String | IyiIO = \"\", headers : Hash(String, String) = {} of String => String) : Response | Cancelled | SocketError | HTTPError\n def request(method : String, url : String, headers : Hash(String, String) = {} of String => String, body : String | IyiIO = \"\", redirects : Int32 = 10, jar : CookieStore | ::Nil = nil, decompress : Bool = true) : Response | Cancelled | SocketError | HTTPError\n # A kept connection to *key*, nil when none waits. An HTTP/2 connection\n # that can take no more requests is closed rather than handed out.\n protected def take(key : String) : Conn | ::Nil\nend\n\n# What the other end did that HTTP does not allow, as a value: `reason` is\n# the sentence, `status` the answer a server gives a request that did it\n# (400, or 413 and 431 for the limits). `message` says it is HTTP's.\npub struct HTTPError\n def initialize(reason : String, status : Int32 = 400)\n def reason : String\n def status : Int32\n def to_s : String\nend\n\n# A `multipart/form-data` body (RFC 7578) read a part at a time, as it\n# arrives: `next_part` answers the next `Part`, nil after the last, and a\n# part's `read` answers its bytes up to the boundary, \"\" at its end. A part\n# not read to its end is read past by the next `next_part`. The body of a\n# request is `Request#multipart`'s; any `BodyReader` and boundary will do.\n# A part's head is refused past 16 KiB, and a body that ends before its\n# closing boundary is an `HTTPError`.\npub class Multipart\n # The boundary a `Content-Type` of `multipart/...` names, nil when it\n # names none.\n def self.boundary(content_type : String) : String | ::Nil\n # Where *pattern* is in what is held, -1 when it is not there yet.\n protected def find(pattern : String) : Int32\n def initialize(body : BodyReader, boundary : String)\n # The next part, nil after the last.\n def next_part : Part | Nil | Cancelled | SocketError | HTTPError\n # Up to *max* bytes of the part being read, \"\" at its boundary. What is\n # held back is what may yet be the start of the boundary.\n protected def part_read(max : Int32) : String | Cancelled | SocketError | HTTPError\n # One more piece of the body onto what is held: false at its end.\n protected def pull : Bool | Cancelled | SocketError | HTTPError\nend\n\n# A multipart/form-data body to send: fields and files in order. Its\n# boundary is chosen when the body is first asked for - `finish`,\n# `content_type` or `boundary`, whichever comes first, after which no\n# part is added - as `iyi-` and 32 hex digits of the parts' SHA-1, made\n# again from itself in the rare case a part holds it: so it is none of\n# the parts' bytes by construction rather than by chance, the same\n# fields make the same body, and std/http reaches no source of\n# randomness for it. A boundary given to `new` is used as it is, and a\n# part that holds it is refused.\npub class MultipartBuilder\n def boundary : String\n def content_type : String\n def field(name : String, value : String) : self\n def file(name : String, filename : String, data : String, content_type : String = MIME.from_extension(filename)) : self\n # The body, closing boundary and all.\n def finish : String\n # The boundary ends a part where it follows a CRLF, the part's first\n # bytes included, which follow the head's blank line.\n protected def self.holds?(data : String, mark : String) : Bool\n def initialize(boundary : String | ::Nil = nil)\n # A name inside quotes, as browsers write one: a quote and a line break\n # percent-encoded (the WHATWG form encoding), so no field can end the\n # parameter or the line early.\n protected def self.quoted(text : String) : String\nend\n\n# One part of a multipart body: its head's fields, its name and file name\n# from `Content-Disposition`, and its bytes, read up to its boundary.\npub class Part\n def content_type : String | ::Nil\n # The file name a browser sent the part under, `filename=`.\n def filename : String | ::Nil\n def finished? : Bool\n def header(name : String) : String | ::Nil\n def headers : Hash(String, String)\n def initialize(owner : Multipart, headers : Hash(String, String))\n # The form field's name, `name=` of `Content-Disposition`.\n def name : String | ::Nil\n # The part's next bytes, at most *max*; \"\" at its end.\n def read(max : Int32 = 65536) : String | Cancelled | SocketError | HTTPError\n # The rest of the part as one string, refused past *limit* bytes.\n def read_all(limit : Int64 = 2147483647_i64) : String | Cancelled | SocketError | HTTPError\nend\n\n# What a server's block is handed: one request. Its body is `body`, read\n# whole before the block ran, or under `stream_bodies` read by the block\n# from `body_io` as it arrives; `body` then reads the rest itself, and a\n# body that cannot be read - the client went, or sent one that is not\n# HTTP - ends the connection with that sentence rather than be answered as\n# if it were whole.\npub class Request\n def body : String\n def body_io : BodyReader\n # The pairs of the request's `Cookie` header, the first of a name kept.\n def cookies : Hash(String, String)\n # The fields of a form: the query's, and an\n # `application/x-www-form-urlencoded` body's after them. The body is\n # read for it.\n def form : Params\n def header(name : String) : String | ::Nil\n def headers : Hash(String, String)\n # A request whose body is in hand: what `parse_request` answers.\n def initialize(method : String, path : String, query : String | ::Nil, headers : Hash(String, String), body : String, version : String = \"HTTP/1.1\", remote_address : String | ::Nil = nil)\n # A request whose body is still on the connection.\n def initialize(method : String, path : String, query : String | ::Nil, headers : Hash(String, String), version : String, reader : BodyReader, remote_address : String | ::Nil = nil)\n def method : String\n # The body as `multipart/form-data` parts, read as they arrive; nil when\n # the `Content-Type` is not multipart or names no boundary.\n def multipart : Multipart | ::Nil\n def path : String\n # The client's certificate chain, leaf first, as std/tls checked it:\n # under `serve(tls:)` with `client_roots` set, the certificate the\n # client presented; empty otherwise.\n def peer_certificates : Array(Certificate)\n # The client's certificate chain, leaf first, as std/tls checked it:\n # under `serve(tls:)` with `client_roots` set, the certificate the\n # client presented; empty otherwise.\n def peer_certificates=(value : Array(Certificate)) : Array(Certificate)\n def query : String | ::Nil\n # The client's address, as the server's socket saw it (no port): nil\n # for a request a program made, or when the client had already gone. A\n # proxy in front is what this names; `X-Forwarded-For` is the proxy's\n # word, and a header any client can write.\n def remote_address : String | ::Nil\n def version : String\nend\n\n# A response: what a server's block answers, and what a client is handed.\n#\n# To write one: `Response.new(200, \"hello\")`, a status and a string;\n# `Response.new(200, io)`, a stream the server copies out and closes, with\n# the caller's `Content-Length` when it gives one and chunked otherwise;\n# `Response.stream(200) { |w| w.write(\"...\") }`, whose block writes as it\n# goes; `Response.upgrade(headers) { |socket, leftover| ... }`, a 101 after\n# which the connection is the block's. `add_header` writes a field on a\n# line of its own, as each `Set-Cookie` must be.\n#\n# What a client is handed: the status, reason and headers, and the body -\n# `body` whole, or `body_io` as it arrives inside `HTTP.open`'s block.\npub class Response\n # One more line of the field *name*, written on a line of its own: what\n # two `Set-Cookie`s need, since the \", \" a field's lines are joined with\n # is part of a cookie's date.\n def add_header(name : String, value : String) : Nil\n # The lines of each field written on more than one, by its name in\n # `headers`; nil when every field is on one line.\n def apart : Hash(String, Array(String)) | ::Nil\n # The body: whole. Inside `HTTP.open`'s block it is read here, the first\n # time it is asked for, and a body that cannot be read panics with why;\n # `body_io` answers that as a value.\n def body : String\n # The body as it arrives. For a response a program made, its string.\n def body_io : BodyReader\n # Whether the client undid the body's `gzip`, `deflate` or `zstd`\n # coding; the `Content-Encoding` and `Content-Length` that described it\n # are gone from the headers then.\n def decoded? : Bool\n # A header by name, as the server spelled it or otherwise: a field\n # name is case-insensitive (RFC 9110 §5.1), and `content-length` is as\n # common on the wire as `Content-Length`.\n def header(name : String) : String | ::Nil\n # A field's lines apart, in the order they came: `header` joins them\n # with \", \", and `Set-Cookie` is the field that join breaks (RFC 9110\n # §5.3), since a cookie's `Expires` date has a comma in it - two cookies\n # read as \"a=1; Expires=Wed, 21 Oct 2026 07:28:00 GMT, b=2\", which no\n # split takes back apart. Empty for a field that is not there.\n def header_values(name : String) : Array(String)\n def headers : Hash(String, String)\n # A response a client read: its body comes from *reader*, and *url* is\n # where it came from.\n def initialize(status : Int32, reason : String, headers : Hash(String, String), apart : Hash(String, Array(String)) | ::Nil, reader : BodyReader, url : String, decoded : Bool)\n def initialize(status : Int32, reason : String, headers : Hash(String, String), body : String, apart : Hash(String, Array(String)) | ::Nil = nil)\n # A response to write: the reason is the status's own, the headers the\n # caller's. `Response.new(200, \"hello\")` is the common shape.\n def initialize(status : Int32, body : String = \"\", headers : Hash(String, String) = {} of String => String)\n # A response whose body is *source*, copied out by the server and\n # closed after.\n def initialize(status : Int32, source : IyiIO, headers : Hash(String, String) = {} of String => String)\n # The body read whole into the response, which is answered; why not,\n # when it cannot be.\n def load : Response | Cancelled | SocketError | HTTPError\n def reason : String\n def source : IyiIO | ::Nil\n def status : Int32\n # A response whose body the block writes as it goes, chunked.\n def self.stream(status : Int32, headers : Hash(String, String) = {} of String => String, &writer : (BodyWriter -> Nil)) : Response\n def success? : Bool\n def takeover : Proc(IyiSocket | TlsStream, String, Nil) | ::Nil\n protected def takeover=(takeover : Proc(IyiSocket | TlsStream, String, Nil)) : Proc(IyiSocket | TlsStream, String, Nil)\n # A 101 Switching Protocols with *headers* (`Upgrade` and the\n # protocol's own), after which the connection is the block's: it is\n # handed the connection - the socket, or under `serve(tls:)` the\n # `TlsStream` over it - and the bytes the client sent after its request,\n # and the connection closes when it returns.\n def self.upgrade(headers : Hash(String, String), &takeover : (IyiSocket | TlsStream, String -> Nil)) : Response\n # The URL the answer came from, after any redirects; nil for one a\n # program made.\n def url : String | ::Nil\n def writer : Proc(BodyWriter, Nil) | ::Nil\n protected def writer=(writer : Proc(BodyWriter, Nil)) : Proc(BodyWriter, Nil)\nend\n\npub struct Server\n # The headers a coded body goes with: the coding, and `Vary` so that a\n # cache keeps the answers apart. A `Content-Length` the block gave is\n # the plain body's, and goes.\n protected def self.coded(response : Response, coding : String) : Response\n # The coding *response* goes in to the client of *req*, or nil: one the\n # client takes (RFC 9110 §12.5.3, a `q` of 0 refusing it), for an\n # answer with a body and a type worth compressing, and no coding of its\n # own. A whole body goes `zstd` when the client's `q` for it is at least\n # its `q` for gzip, and `gzip` otherwise. The tie goes to zstd for the\n # server's time: measured on this machine, release builds, on\n # src/std/http.iyi (199,134 bytes) `Gzip.compress` wrote 54,484 bytes in\n # 5 ms and `Zstd.compress` 61,753 in 1 ms, and on CHANGELOG.md (1.5 MB)\n # 552,446 in 58 ms against 589,785 in 13 ms - a quarter of the time, for\n # an eighth more bytes at most. A stream - an `IyiIO` or a\n # `Response.stream` - goes gzip or as it is: std/compress's `Deflater`\n # writes each piece as it comes, where std/zstd's compressor takes its\n # input whole, and a frame a write would code each piece alone.\n def self.coding_for(req : Request, response : Response) : String | ::Nil\n # A string body compressed whole in *coding*, `zstd` or `gzip`, with\n # the headers that say so. `Zstd.compress`'s frame needs a window of\n # 1 MiB at most, inside the 8 MB RFC 9659 §3 holds an encoder to.\n protected def self.compressed(response : Response, coding : String) : Response\n # A response's head. `Content-Length` is *length*'s - the caller's own\n # line is checked against it, and kept only where no body follows it: a\n # HEAD, or a 304 that names the length a 200 would have (RFC 9110 §8.6) -\n # or `Transfer-Encoding: chunked` when *chunked*, or neither for a body\n # the connection's close ends. `Connection` says what the connection will\n # do next, except on an *upgrade*, whose own line says it. A 1xx, 204 or\n # 304 has no content (RFC 9110 §15), and writes neither a body nor a\n # length of its own (§8.6): the body was read by the client as the start\n # of the next answer, and `Content-Length: 0` on a 304 told a cache that\n # the resource had become empty. A field added on lines of its own\n # (`add_header`) is written a line each.\n def self.format_head(response : Response, head : Bool, close : Bool, length : Int64 | ::Nil, chunked : Bool, upgrade : Bool = false) : String\n # The response as it goes on the wire, whole: `format_head` for its\n # string body, and the body.\n def self.format_response(response : Response, head : Bool, close : Bool) : String\n # One connection: requests until the client is done. A request that is\n # not HTTP is answered with why and the connection closed, since the\n # bytes after it cannot be trusted to be a request either. Requests that\n # came in one read are read where they lie, one after another. A\n # connection that opens with HTTP/2's preface is served as HTTP/2. Under\n # *tls* the handshake comes first, and the connection ends with\n # close_notify.\n def self.handle(client : IyiSocket, handler : Proc(Request, Response), listener : IyiSocket | ::Nil = nil, idle : Hash(UInt64, IyiSocket) | ::Nil = nil, stream_bodies : Bool = false, compress : Bool = false, timeout_ms : Int32 = 0, tls : TlsServerConfig | ::Nil = nil) : Nil\n def initialize\n # A request's head - the text before its blank line - read and checked,\n # or why it is not one.\n def self.parse_head(text : String) : RequestHead | HTTPError\n # A request at *from* in `text`, if a whole one is there. No request and\n # no error means \"not yet\". `consumed` counts from the start of `text`.\n def self.parse_request(text : String, from : Int32 = 0) : ParsedRequest\n # Serve `listener` until it is closed. The block runs on the\n # connection's fiber, once per request; what it answers is written back.\n # The close ends a connection waiting on its client too, for its next\n # request or for the rest of one, and one that is answering ends when its\n # answer is written: a keep-alive client that sat idle kept `serve` from\n # returning for as long as it stayed, and so did one that had sent\n # what has arrived of a request so far - one byte of it was enough.\n #\n # *stream_bodies*: the block reads each request's body from `body_io`\n # rather than being handed it whole. *compress*: an answer whose type\n # std/mime calls compressible goes zstd or gzip to a client that\n # accepts one (`coding_for`).\n #\n # *timeout_ms*: a request's head must have arrived within it, counted\n # from when the server starts waiting for one - a kept-alive connection's\n # idle time included - and no read of a body nor write of an answer may\n # wait longer; a connection that does is closed. Without it, a client\n # that sends a byte of its head every few seconds (Slowloris) holds a\n # connection and its fiber for as long as it likes, and so does one that\n # reads none of its answer. A minute by default, nginx's\n # `client_header_timeout`; 0 for none. A connection handed over by\n # `Response.upgrade` waits as its protocol likes.\n #\n # *tls*: each connection is TLS 1.3 (std/tls's `TlsServer`) under this\n # configuration, its handshake held to *timeout_ms* too; one whose\n # handshake fails is closed, the client told why by an alert. Inside\n # it a connection that opens with HTTP/2's preface - as a client whose\n # ALPN chose `h2` does, when `tls.alpn` offers it - is served HTTP/2,\n # and any other HTTP/1.1. A `Response.upgrade` block over TLS is handed\n # the `TlsStream`, so a WebSocket is `wss://`.\n def self.serve(listener : IyiSocket, stream_bodies : Bool = false, compress : Bool = false, timeout_ms : Int32 = 60000, tls : TlsServerConfig | ::Nil = nil, &handler : (Request -> Response)) : Nil\n protected def self.writer_for(socket : IyiSocket | TlsStream, chunked : Bool, gzip : Bool) : BodyWriter\nend\n\n# A TLS connection used as a socket is: read into a buffer, written to,\n# closed, its timeouts set - by a `Conn`, a `BodyWriter`, and a connection\n# handed over by an upgrade (`wss://` at either end). What TLS refuses is a\n# `SocketError` carrying TLS's own sentence (`layer_reason`), so answers\n# keep the types they have over a plain socket.\npub class TlsStream\n def close : Nil\n def closed? : Bool\n def initialize(tls : TlsConnection, host : String)\n # The peer's certificate chain, leaf first, as the handshake checked it:\n # the server's, at a client; the client's, at a server that asked.\n def peer_certificates : Array(Certificate)\n # Up to *count* bytes into *buffer*: 0 once the peer closed with\n # close_notify.\n def read(buffer : Pointer(UInt8), count : Int32) : Int32 | Cancelled | SocketError\n # Up to *max_bytes* as a string, what is held first: \"\" once the peer\n # closed with close_notify. `IyiSocket#read`'s form, for a block an\n # upgrade hands either.\n def read(max_bytes : Int32 = 4096) : String | Cancelled | SocketError\n # How long a read or a write of the connection under it may wait.\n def read_timeout_ms=(ms : Int32 | ::Nil) : Int32 | ::Nil\n def write(text : String) : Int32 | Cancelled | SocketError\n def write_timeout_ms=(ms : Int32 | ::Nil) : Int32 | ::Nil\nend\n\n# What `HTTP.upgrade` answers: the 101, and the connection, which is the\n# caller's now - the socket, and the bytes the server sent after its head.\npub class Upgraded\n def initialize(response : Response, socket : IyiSocket | TlsStream, leftover : String)\n def leftover : String\n def response : Response\n # The connection: the socket, or for `https://` the `TlsStream` over it.\n def socket : IyiSocket | TlsStream\nend\n\nimpl Error for HTTPError\n def message : String\nend\n" + "sourceSha256": "c834c001d26e1a45a8e7163e78255438004bb09caad82542270e011ef7dc82c3", + "surface": "module std/http\n\n# A body as it arrives: from a connection, framed by its length, by chunks\n# or by the connection's close, or from a string already in hand. `read`\n# answers the next piece, \"\" once the body is done; what the other end\n# does wrong is an `HTTPError`, and a connection that fails or is\n# cancelled answers that. The first failure is kept: every read after it\n# answers the same. A body coded `gzip`, `deflate` or `zstd` is decoded\n# as it is read when the client asked for that.\n#\n# A body has a limit: past it a read answers an `HTTPError` with status\n# 413. The server's is `Server::MAX_BODY`; a client's is none.\npub class BodyReader\n # The body's coding undone from here on: `Envelope::Gzip` for gzip,\n # `Envelope::Zlib` for HTTP's deflate - which some servers send as the\n # bare stream instead, without zlib's two bytes of header, so the first\n # two bytes are looked at first, and a pair that is not a zlib header\n # (RFC 1950 §2.2: method 8, a multiple of 31) is read as the bare\n # stream. A body that does not decode is an `HTTPError` naming the\n # coding and why.\n def decode(envelope : Envelope) : Nil\n # The body's `zstd` coding (RFC 8878) undone from here on, by std/zstd's\n # `ZstdReader` as the pieces arrive, frames one after another. A frame\n # that asks for a window past *max_window* bytes is refused rather than\n # given the memory (a window outside 1 KiB to 512 MiB is a panic), and a\n # body that does not decode is an `HTTPError` naming the coding and why.\n def decode_zstd(max_window : Int32 = Zstd::WINDOW_LIMIT) : Nil\n # Reads past the rest of the body, *limit* bytes at most: whether it\n # ended within them. A server reads past what a block left unread, so\n # the next request on the connection starts where it should.\n def drain(limit : Int64) : Bool\n # Whether every byte of the body has been read, the framing's end too.\n def finished? : Bool\n # A body that arrives as an HTTP/2 stream's DATA: refused past *limit*.\n protected def self.frames(h2 : H2Connection, id : Int32, limit : Int64) : BodyReader\n def initialize(conn : Conn | ::Nil, kind : Int32, length : Int64, limit : Int64, text : String = \"\", hello : Proc(Bool) | ::Nil = nil)\n protected def on_frames(h2 : H2Connection, id : Int32) : Nil\n # The body's bytes as the framing delivers them, before any decoding.\n protected def raw(max : Int32) : String | Cancelled | SocketError | HTTPError\n # The next piece of the body, at most *max* bytes; \"\" when it is done.\n def read(max : Int32 = 65536) : String | Cancelled | SocketError | HTTPError\n # The rest of the body as one string, refused past *limit* bytes (413).\n # The pieces are kept as they arrive and joined once: a builder of the\n # length a head declared was made before any of it had come, and a head\n # that declared 64 MB and sent two bytes cost the server 64 MB.\n def read_all(limit : Int64 = 2147483647_i64) : String | Cancelled | SocketError | HTTPError\n protected def remember(fault : HTTPError | Cancelled | SocketError) : HTTPError | Cancelled | SocketError\n # A body that is a string already in hand.\n def self.text(text : String) : BodyReader\n # Whether the body ends where the connection does: nothing can follow\n # it on the connection.\n def to_close? : Bool\nend\n\n# What a streamed body is written to: an answer's `Response.stream`\n# block's, and a client's upload from an `IyiIO`. Each `write` goes out as\n# one chunk (RFC 9112 §7.1), or as it is where the connection's close ends\n# the body, so a block that writes a line a second is read a line a\n# second. Under a server's `compress`, each write is a gzip piece flushed\n# whole (std/compress's `Deflater`), which decodes as it arrives too. The\n# first failure is kept, and every write after it answers it; `finish`,\n# which the server calls when the block returns, writes the end.\npub class BodyWriter\n # The end of the body: the gzip trailer, and the last chunk with the\n # blank line after it. Once; the server's call after a block that\n # finished its own body writes nothing.\n def finish : Nil | Cancelled | SocketError\n def initialize(socket : IyiSocket | TlsStream | H2Out, chunked : Bool, deflater : Deflater | ::Nil = nil)\n def write(text : String) : Nil | Cancelled | SocketError\n # Bytes of the body written so far, before any framing or coding.\n def written : Int64\nend\n\n# What `HTTP.request`'s `jar:` keeps cookies in: the `Cookie` header a\n# request to a URL carries, and an answer's `Set-Cookie` lines taken in.\n# std/cookie's `CookieJar` is one; std/http itself reads no clock, so the\n# expiry of a cookie is the store's to keep.\npub trait CookieStore\n abstract def header_for(url : String) : String | ::Nil\n abstract def update(url : String, response : Response) : Nil\nend\n\npub struct HTTP\n # For a request target in absolute form (RFC 9112 §3.2.2), where its\n # authority starts: after `http://` or `https://`, in any case.\n def self.absolute_form(target : String) : Int32 | ::Nil\n # Whether a list of codings a client accepts (`Accept-Encoding`, RFC\n # 9110 §12.5.3) takes *coding*: named, or `*`, with a `q` above 0.\n def self.accepts?(list : String, coding : String) : Bool\n # A 1xx, 204 or 304: an answer with no content (RFC 9110 §15).\n def self.bodiless?(status : Int32) : Bool\n # Where a chunked body that starts at *from* ends in `text` — the byte\n # after the last chunk's terminating CRLF (trailers included) — nil when\n # it has not all arrived, or why it is not a chunked body. What\n # `decode_chunked` will then read whole.\n def self.chunked_end(text : String, from : Int32 = 0) : Int32 | String | Nil\n # How much a list of codings a client accepts wants *coding*, as its\n # `q` in thousandths: the weight it is named with, else `*`'s, else 0 -\n # and 0 refuses it.\n def self.coding_weight(list : String, coding : String) : Int32\n # A `Content-Length` as a number, or nil when it is not one. Repeated\n # lines arrive joined, and are one length only when every one says the\n # same (RFC 9112 §6.3). A length past 2147483647 is still a length, too\n # large for either side, and is read as one past it: `to_i?` answered\n # nil for it, and 3000000000 was refused as \"not a number\".\n def self.content_length(value : String) : Int64 | ::Nil\n # A control character other than a tab, or DEL: what a field value may\n # not hold (RFC 9110 §5.5), nor a request target or a reason phrase.\n def self.control?(text : String) : Bool\n # The pairs of a request's `Cookie` header, `a=1; b=2` (RFC 6265 §4.2),\n # a value's quotes taken off; the first of a name is kept, as a server\n # reads the most specific cookie first.\n def self.cookie_pairs(value : String) : Hash(String, String)\n # A chunked body (RFC 9112 §7.1) as one string: each chunk's size line\n # is hexadecimal, extensions after `;` are ignored, and a zero-length\n # chunk ends it. What follows the last chunk is trailers, which nothing\n # here reads.\n def self.decode_chunked(text : String) : String\n def self.delete(url : String, headers : Hash(String, String) = {} of String => String) : Response | Cancelled | SocketError | HTTPError\n def self.find_headers_end(text : String, from : Int32 = 0) : Int32 | ::Nil\n # The request as it goes on the wire, whole. `Host`, `Connection` and\n # `Content-Length` are the request's own lines; a caller's header of\n # that name is refused rather than sent twice. A body's length is\n # always written for the methods a body belongs to, so `POST` with\n # nothing to say still says `Content-Length: 0`. A byte of the path past\n # 127 goes as `%` and two hex digits: a request target is ASCII (RFC\n # 9112 §3.2, RFC 3986 §2.1), and `/ü` went out as its UTF-8 bytes, raw.\n def self.format_request(method : String, path : String, host : String, body : String = \"\", headers : Hash(String, String) = {} of String => String) : String\n def self.get(url : String, headers : Hash(String, String) = {} of String => String) : Response | Cancelled | SocketError | HTTPError\n # *text* in gzip, whole: an answer's body under a server's `compress`.\n def self.gzip(text : String) : String\n # A writer whose body goes out in gzip as it is written.\n def self.gzip_writer(socket : IyiSocket | TlsStream | H2Out, chunked : Bool) : BodyWriter\n def self.has_break?(text : String) : Bool\n # Whether a list of tokens (RFC 9110 §5.6.1), its repeated lines joined\n # with \", \", holds *token*, in any case.\n def self.has_token?(list : String, token : String) : Bool\n def self.head(url : String, headers : Hash(String, String) = {} of String => String) : Response | Cancelled | SocketError | HTTPError\n # The value of a chunk size's hex digits, nil for anything else or for\n # one past what an Int32 holds.\n def self.hex(text : String) : Int32 | ::Nil\n # *n* in lowercase hexadecimal: a chunk's size line.\n def self.hex_text(n : Int64) : String\n # A Host value - the `a` of `Host: a` - or an absolute-form target's\n # authority, made of what a host and its port are spelled with (RFC 3986\n # §3.2.2, §3.2.3): a name, an IPv4 address or an IPv6 one in brackets,\n # and digits after a colon. Empty is one too, for a target with no\n # authority (RFC 9112 §3.2). A blank, a `/`, an `@` - the bytes another\n # host or a path begins with - are not.\n def self.host?(text : String) : Bool\n # The endpoints *answer*'s ServiceMode records name for a client whose\n # configuration offers *alpn* by ALPN (none: it speaks http/1.1 alone),\n # to an origin on *port*, in the order to try them: a record whose\n # mandatory keys are not all ones std/dns reads, or whose protocols -\n # alpn, and http/1.1 unless no-default-alpn - hold none of the client's,\n # names none (RFC 9460 sections 7.1.2 and 8), and neither does one whose\n # target is not a host name. Each is the record's target, or its owner\n # for \".\"; its port, or *port*; its `ech` where the ECHConfigList holds\n # a config std/tls can use (RFC 9849 section 6.1), nil otherwise; and\n # *alpn* with the protocols the record's alpn lists first, in *alpn*'s\n # order otherwise.\n def self.https_endpoints(answer : SvcbAnswer, alpn : Array(String), port : Int32) : Array(HttpsEndpoint)\n def initialize\n # One request, and the block's answer to the response, its body still\n # arriving: `response.body_io.read` takes it a piece at a time, and\n # `response.body` all of it. The connection closes when the block\n # returns. A body of *body* is a string, sent with its length, or an\n # `IyiIO`, sent chunked as it is read - which a redirect that keeps the\n # method (307, 308) cannot send again, so that answer is handed to the\n # block as it is.\n #\n # The redirects followed are RFC 9110 §15.4's: 301 and 302 make a POST a\n # GET, 303 makes anything but a HEAD a GET, and 307 and 308 keep the\n # method and the body. `Authorization`, `Proxy-Authorization` and\n # `Cookie` written by the caller are not sent to another scheme, host or\n # port - `https://` to `http://` at one host included, as curl does (Go\n # strips them for another host) - and a jar's `Secure` cookies go over\n # `https://` alone. The downgrade itself is followed, as Go's client and\n # `curl -L` follow it; any other header the caller wrote, and a 307 or\n # 308's body, go on in the clear. One more than *redirects* is an\n # `HTTPError`; with 0 the first answer is the block's.\n #\n # *timeout_ms* bounds the connect, and each read and write after it -\n # a pause, not the whole exchange, as Python's `timeout` is: a body that\n # keeps arriving is read for as long as it takes. One that runs out is a\n # `SocketError` whose `timed_out?` is true. 0, the default, waits as\n # long as the server does, as Go's and Python's clients do; a client\n # that talks to servers it does not control should give one.\n #\n # *proxy* is a proxy's URL - `http://user:password@host:port`, or\n # `host:port` alone - and every request goes through it, every redirect\n # too: `http://` as an absolute-form request to the proxy (RFC 9112\n # §3.2.2), which carries `Proxy-Authorization: Basic` when the URL has\n # a user; `https://` through a tunnel the proxy opens with `CONNECT\n # host:port` (RFC 9110 §9.3.6), the credential on the CONNECT alone and\n # TLS to the server inside it, its certificate checked as without a\n # proxy. A caller's own `Proxy-Authorization` is the proxy's too: sent\n # on the CONNECT when the URL has no user, and never inside the tunnel.\n # A CONNECT answered with anything but a 2xx - 407 when the proxy wants\n # credentials, 403, 502 - is an `HTTPError` naming the proxy and its\n # answer. `http://` through a proxy is HTTP/1.1 whatever\n # *prior_knowledge* says. Which proxy, if any, a URL's environment\n # names is `proxy_for`'s, and std/http_proxy's `HTTPProxy.from_env`.\n def self.open(method : String, url : String, headers : Hash(String, String) = {} of String => String, body : String | IyiIO = \"\", redirects : Int32 = 10, jar : CookieStore | ::Nil = nil, decompress : Bool = true, client : HTTPClient | ::Nil = nil, timeout_ms : Int32 = 0, proxy : String | ::Nil = nil, &block : (Response -> R)) : R | Cancelled | SocketError | HTTPError forall R\n # The field lines after the first, or why they are not fields. A name\n # repeated, in any case, is one field, its values joined in order with\n # \", \" (RFC 9110 §5.3): into a Hash by name, a second line spelled the\n # same replaced the first and one spelled otherwise was an entry\n # `header` never reached, so two different `Content-Length`s were read\n # as whichever came first or last. A value with a control character in\n # it - a CR or LF that ends no line, a NUL - is refused (§5.5) rather than\n # handed to whoever reads it or echoes it into a header.\n #\n # *unfold*, for an answer: a line that begins with a blank continues the\n # field above it (obs-fold, RFC 9112 §5.2), and a user agent joins it on\n # with one space; read as a field of its own, `HTTP.get` panicked with\n # \"header without a colon: \\\" b\\\"\". A server may refuse one, and this\n # one does.\n #\n # *apart*, when given, is handed each repeated field's values by the\n # name in the answer, a line each, before they are joined.\n def self.parse_fields(lines : Array(String), unfold : Bool = false, apart : Hash(String, Array(String)) | ::Nil = nil) : Hash(String, String) | String\n # The response as it came off the wire, whole. `head` says the request\n # was a `HEAD`, whose answer carries the headers of a body it does not\n # send. An interim answer - `100 Continue`, `103 Early Hints` - is read\n # past to the final one after it (RFC 9110 §15.2). A `101` switches\n # protocols, and HTTP ends with it. What is not a response panics with\n # why: this is the text a program has in hand; the client answers the\n # same sentences as `HTTPError`s.\n def self.parse_response(text : String, head : Bool = false) : Response\n # A response's head - the text before its blank line - read: status,\n # reason, the fields, and the lines of those on more than one. A line\n # that begins with a blank continues the field above it (obs-fold, RFC\n # 9112 §5.2), which a user agent joins on with one space.\n def self.parse_response_head(text : String) : ::Tuple(Int32, String, Hash(String, String), Hash(String, Array(String)) | ::Nil) | HTTPError\n # Where *text* goes on at *from* past the empty lines there: what a\n # server skips before a request line (RFC 9112 §2.2).\n def self.past_empty_lines(text : String, from : Int32) : Int32\n def self.post(url : String, body : String | IyiIO = \"\", headers : Hash(String, String) = {} of String => String) : Response | Cancelled | SocketError | HTTPError\n # The proxy a request for *url* goes through, given the values of\n # `HTTP_PROXY`, `HTTPS_PROXY` and `NO_PROXY` - nil when it goes\n # direct. Go's `golang.org/x/net/http/httpproxy` is the rule, line for\n # line, as its documentation and tests state it:\n #\n # * `https://` takes *https_proxy*, `http://` *http_proxy*, any other\n # scheme none. A proxy written without a scheme is `http://`'s, and is\n # answered with it, ready for `open`'s *proxy*.\n # * `localhost` (in lower case: Go's comparison) and a loopback address\n # (127.0.0.0/8, ::1, the first as IPv4-mapped too) never go through a\n # proxy.\n # * *no_proxy* is a comma-separated list, each entry trimmed and read\n # without regard to case: `*` alone sends everything direct; an IP\n # address or a CIDR range (`10.0.0.0/8`, `2001:db8::/32`) matches the\n # addresses in it, IPv4 and its IPv4-mapped form alike, and a CIDR\n # range of one family never the other's; a domain matches itself and\n # every name under it (`foo.com`: `foo.com`, `bar.foo.com`, not\n # `barfoo.com`); with a leading dot, or `*.`, only the names under it\n # (`.y.com`: `x.y.com`, not `y.com`). An address or domain may carry\n # a port (`1.2.3.4:80`, `[::1]:443`, `foo.com:8080`), and matches\n # then on that port alone, the URL's own or its scheme's default.\n # An entry that is none of these (`:80`) is passed over.\n # * A host is compared as IDNA's ASCII form, as Go compares it.\n #\n # Pure: the values are the caller's, so std/http reaches no environment;\n # std/http_proxy reads them from it.\n def self.proxy_for(url : String, http_proxy : String | ::Nil, https_proxy : String | ::Nil, no_proxy : String | ::Nil = nil) : String | ::Nil\n def self.put(url : String, body : String | IyiIO = \"\", headers : Hash(String, String) = {} of String => String) : Response | Cancelled | SocketError | HTTPError\n # The reason phrase a status carries (RFC 9110 §15), for a response the\n # server writes; a status this table does not know gets its class's.\n def self.reason_for(status : Int32) : String\n # One request and its whole answer: the answer as `open` hands it, its\n # body read. Redirects are followed, *redirects* at most; *jar* keeps\n # the cookies the answers set and sends them back; *decompress* asks\n # for gzip, deflate and zstd and undoes them. A refused or reset\n # connection answers `SocketError`; a task cancelled answers\n # `Cancelled`; what the server does wrong answers `HTTPError`. `!`\n # passes any of them up, `.or_panic` refuses it.\n def self.request(method : String, url : String, headers : Hash(String, String) = {} of String => String, body : String | IyiIO = \"\", redirects : Int32 = 10, jar : CookieStore | ::Nil = nil, decompress : Bool = true, timeout_ms : Int32 = 0, proxy : String | ::Nil = nil) : Response | Cancelled | SocketError | HTTPError\n # A request's head: the request line, `Host`, `Connection` (*connection*:\n # `close`, or `Upgrade`), the caller's headers, and the body's framing -\n # *length*, chunks, or none.\n def self.request_head(method : String, path : String, host : String, headers : Hash(String, String), length : Int64 | ::Nil, chunked : Bool, connection : String) : String\n # Two field names for the same field: ASCII case is the only difference\n # a name may carry.\n def self.same_name?(a : String, b : String) : Bool\n def self.split_crlf(text : String) : Array(String)\n # A status line read: the status and its reason, or why it is not one.\n def self.status_line(line : String) : ::Tuple(Int32, String) | HTTPError\n # What an `https://` request is checked against and offers: the\n # system's roots, and ALPN's `http/1.1`, unless a program sets its own -\n # roots of its own for a server it runs, say.\n def self.tls_config : TlsConfig\n def self.tls_config=(config : TlsConfig) : TlsConfig\n # A token (RFC 9110 §5.6.2): what a method or a field name is made of.\n def self.token?(text : String) : Bool\n # Without the blanks at either end (RFC 9112 §5.1: field values are\n # trimmed of the whitespace around them).\n def self.trim(s : String) : String\n # The 101 an upgrade to *protocol* is answered with, and the connection,\n # which is the caller's from then on: std/websocket's handshake. Any\n # other answer is an `HTTPError` naming it.\n #\n # *proxy* is `open`'s, and so is its credential, on the CONNECT alone;\n # but an upgrade goes through a tunnel for `http://` as for `https://`,\n # the handshake inside it in origin form. `Upgrade` belongs to the\n # connection it is sent on (RFC 9110 §7.8), and a proxy forwarding a\n # request removes `Connection` and every field it names (§7.6.1), so a\n # handshake handed to a forward proxy in absolute form reaches the\n # server, at best, as a plain GET: the gate's proxy, which drops\n # `Connection`, leaves std/websocket's server a request it answers 400.\n def self.upgrade(url : String, protocol : String, headers : Hash(String, String) = {} of String => String, timeout_ms : Int32 = 0, proxy : String | ::Nil = nil) : Upgraded | Cancelled | SocketError | HTTPError\nend\n\n# Requests that keep their connections: an `HTTPClient` holds the connections\n# its answers left open, by host and port, and the next request to that\n# server goes over one of them instead of a new one - the TCP handshake,\n# and the slow start after it, paid once rather than per request. Its\n# methods are `HTTP`'s, redirects, cookies and decoding included:\n#\n# ```\n# client = HTTPClient.new\n# client.get(\"http://127.0.0.1:8080/a\")\n# client.get(\"http://127.0.0.1:8080/b\") # the same connection\n# client.close\n# ```\n#\n# A connection goes back once its answer has been read to the end (inside\n# `open`, up to 64 KiB left unread is read past for it) and the answer\n# allows it; at most *idle* wait per server, and the rest close. A server\n# may close an idle connection whenever it likes (RFC 9112 §9.3.1), so a\n# request whose kept connection turns out closed - the write fails, or it\n# ends before a byte of an answer - is sent again once on a new one, when\n# its method is idempotent (RFC 9110 §9.2.2) and its body a string;\n# anything else answers the failure. One task at a time per request: two\n# tasks sending at once take two connections, and a client is not for\n# sharing across threads. An `https://` connection is kept under the\n# `HTTP.tls_config` it was made with, and handed only to a request made\n# under the same one (`TlsMadeUnder`): after `HTTP.tls_config=` the next\n# request makes a connection of its own, checked against the new roots.\n# A client made with *tls* uses that configuration instead of\n# `HTTP.tls_config`, and one made with *resolver* finds its hosts by it\n# instead of `Resolver.system` - an encrypted resolver, or a hosts text\n# that pins a name to an address: std/secure_dns's `DnsOverHttps` is a\n# client of its own with both, so its server is checked against the roots\n# it was given and reached at the address it was given.\n#\n# A client resumes TLS sessions (RFC 8446 §2.2): the tickets an\n# `https://` server sends are kept for its origin - scheme, host and\n# port, whichever proxy's tunnel they came through - under the TLS\n# configuration they came under, the client's own *tls* or else\n# `HTTP.tls_config` (`TlsMadeUnder`, as a kept connection is), and a new\n# connection to that origin offers the newest, each once.\n# A resumed handshake checks no certificate - the ticket stands for the\n# check the first one made - so a ticket is never offered to another\n# origin, nor under another configuration: after `HTTP.tls_config=`, or\n# roots, an identity, `now`, `min_version` or `require_staple` assigned\n# in place - in `HTTP.tls_config` or in the client's own *tls* - the next\n# connection is a full handshake under the new ones, and that origin's\n# tickets from under the old one are dropped. (std/tls's `TlsSession`\n# holds each ticket to its configuration too; this client drops them\n# where that one would only pass them over.) At most *origin_tickets* are\n# kept an origin - 4 by default, so that as many connections as *idle*\n# keeps by default can resume at once, where std/tls's server and\n# OpenSSL's send 2 a handshake - and *tickets* in all, 256 by default: as\n# many origins as that leaves room for at *origin_tickets* each, the one\n# longest unused dropped first. 0 for either keeps none, and nothing\n# resumes. `close`\n# leaves them. Nothing goes early (0-RTT), whatever a ticket allows: the\n# module's header says why. `connections_resumed`, `tickets_held` and\n# `Response#tls_resumed?` say what was kept and used. What it saves, by\n# bench/std_http_resume.iyi built --release on a 12-core machine other\n# jobs shared (medians of 200, the middle of three runs): the handshake\n# took 0.96 ms full and 0.51 resumed against std/http's server, 1.03 and\n# 0.57 against OpenSSL 3.5's s_server - and a GET on a new connection,\n# which waits about 40 ms at each iyi end that is not the handshake's,\n# 82.98 ms and 82.00, and 42.04 and 40.96.\n#\n# Over HTTP/2 - `https://` where ALPN chose `h2`, or `http://` with\n# *prior_knowledge* (h2c, RFC 9113 §3.3) - a kept connection carries the\n# next request on a new stream, until the server says GOAWAY.\n#\n# HTTPS records (RFC 9460), when `use_https_records` is set: before a new\n# connection to an `https://` origin - not through a proxy, and not for\n# an upgrade - the client asks its resolver for the origin's HTTPS\n# records (`Resolver#https_records`, AliasMode followed) and connects by\n# the first ServiceMode record it can use: one whose mandatory keys it\n# knows - the seven std/dns reads, port and no-default-alpn mandatory by\n# being there (section 9) - and whose protocols (alpn, and http/1.1\n# unless no-default-alpn) hold one of the configuration's `alpn`, or\n# http/1.1 where that is empty. Its target - the record's owner for \".\"\n# - and its port, or the origin's, are where the connection goes; its\n# `ech` is the connection's `ech_configs` (RFC 9848); and the protocols\n# it lists go first in the ClientHello's ALPN, which still offers every\n# one the configuration does (section 7.1.2: a record says which\n# protocols the endpoint has, and cannot take one away). The certificate\n# is checked, and the server named inside, for the origin's host,\n# whatever the target (section 2.3). An `ech` whose ECHConfigList holds\n# no config std/tls can use is passed over, as RFC 9849 section 6.1 has\n# it. The address hints are not read: the target's addresses are asked\n# for as any host's are.\n#\n# An endpoint that does not connect gives way to the next, then to the\n# last AliasMode target and to the origin itself (section 3) - unless\n# every endpoint carries `ech`, when the request fails rather than name\n# the server in the clear (RFC 9848 section 5.1). A TLS refusal is the\n# request's failure, but for one: a server that turned the encrypted\n# ClientHello down, its certificate checked for the config's\n# public_name, is asked once more on a new connection to the same\n# address, under the retry_configs it sent, or without ECH where it sent\n# none, which turns ECH off there (RFC 9849 section 6.1.6); a refusal of\n# that is the failure. No records (NXDOMAIN, NODATA), a set section 2.2\n# refuses, an AliasMode \".\" (the service says it is not there), or no\n# record the client can use: the connection is made as without records.\n# So is one whose lookup failed through a resolver that asks in the\n# clear, as section 3.1 lets a client choose; through encrypted\n# upstreams the failure is the request's, as section 3.1 asks, for\n# there the one who can drop the answer is an attacker taking the\n# records away. `localhost` and addresses are not asked about, and an\n# `http://` URL is not made `https://` by its records (section 9.5's\n# SHOULD): the program wrote the scheme.\n#\n# A record's `ech` and protocols make a configuration of their own - a\n# copy of the client's, made once and kept for the origin while the same\n# ones come under the same configuration - so that a kept connection and\n# a ticket are handed on only under the record they were made by\n# (`TlsMadeUnder` holds `ech_configs`). Off by default: every new\n# connection then waits on one DNS answer or more before its ClientHello\n# (RFC 9848 section 5.3 forbids sending it sooner), with no cache to\n# spare the next, and the records may move a connection to another host\n# and port, which is the program's to ask for.\npub class HTTPClient\n # Every idle connection closed. The client may be used after; it opens\n # new ones.\n def close : Nil\n # Connections this client has opened, and requests sent over one it\n # kept: what a program reads to see that its connections are kept.\n def connections_made : Int32\n # Connections this client opened whose TLS handshake resumed a session\n # by a ticket it kept.\n def connections_resumed : Int32\n def connections_reused : Int32\n def delete(url : String, headers : Hash(String, String) = {} of String => String) : Response | Cancelled | SocketError | HTTPError\n def get(url : String, headers : Hash(String, String) = {} of String => String) : Response | Cancelled | SocketError | HTTPError\n protected def give_back(key : String, conn : Conn) : Nil\n def head(url : String, headers : Hash(String, String) = {} of String => String) : Response | Cancelled | SocketError | HTTPError\n # The configuration a connection to *origin* is made under by a record\n # whose `ech` is *ech* (nil: none) and whose protocols put *alpn* in its\n # order, *base* being the client's own or `HTTP.tls_config`: *base*\n # itself where those are its own, and otherwise a copy of it with them -\n # the same object every time while *base* is the same (`TlsMadeUnder`),\n # so that a connection kept and a ticket held under it serve the next\n # connection by the same record. It becomes the one the origin's kept\n # connections are taken under (`https_current`). The origin's\n # configurations from under another *base* go.\n protected def https_config(origin : String, base : TlsConfig, ech : Array(UInt8) | ::Nil, alpn : Array(String)) : TlsConfig\n # The configuration *origin*'s last connection by HTTPS records was made\n # under, while *base* is the one it came from - *base* itself where it\n # was made as without records: what a kept connection to the origin\n # must have been made under to be taken. Nil when none was made by them\n # under *base*, and then none is taken.\n protected def https_current(origin : String, base : TlsConfig) : TlsConfig | ::Nil\n # *timeout_ms* and *proxy* are `HTTP.open`'s, for every request the\n # client sends; *tls* and *resolver* are this client's own (above);\n # *origin_tickets* and *tickets* bound the TLS tickets kept, by origin\n # and in all.\n def initialize(idle : Int32 = 4, timeout_ms : Int32 = 0, prior_knowledge : Bool = false, proxy : String | ::Nil = nil, tls : TlsConfig | ::Nil = nil, resolver : Resolver | ::Nil = nil, origin_tickets : Int32 = 4, tickets : Int32 = 256)\n protected def made : Nil\n def open(method : String, url : String, headers : Hash(String, String) = {} of String => String, body : String | IyiIO = \"\", redirects : Int32 = 10, jar : CookieStore | ::Nil = nil, decompress : Bool = true, &block : (Response -> R)) : R | Cancelled | SocketError | HTTPError forall R\n def post(url : String, body : String | IyiIO = \"\", headers : Hash(String, String) = {} of String => String) : Response | Cancelled | SocketError | HTTPError\n # `http://` spoken as HTTP/2 from the first byte, without asking: for a\n # server known to take it.\n def prior_knowledge : Bool\n # The proxy every request goes through, `HTTP.open`'s *proxy*; its\n # connections are kept under it.\n def proxy : String | ::Nil\n def put(url : String, body : String | IyiIO = \"\", headers : Hash(String, String) = {} of String => String) : Response | Cancelled | SocketError | HTTPError\n def request(method : String, url : String, headers : Hash(String, String) = {} of String => String, body : String | IyiIO = \"\", redirects : Int32 = 10, jar : CookieStore | ::Nil = nil, decompress : Bool = true) : Response | Cancelled | SocketError | HTTPError\n # What turns a host name into addresses for this client's connections,\n # instead of `Resolver.system`: encrypted upstreams, or a hosts text\n # alone that pins a name to an address, as std/secure_dns's\n # `DnsOverHttps` pins its server's.\n def resolver : Resolver | ::Nil\n protected def resumed : Nil\n # The session a new connection to *origin* under *tls* offers a ticket\n # from and keeps the server's new ones in; nil when the client keeps\n # none. The origin's tickets from under another configuration are\n # dropped, not left to take room that `TlsSession` would never offer\n # them from. The session handed out is the newest used; past the room\n # *tickets* leaves, the oldest goes.\n protected def session_for(origin : String, tls : TlsConfig) : TlsSession | ::Nil\n # A kept connection to *key*, nil when none waits. An HTTP/2 connection\n # that can take no more requests is closed rather than handed out, and\n # so is an `https://` one made under another TLS configuration than\n # *tls*, the one the request is made under (`TlsMadeUnder`): keyed by\n # scheme, host and port alone, a connection whose server was checked\n # against one set of roots carried requests after `HTTP.tls_config=`\n # named others that would have refused it.\n protected def take(key : String, tls : TlsConfig | ::Nil = nil) : Conn | ::Nil\n # The TLS tickets held for *origin* - `https://host:port`, the host in\n # lower case and the port written even where it is 443 - or for every\n # origin when nil.\n def tickets_held(origin : String | ::Nil = nil) : Int32\n # What this client's `https://` requests are checked against and offer,\n # instead of `HTTP.tls_config`: roots of its own, or ALPN's `h2` first.\n def tls : TlsConfig | ::Nil\n # Whether a new `https://` connection is made by the origin's HTTPS\n # records (the class's header); off by default.\n def use_https_records : Bool\n # Whether a new `https://` connection is made by the origin's HTTPS\n # records (the class's header); off by default.\n def use_https_records=(value : Bool) : Bool\nend\n\n# What the other end did that HTTP does not allow, as a value: `reason` is\n# the sentence, `status` the answer a server gives a request that did it\n# (400, or 413 and 431 for the limits). `message` says it is HTTP's.\npub struct HTTPError\n def initialize(reason : String, status : Int32 = 400)\n def reason : String\n def status : Int32\n def to_s : String\nend\n\n# One endpoint an origin's HTTPS records name, as `HTTP.https_endpoints`\n# reads it: the host and port to connect to, the ECHConfigList to encrypt\n# the ClientHello under (nil: none), and the protocols to offer by ALPN,\n# in order.\npub struct HttpsEndpoint\n def alpn : Array(String)\n def ech : Array(UInt8) | ::Nil\n def host : String\n def initialize(host : String, port : Int32, ech : Array(UInt8) | ::Nil, alpn : Array(String))\n def port : Int32\nend\n\n# A `multipart/form-data` body (RFC 7578) read a part at a time, as it\n# arrives: `next_part` answers the next `Part`, nil after the last, and a\n# part's `read` answers its bytes up to the boundary, \"\" at its end. A part\n# not read to its end is read past by the next `next_part`. The body of a\n# request is `Request#multipart`'s; any `BodyReader` and boundary will do.\n# A part's head is refused past 16 KiB, and a body that ends before its\n# closing boundary is an `HTTPError`.\npub class Multipart\n # The boundary a `Content-Type` of `multipart/...` names, nil when it\n # names none - or one of a length RFC 2046 §5.1.1 does not allow, 1 to\n # 70 characters, which `new` refuses with a panic. The type is the\n # peer's: `Request#multipart` handed a client's 90-character boundary\n # through to that panic (found by bench/std_fuzz_exercise.sh).\n def self.boundary(content_type : String) : String | ::Nil\n # Where *pattern* is in what is held, -1 when it is not there yet.\n protected def find(pattern : String) : Int32\n def initialize(body : BodyReader, boundary : String)\n # The next part, nil after the last.\n def next_part : Part | Nil | Cancelled | SocketError | HTTPError\n # Up to *max* bytes of the part being read, \"\" at its boundary. What is\n # held back is what may yet be the start of the boundary.\n protected def part_read(max : Int32) : String | Cancelled | SocketError | HTTPError\n # One more piece of the body onto what is held: false at its end.\n protected def pull : Bool | Cancelled | SocketError | HTTPError\nend\n\n# A multipart/form-data body to send: fields and files in order. Its\n# boundary is chosen when the body is first asked for - `finish`,\n# `content_type` or `boundary`, whichever comes first, after which no\n# part is added - as `iyi-` and 32 hex digits of the parts' SHA-1, made\n# again from itself in the rare case a part holds it: so it is none of\n# the parts' bytes by construction rather than by chance, the same\n# fields make the same body, and std/http reaches no source of\n# randomness for it. A boundary given to `new` is used as it is, and a\n# part that holds it is refused.\npub class MultipartBuilder\n def boundary : String\n def content_type : String\n def field(name : String, value : String) : self\n def file(name : String, filename : String, data : String, content_type : String = MIME.from_extension(filename)) : self\n # The body, closing boundary and all.\n def finish : String\n # The boundary ends a part where it follows a CRLF, the part's first\n # bytes included, which follow the head's blank line.\n protected def self.holds?(data : String, mark : String) : Bool\n def initialize(boundary : String | ::Nil = nil)\n # A name inside quotes, as browsers write one: a quote and a line break\n # percent-encoded (the WHATWG form encoding), so no field can end the\n # parameter or the line early.\n protected def self.quoted(text : String) : String\nend\n\n# One part of a multipart body: its head's fields, its name and file name\n# from `Content-Disposition`, and its bytes, read up to its boundary.\npub class Part\n def content_type : String | ::Nil\n # The file name a browser sent the part under, `filename=`.\n def filename : String | ::Nil\n def finished? : Bool\n def header(name : String) : String | ::Nil\n def headers : Hash(String, String)\n def initialize(owner : Multipart, headers : Hash(String, String))\n # The form field's name, `name=` of `Content-Disposition`.\n def name : String | ::Nil\n # The part's next bytes, at most *max*; \"\" at its end.\n def read(max : Int32 = 65536) : String | Cancelled | SocketError | HTTPError\n # The rest of the part as one string, refused past *limit* bytes.\n def read_all(limit : Int64 = 2147483647_i64) : String | Cancelled | SocketError | HTTPError\nend\n\n# What a server's block is handed: one request. Its body is `body`, read\n# whole before the block ran, or under `stream_bodies` read by the block\n# from `body_io` as it arrives; `body` then reads the rest itself, and a\n# body that cannot be read - the client went, or sent one that is not\n# HTTP - ends the connection with that sentence rather than be answered as\n# if it were whole.\npub class Request\n def body : String\n def body_io : BodyReader\n # The pairs of the request's `Cookie` header, the first of a name kept.\n def cookies : Hash(String, String)\n # The fields of a form: the query's, and an\n # `application/x-www-form-urlencoded` body's after them. The body is\n # read for it.\n def form : Params\n def header(name : String) : String | ::Nil\n def headers : Hash(String, String)\n # A request whose body is in hand: what `parse_request` answers.\n def initialize(method : String, path : String, query : String | ::Nil, headers : Hash(String, String), body : String, version : String = \"HTTP/1.1\", remote_address : String | ::Nil = nil)\n # A request whose body is still on the connection.\n def initialize(method : String, path : String, query : String | ::Nil, headers : Hash(String, String), version : String, reader : BodyReader, remote_address : String | ::Nil = nil)\n def method : String\n # The body as `multipart/form-data` parts, read as they arrive; nil when\n # the `Content-Type` is not multipart or names no boundary\n # (`Multipart.boundary`).\n def multipart : Multipart | ::Nil\n def path : String\n # The client's certificate chain, leaf first, as std/tls checked it:\n # under `serve(tls:)` with `client_roots` set, the certificate the\n # client presented; empty otherwise.\n def peer_certificates : Array(Certificate)\n # The client's certificate chain, leaf first, as std/tls checked it:\n # under `serve(tls:)` with `client_roots` set, the certificate the\n # client presented; empty otherwise.\n def peer_certificates=(value : Array(Certificate)) : Array(Certificate)\n def query : String | ::Nil\n # The client's address, as the server's socket saw it (no port): nil\n # for a request a program made, or when the client had already gone. A\n # proxy in front is what this names; `X-Forwarded-For` is the proxy's\n # word, and a header any client can write.\n def remote_address : String | ::Nil\n def tls_resumed=(resumed : Bool) : Bool\n # Whether the TLS connection the request came over resumed a session by\n # a ticket, under `serve(tls:)`: its `peer_certificates` are then the\n # ticket's. False in the clear.\n def tls_resumed? : Bool\n def version : String\nend\n\n# A response: what a server's block answers, and what a client is handed.\n#\n# To write one: `Response.new(200, \"hello\")`, a status and a string;\n# `Response.new(200, io)`, a stream the server copies out and closes, with\n# the caller's `Content-Length` when it gives one and chunked otherwise;\n# `Response.stream(200) { |w| w.write(\"...\") }`, whose block writes as it\n# goes; `Response.upgrade(headers) { |socket, leftover| ... }`, a 101 after\n# which the connection is the block's. `add_header` writes a field on a\n# line of its own, as each `Set-Cookie` must be.\n#\n# What a client is handed: the status, reason and headers, and the body -\n# `body` whole, or `body_io` as it arrives inside `HTTP.open`'s block.\npub class Response\n # One more line of the field *name*, written on a line of its own: what\n # two `Set-Cookie`s need, since the \", \" a field's lines are joined with\n # is part of a cookie's date.\n def add_header(name : String, value : String) : Nil\n # The lines of each field written on more than one, by its name in\n # `headers`; nil when every field is on one line.\n def apart : Hash(String, Array(String)) | ::Nil\n # The body: whole. Inside `HTTP.open`'s block it is read here, the first\n # time it is asked for, and a body that cannot be read panics with why;\n # `body_io` answers that as a value.\n def body : String\n # The body as it arrives. For a response a program made, its string.\n def body_io : BodyReader\n # Whether the client undid the body's `gzip`, `deflate` or `zstd`\n # coding; the `Content-Encoding` and `Content-Length` that described it\n # are gone from the headers then.\n def decoded? : Bool\n # A header by name, as the server spelled it or otherwise: a field\n # name is case-insensitive (RFC 9110 §5.1), and `content-length` is as\n # common on the wire as `Content-Length`.\n def header(name : String) : String | ::Nil\n # A field's lines apart, in the order they came: `header` joins them\n # with \", \", and `Set-Cookie` is the field that join breaks (RFC 9110\n # §5.3), since a cookie's `Expires` date has a comma in it - two cookies\n # read as \"a=1; Expires=Wed, 21 Oct 2026 07:28:00 GMT, b=2\", which no\n # split takes back apart. Empty for a field that is not there.\n def header_values(name : String) : Array(String)\n def headers : Hash(String, String)\n # A response a client read: its body comes from *reader*, and *url* is\n # where it came from.\n def initialize(status : Int32, reason : String, headers : Hash(String, String), apart : Hash(String, Array(String)) | ::Nil, reader : BodyReader, url : String, decoded : Bool)\n def initialize(status : Int32, reason : String, headers : Hash(String, String), body : String, apart : Hash(String, Array(String)) | ::Nil = nil)\n # A response to write: the reason is the status's own, the headers the\n # caller's. `Response.new(200, \"hello\")` is the common shape.\n def initialize(status : Int32, body : String = \"\", headers : Hash(String, String) = {} of String => String)\n # A response whose body is *source*, copied out by the server and\n # closed after.\n def initialize(status : Int32, source : IyiIO, headers : Hash(String, String) = {} of String => String)\n # The body read whole into the response, which is answered; why not,\n # when it cannot be.\n def load : Response | Cancelled | SocketError | HTTPError\n def reason : String\n def source : IyiIO | ::Nil\n def status : Int32\n # A response whose body the block writes as it goes, chunked.\n def self.stream(status : Int32, headers : Hash(String, String) = {} of String => String, &writer : (BodyWriter -> Nil)) : Response\n def success? : Bool\n def takeover : Proc(IyiSocket | TlsStream, String, Nil) | ::Nil\n protected def takeover=(takeover : Proc(IyiSocket | TlsStream, String, Nil)) : Proc(IyiSocket | TlsStream, String, Nil)\n def tls_resumed=(resumed : Bool) : Bool\n # Whether the `https://` connection the answer came over resumed a TLS\n # session by a ticket an `HTTPClient` kept, rather than a full\n # handshake; false in the clear and for one a program made.\n def tls_resumed? : Bool\n # A 101 Switching Protocols with *headers* (`Upgrade` and the\n # protocol's own), after which the connection is the block's: it is\n # handed the connection - the socket, or under `serve(tls:)` the\n # `TlsStream` over it - and the bytes the client sent after its request,\n # and the connection closes when it returns.\n def self.upgrade(headers : Hash(String, String), &takeover : (IyiSocket | TlsStream, String -> Nil)) : Response\n # The URL the answer came from, after any redirects; nil for one a\n # program made.\n def url : String | ::Nil\n def writer : Proc(BodyWriter, Nil) | ::Nil\n protected def writer=(writer : Proc(BodyWriter, Nil)) : Proc(BodyWriter, Nil)\nend\n\npub struct Server\n # The headers a coded body goes with: the coding, and `Vary` so that a\n # cache keeps the answers apart. A `Content-Length` the block gave is\n # the plain body's, and goes.\n protected def self.coded(response : Response, coding : String) : Response\n # The coding *response* goes in to the client of *req*, or nil: one the\n # client takes (RFC 9110 §12.5.3, a `q` of 0 refusing it), for an\n # answer with a body and a type worth compressing, and no coding of its\n # own. A whole body goes `zstd` when the client's `q` for it is at least\n # its `q` for gzip, and `gzip` otherwise. The tie goes to zstd for the\n # server's time: measured on this machine, release builds, on\n # src/std/http.iyi (199,134 bytes) `Gzip.compress` wrote 54,484 bytes in\n # 5 ms and `Zstd.compress` 61,753 in 1 ms, and on CHANGELOG.md (1.5 MB)\n # 552,446 in 58 ms against 589,785 in 13 ms - a quarter of the time, for\n # an eighth more bytes at most. A stream - an `IyiIO` or a\n # `Response.stream` - goes gzip or as it is: std/compress's `Deflater`\n # writes each piece as it comes, where std/zstd's compressor takes its\n # input whole, and a frame a write would code each piece alone.\n def self.coding_for(req : Request, response : Response) : String | ::Nil\n # A string body compressed whole in *coding*, `zstd` or `gzip`, with\n # the headers that say so. `Zstd.compress`'s frame needs a window of\n # 1 MiB at most, inside the 8 MB RFC 9659 §3 holds an encoder to.\n protected def self.compressed(response : Response, coding : String) : Response\n # A response's head. `Content-Length` is *length*'s - the caller's own\n # line is checked against it, and kept only where no body follows it: a\n # HEAD, or a 304 that names the length a 200 would have (RFC 9110 §8.6) -\n # or `Transfer-Encoding: chunked` when *chunked*, or neither for a body\n # the connection's close ends. `Connection` says what the connection will\n # do next, except on an *upgrade*, whose own line says it. A 1xx, 204 or\n # 304 has no content (RFC 9110 §15), and writes neither a body nor a\n # length of its own (§8.6): the body was read by the client as the start\n # of the next answer, and `Content-Length: 0` on a 304 told a cache that\n # the resource had become empty. A field added on lines of its own\n # (`add_header`) is written a line each.\n def self.format_head(response : Response, head : Bool, close : Bool, length : Int64 | ::Nil, chunked : Bool, upgrade : Bool = false) : String\n # The response as it goes on the wire, whole: `format_head` for its\n # string body, and the body.\n def self.format_response(response : Response, head : Bool, close : Bool) : String\n # One connection: requests until the client is done. A request that is\n # not HTTP is answered with why and the connection closed, since the\n # bytes after it cannot be trusted to be a request either. Requests that\n # came in one read are read where they lie, one after another. A\n # connection that opens with HTTP/2's preface is served as HTTP/2. Under\n # *tls* the handshake comes first, and the connection ends with\n # close_notify. A connection this side wrote last on - an answer, a\n # refusal, a GOAWAY - closes by lingering (`Conn#close`), so the reset\n # a close with the client's bytes unread is cannot take what was\n # written from the client before it reads it. One that timed out or was\n # cancelled, with nothing of this side's waiting to be read, closes at\n # once, and so does one whose client said `close` and sent nothing past\n # its request (`serve_h1`).\n def self.handle(client : IyiSocket, handler : Proc(Request, Response), listener : IyiSocket | ServeStop | Nil = nil, idle : Hash(UInt64, Conn) | ::Nil = nil, stream_bodies : Bool = false, compress : Bool = false, timeout_ms : Int32 = 0, tls : TlsServerConfig | TlsFrozenServerConfig | Nil = nil, request_timeout_ms : Int32 = 0) : Nil\n def initialize\n # A request's head - the text before its blank line - read and checked,\n # or why it is not one.\n def self.parse_head(text : String) : RequestHead | HTTPError\n # A request at *from* in `text`, if a whole one is there. No request and\n # no error means \"not yet\". `consumed` counts from the start of `text`.\n def self.parse_request(text : String, from : Int32 = 0) : ParsedRequest\n # Serve `listener` until it is closed, on *workers* threads: each\n # connection is a task on the pool `spawn_parallel` starts (SPEC.md\n # III.4.13), started by whichever worker is free and served there to\n # its end, while the thread that called this accepts. The block runs on\n # the connection's worker, once per request, on several workers at\n # once; what it answers is written back.\n # The close ends a connection waiting on its client too, for its next\n # request or for the rest of one, and one that is answering ends when its\n # answer is written: a keep-alive client that sat idle kept `serve` from\n # returning for as long as it stayed, and so did one that had sent\n # what has arrived of a request so far - one byte of it was enough.\n #\n # *stream_bodies*: the block reads each request's body from `body_io`\n # rather than being handed it whole. *compress*: an answer whose type\n # std/mime calls compressible goes zstd or gzip to a client that\n # accepts one (`coding_for`).\n #\n # *timeout_ms*: a request's head must have arrived within it, counted\n # from when the server starts waiting for one - a kept-alive connection's\n # idle time included - and no read of a body nor write of an answer may\n # wait longer; a connection that does is closed. Without it, a client\n # that sends a byte of its head every few seconds (Slowloris) holds a\n # connection and its fiber for as long as it likes, and so does one that\n # reads none of its answer. A minute by default, nginx's\n # `client_header_timeout`; 0 for none. A connection handed over by\n # `Response.upgrade` waits as its protocol likes.\n #\n # *request_timeout_ms*: the whole request - head and body - must have\n # arrived within it, counted from the same moment as *timeout_ms*, as\n # Go's `ReadTimeout` beside its `ReadHeaderTimeout`; the head is held to\n # the sooner of the two. Without it a body sent a byte every few seconds\n # was bounded per read alone, and held its connection for as long as it\n # dripped. A block that reads the body itself (*stream_bodies*) reads\n # under it until the block returns, and what it leaves unread is read\n # past under it too. Over HTTP/2 the wait for each request and its body\n # is held to it on the connection the same way, the head to the sooner\n # of the two. Five minutes by default, which a 64 MiB body (`MAX_BODY`)\n # meets at 224 KB/s; a server taking large uploads over slow links\n # raises it. 0 for none. A connection past it is closed, unanswered, as\n # one past *timeout_ms* is.\n #\n # *max_connections*: at most this many connections are served at once;\n # 1024 by default, 0 for no limit. Past it the server stops accepting\n # until one ends, so the next connection waits in the kernel's listen\n # queue - queued, not refused, as Go's `netutil.LimitListener` does - and\n # is served in its turn; a client that gives up waiting goes unserved.\n # Each served connection holds its place until it closes, a kept-alive\n # one between requests too, which *timeout_ms* bounds. The process's\n # own limit on descriptors may come first.\n #\n # *tls*: each connection is TLS (std/tls's `TlsServer`, 1.3 or 1.2) under this\n # configuration, its handshake held to *timeout_ms* too and run on the\n # worker that serves it; one whose handshake fails is closed, the\n # client told why by an alert. Inside it a connection that opens with\n # HTTP/2's preface - as a client whose ALPN chose `h2` does, when\n # `tls.alpn` offers it - is served HTTP/2, and any other HTTP/1.1. A\n # `Response.upgrade` block over TLS is handed the `TlsStream`, so a\n # WebSocket is `wss://`. On more than one worker the config is a\n # `TlsFrozenServerConfig` - `config.frozen` - since every worker reads\n # it at once: its ticket keys are one set behind a lock, so a ticket a\n # connection on one worker was sent resumes on any other, and an\n # identity source given to `frozen` is a block the compiler checked. A\n # `TlsServerConfig` itself is refused at the call (\"Server.serve hands\n # `tls : TlsServerConfig` to other threads, several at once, and it is\n # not Share: ... Pass `config.frozen` ...\"), not frozen here: `frozen`\n # is a copy, so a property assigned after the server started would be\n # served by no worker and nothing would say so, and a config with an\n # `identity_source` cannot be frozen without its source given again as\n # a block the compiler checks. Under `workers: 1` either is served.\n #\n # *workers*: the pool's size, `IyiWorkers.count` by default - `IYI_WORKERS`\n # from the environment, else the cores this process may run on. The\n # pool is the process's one, and it does not grow or shrink once it has\n # started, so a count other than the one it started with panics. Every\n # worker runs the block at once, so the compiler checks it where it is\n # written as it checks a parallel task's (`@[Share]`, SPEC.md III.4.4):\n # every value it captures must be `Share` - a table behind a `Mutex`\n # (std/mutex), a count in an `Atomic`, a `SharedRouter` (std/router) -\n # every captured local assigned once, and the constants and class\n # variables it names `Share`. The refusal names the variable, why its\n # type is not `Share`, and the two ways out: the lock, or `workers: 1`.\n # `workers: 1`, written as the literal, serves on the calling thread\n # alone - each connection a task beside the accept loop, as `spawn`\n # makes one - and its block is not checked: a block that calls a\n # `Router`, appends to an `Array` or keeps a handle that is not `Share`\n # is served there. A count in a variable is checked whatever it holds,\n # since the compiler cannot know it is 1. A count of 1 from the default\n # (`IYI_WORKERS=1`, one core) serves on the calling thread too.\n #\n # A connection stays on the worker that started it (III.4.13, part 1):\n # connections spread over the workers free as they arrive, and one kept\n # alive is not moved later. A block that computes without parking holds\n # its worker meanwhile, as any task does. The listener is the calling\n # thread's, and a close of it is made there: a block that stops the\n # server sends on a `Channel` a task beside the server receives from,\n # and that task closes it. At the stop each connection waiting on its\n # client is closed on its own worker, sent close_notify there first\n # under *tls*.\n def self.serve(listener : IyiSocket, stream_bodies : Bool = false, compress : Bool = false, timeout_ms : Int32 = 60000, tls : C = nil, request_timeout_ms : Int32 = REQUEST_TIMEOUT, max_connections : Int32 = MAX_CONNECTIONS, workers : Int32 = IyiWorkers.count, &handler : (Request -> Response)) : Nil forall C\n # `serve` with a value for its handler rather than a block: a\n # `SharedProc`, a `SharedRouter` (std/router), or one of the program's\n # own, whose `call(request : Request) : Response` answers each request,\n # as Go's `http.Handler` does. On more than one worker it must be\n # `Share` (SPEC.md III.4.4), since every connection on every worker\n # calls the one value at once: the compiler refuses one that is not at\n # the argument, naming the field that failed and the two ways out - a\n # count in an `Atomic`, a pool or a cache behind a `Mutex`, a\n # `SharedRouter` for a `Router`, or `workers: 1`, under which any value\n # with that `call` is served on the calling thread, a `Router`\n # included. What the check does not see is the edge `spawn_parallel`\n # has too: a method the handler calls that writes a module's state. A\n # struct handler is copied into each connection's task, and an `Atomic`\n # in it with it: what the connections share is a class, or held by\n # one.\n #\n # The rest is the block form's: *stream_bodies*, *compress*,\n # *timeout_ms*, *tls* (`config.frozen` on more than one worker),\n # *request_timeout_ms*, *max_connections* and *workers*, HTTP/2 by its\n # preface, `Response.upgrade`, and a close of *listener* - on the\n # thread that called this - ending every connection waiting on its\n # client and returning once the others have answered.\n def self.serve(listener : IyiSocket, handler : H, stream_bodies : Bool = false, compress : Bool = false, timeout_ms : Int32 = 60000, tls : C = nil, request_timeout_ms : Int32 = REQUEST_TIMEOUT, max_connections : Int32 = MAX_CONNECTIONS, workers : Int32 = IyiWorkers.count) : Nil forall H, C\n protected def self.writer_for(socket : IyiSocket | TlsStream, chunked : Bool, gzip : Bool) : BodyWriter\nend\n\n# A TLS connection used as a socket is: read into a buffer, written to,\n# closed, its timeouts set - by a `Conn`, a `BodyWriter`, and a connection\n# handed over by an upgrade (`wss://` at either end). What TLS refuses is a\n# `SocketError` carrying TLS's own sentence (`layer_reason`), so answers\n# keep the types they have over a plain socket.\npub class TlsStream\n # The socket closed at once, nothing sent or read first.\n def abort : Nil\n # close_notify, the sending half shut, and what the peer still sends\n # read past for a bounded time before the socket closes\n # (`TlsConnection#close`).\n def close : Nil\n # close_notify and the sending half shut; reads go on until the peer's\n # own (`TlsConnection#close_write`).\n def close_write : SocketError | ::Nil\n def closed? : Bool\n def initialize(tls : TlsConnection, host : String)\n # The peer's certificate chain, leaf first, as the handshake checked it:\n # the server's, at a client; the client's, at a server that asked.\n def peer_certificates : Array(Certificate)\n # Up to *count* bytes into *buffer*: 0 once the peer closed with\n # close_notify.\n def read(buffer : Pointer(UInt8), count : Int32) : Int32 | Cancelled | SocketError\n # Up to *max_bytes* as a string, what is held first: \"\" once the peer\n # closed with close_notify. `IyiSocket#read`'s form, for a block an\n # upgrade hands either.\n def read(max_bytes : Int32 = 4096) : String | Cancelled | SocketError\n # How long a read or a write of the connection under it may wait.\n def read_timeout_ms=(ms : Int32 | ::Nil) : Int32 | ::Nil\n # Whether the handshake resumed a session (`TlsConnection#resumed?`).\n def resumed? : Bool\n def write(text : String) : Int32 | Cancelled | SocketError\n def write_timeout_ms=(ms : Int32 | ::Nil) : Int32 | ::Nil\nend\n\n# What `HTTP.upgrade` answers: the 101, and the connection, which is the\n# caller's now - the socket, and the bytes the server sent after its head.\npub class Upgraded\n def initialize(response : Response, socket : IyiSocket | TlsStream, leftover : String)\n def leftover : String\n def response : Response\n # The connection: the socket, or for `https://` the `TlsStream` over it.\n def socket : IyiSocket | TlsStream\nend\n\nimpl Error for HTTPError\n def message : String\nend\n" }, { "name": "std/http_proxy", @@ -304,8 +322,8 @@ { "name": "std/json", "path": "src/std/json.iyi", - "sourceSha256": "e5388d36116b5e92d043d653b8561cd6016e2092e82af72577df2ca5d3da8ff5", - "surface": "module std/json\n\n# `derive serializable`, in a struct or class whose fields are written with\n# their types: the type reads and writes itself as a JSON object, a key per\n# field, named as the field is.\n#\n# pub struct Coord\n# getter x : Float64\n# @[JSON::Field(key: \"label\")]\n# getter name : String\n# derive serializable\n# end\n#\n# Coord.from_json(%({\"x\": 1.5, \"label\": \"a\"})).x # => 1.5\n# coord.to_json # => {\"x\":1.5,\"label\":\"a\"}\n#\n# A field's value is read and written as `JSON.read_value` and\n# `JSON.write_value` read and write its type: the built-in values, an enum,\n# an `Array` or `Hash(String, V)` of them, an `Any`, another serializable\n# type. A key the type has no field for is passed over; a field with no\n# key keeps its default when it is written with one, as does a field with\n# a default whose key holds `null` where its type does not admit nil; a\n# field with neither is refused by name unless its type admits `nil`,\n# which it then holds. `@[JSON::Field(...)]` renames a field, leaves it\n# out either way, leaves a nil one out, or reads and writes it through a\n# converter (see `JSON::Field`). It is what the other library's `include\n# JSON::Serializable` writes, and the derive runs once, in the type's own\n# module (SPEC.md II.4), so a consumer calls the methods without the macro.\n#\n# Each field's options are read off the type when its methods are compiled,\n# in one `begin` so what a field's annotation says is known to every line\n# after it; and refused there, with the field named, when they do not make\n# sense.\npub macro serializable(declaration)\n\n# One JSON value of any kind, the result of `JSON.parse`. The `as_x` methods\n# panic when the value is of another kind; the `as_x?` ones answer `nil`.\npub struct Any\n alias Type = Nil | Bool | Int64 | Float64 | String | Array(Any) | Hash(String, Any)\n # Equal when the values are: an integer equals the float with the same\n # value, arrays element by element, objects key by key in any order.\n def ==(other : Any) : Bool\n def [](index : Int32) : Any\n def [](key : String) : Any\n def []?(index : Int32) : Any | ::Nil\n def []?(key : String) : Any | ::Nil\n def as_a : Array(Any)\n def as_a? : Array(Any) | ::Nil\n def as_bool : Bool\n def as_bool? : Bool | ::Nil\n # A float, or an integer read as one.\n def as_f : Float64\n def as_f? : Float64 | ::Nil\n def as_h : Hash(String, Any)\n def as_h? : Hash(String, Any) | ::Nil\n def as_i : Int32\n def as_i64 : Int64\n def as_i64? : Int64 | ::Nil\n def as_i? : Int32 | ::Nil\n def as_nil : Nil\n def as_s : String\n def as_s? : String | ::Nil\n def dig(key : String) : Any\n def dig(index : Int32) : Any\n def dig(k : String, *subkeys : String | Int32) : Any\n def dig(idx : Int32, *subkeys : String | Int32) : Any\n def dig?(key : String) : Any | ::Nil\n def dig?(index : Int32) : Any | ::Nil\n def dig?(k : String, *subkeys : String | Int32) : Any | ::Nil\n def dig?(idx : Int32, *subkeys : String | Int32) : Any | ::Nil\n protected def float_value? : Float64 | ::Nil\n # Consistent with `==`: a whole float hashes as the integer it equals, an\n # object's hash does not depend on the order its keys were written in.\n def hash : Int32\n def initialize(raw : Type)\n def inspect : String\n # The kind of value this is, in the word a refusal uses: `null`, `bool`,\n # `integer`, `float`, `string`, `array` or `object`.\n def kind : String\n def self.new(val : Int32) : Any\n def raw : Type\n # How many elements an array or an object holds. A scalar has no size.\n def size : Int32\n def size? : Int32 | ::Nil\n def to_ascii_json : String\n def to_json : String\n def to_pretty_json(indent : String = \" \") : String\n # A string as itself and null as nothing, as `YAML::Any#to_s` and the\n # other library answer them; a number, a boolean or a collection as its\n # JSON text. A string was its JSON text too, so `\"hello #{doc[\"name\"]}\"`\n # printed `hello \"Ada\"`, and null printed `null`.\n def to_s : String\nend\n\n# Writes a document one value at a time. `indent=` makes it pretty;\n# `ascii_only=` escapes every non-ASCII code point.\npub class Builder\n def array(& : (-> Nil)) : Nil\n def ascii_only : Bool\n def ascii_only=(value : Bool) : Bool\n def bool(val : Bool) : Nil\n # Whether no value has been written yet.\n def empty? : Bool\n def end_array : Nil\n def end_object : Nil\n def field(name : String, val : Any) : Nil\n def field(name : String, val : String) : Nil\n def field(name : String, val : Int32) : Nil\n def field(name : String, val : Int64) : Nil\n def field(name : String, val : Float64) : Nil\n def field(name : String, val : Bool) : Nil\n def field(name : String, val : Nil) : Nil\n # A key; the value that follows it is written by the next call. A key\n # whose text is one this object already holds is refused, naming both:\n # the reader refuses a duplicate key, and the builder wrote one - a key\n # given twice, or two Strings whose bytes are not UTF-8 and are both\n # written as U+FFFD (`{\"a\\xFF\" => 1, \"a\\xFE\" => 2}` was written\n # `{\"a\\uFFFD\":1,\"a\\uFFFD\":2}`, and `JSON.parse` refused it).\n def field(name : String) : Nil\n def field(name : String, & : (-> Nil)) : Nil\n def indent=(spaces : Int32) : Nil\n def indent=(str : String) : Nil\n def initialize\n def max_nesting : Int32\n def max_nesting=(value : Int32) : Int32\n def null : Nil\n def number(val : Int32) : Nil\n def number(val : Int64) : Nil\n def number(val : UInt8) : Nil\n def number(val : UInt64) : Nil\n def number(val : Float64) : Nil\n def object(& : (-> Nil)) : Nil\n # Text written as it is: the caller's own JSON.\n def raw(str : String) : Nil\n def start_array : Nil\n def start_object : Nil\n def string(val : String) : Nil\n # The document's text. A container still open or no value written at all\n # is not a document, and is refused.\n def to_s : String\nend\n\npub struct JSON\n # How `derive serializable` writes and reads one field, the other\n # library's `JSON::Field`:\n #\n # @[JSON::Field(key: \"userName\")]\n # getter user_name : String\n #\n # * `key:` the object key, where it is not the field's own name;\n # * `ignore: true` neither written nor read, `ignore_serialize: true` not\n # written, `ignore_deserialize: true` not read - a field that is not\n # read keeps its default, or is nil, and needs one or the other;\n # * `emit_null: false` a nil field left out of the object. A nil field is\n # written as `null` otherwise, where the other library leaves it out\n # unless asked;\n # * `converter:` a type whose `self.to_json(value, json : Builder)` writes\n # the field and `self.from_json(pull : PullParser)` reads it.\n #\n # An option it does not know, a key that is not a string, and two fields\n # written under one key are refused when the type is compiled.\n annotation Field\n end\n # Text written through a `Builder` the block is handed. `indent` is a\n # count of spaces or the string one level is indented by. A block that\n # writes no value, or leaves a container open, is refused.\n def self.build(indent : String | Int32 | Nil = nil, & : (Builder -> Nil)) : String\n # The document read into `type`: `Nil`, `Bool`, `Int32`, `Int64`, `UInt8`,\n # `UInt64`, `Float64`, `String`, `Any`, a type with `derive serializable`,\n # one of those or `nil`, or an `Array` or `Hash(String, V)` of those. An\n # integer outside the type is refused, as is anything after the root\n # value.\n def self.from_json(str : String, type : T.class) : T forall T\n def initialize\n # The document as an `Any`; panics with the line and column of the first\n # thing it refuses.\n def self.parse(input : String) : Any\n # The document as an `Any`, or `nil` when it is not one.\n def self.parse?(input : String) : Any | ::Nil\n def self.read_value(pull : PullParser, type : Nil.class) : Nil\n def self.read_value(pull : PullParser, type : Bool.class) : Bool\n def self.read_value(pull : PullParser, type : Int32.class) : Int32\n def self.read_value(pull : PullParser, type : Int64.class) : Int64\n def self.read_value(pull : PullParser, type : UInt8.class) : UInt8\n # An integer past Int64 reaches the reader as a float that still carries\n # its digits; those are read here, so the whole UInt64 range comes back.\n def self.read_value(pull : PullParser, type : UInt64.class) : UInt64\n def self.read_value(pull : PullParser, type : Float64.class) : Float64\n def self.read_value(pull : PullParser, type : String.class) : String\n def self.read_value(pull : PullParser, type : Any.class) : Any\n def self.read_value(pull : PullParser, type : Array(T).class) : Array(T) forall T\n def self.read_value(pull : PullParser, type : Hash(String, V).class) : Hash(String, V) forall V\n # A type that reads itself: the `initialize(pull)` a `derive\n # serializable` wrote. A type that admits nil reads `null` as the nil and\n # anything else as the other type (`x || raise`, as the derive asks it),\n # the way `write_or_null` writes it. That was `T.new(pull)` too, and\n # `Int32 | Nil` has no such `new`, so `JSON.from_json(\"5\", Int32?)` and\n # `Array(Int32?)` did not build.\n def self.read_value(pull : PullParser, type : T.class) : T forall T\n # Any value `write_value` knows: `nil`, a `Bool`, a prelude integer, a\n # `Float64`, a `String`, an `Any`, an `Array` or `Hash` of those, or a type\n # that implements `ToJSON`; each of them or `nil`.\n def self.to_json(obj : T) : String forall T\n def self.write_value(val : Nil, b : Builder) : Nil\n def self.write_value(val : Bool, b : Builder) : Nil\n def self.write_value(val : Int32, b : Builder) : Nil\n def self.write_value(val : Int64, b : Builder) : Nil\n def self.write_value(val : UInt8, b : Builder) : Nil\n def self.write_value(val : UInt64, b : Builder) : Nil\n def self.write_value(val : Float64, b : Builder) : Nil\n def self.write_value(val : String, b : Builder) : Nil\n def self.write_value(val : Any, b : Builder) : Nil\n def self.write_value(val : Array(T), b : Builder) : Nil forall T\n # A String key is written as it is, and two of them are never one text.\n def self.write_value(val : Hash(String, V), b : Builder) : Nil forall V\n # Any other key is written by its `to_s`, `nil` as `\"null\"`, the word a\n # JSON null is, so two keys can be one text: `{nil => 1, \"null\" => 2}`\n # was written `{\"null\":1,\"null\":2}`, which `JSON.parse` refuses\n # (\"duplicate key 'null' at line 1, column 11\"). The texts written are\n # kept, and a repeat is refused, naming both keys.\n def self.write_value(val : Hash(K, V), b : Builder) : Nil forall K, V\n # A `ToJSON` value writes itself. An enum member is written as the other\n # library writes one: its name underscored (`Color::DarkRed` is\n # `\"dark_red\"`), and a `@[Flags]` enum as the array of its members'\n # names; a value no member has is written as its number. Told apart here\n # and not by an overload restricted to `Enum`, which a program built\n # from this module's artifact read as a class and could not pass an enum\n # to.\n def self.write_value(val : T, b : Builder) : Nil forall T\nend\n\n# Reads a whole document into an `Any`. Like the lexer it records the first\n# failure instead of panicking; `JSON.parse` and `JSON.parse?` decide what to\n# do with it.\npub class Parser\n def error : String | ::Nil\n def initialize(input : String)\n def parse : Any\nend\n\n# Reads a document one event at a time: `kind` names what the reader is on,\n# the `read_x` methods take it and move on. The grammar is checked as it is\n# read, so a missing comma or colon is refused where it is, with a panic.\npub class PullParser\n enum Kind : Int32\n Null = 0\n Bool = 1\n Int = 2\n Float = 3\n String = 4\n BeginArray = 5\n EndArray = 6\n BeginObject = 7\n EndObject = 8\n EOF = 9\n # Returns `true` if this enum value equals `BeginArray`\n def begin_array? : ::Bool\n # Returns `true` if this enum value equals `BeginObject`\n def begin_object? : ::Bool\n # Returns `true` if this enum value equals `Bool`\n def bool? : ::Bool\n # Returns `true` if this enum value equals `EndArray`\n def end_array? : ::Bool\n # Returns `true` if this enum value equals `EndObject`\n def end_object? : ::Bool\n # Returns `true` if this enum value equals `EOF`\n def eof? : ::Bool\n # Returns `true` if this enum value equals `Float`\n def float? : ::Bool\n # Returns `true` if this enum value equals `Int`\n def int? : ::Bool\n # Returns `true` if this enum value equals `Null`\n def null? : ::Bool\n # Returns `true` if this enum value equals `String`\n def string? : ::Bool\n end\n def bool_value : Bool\n def column_number : Int32\n def float_value : Float64\n def initialize(input : String)\n def int_value : Int64\n def kind : Kind\n def line_number : Int32\n def max_nesting : Int32\n def max_nesting=(value : Int32) : Int32\n # Reads an object, yields once at the value of `key`, and skips the rest.\n def on_key(key : String, & : (-> Nil)) : Nil\n # The number the reader is on, as it was written.\n def raw_value : String\n # The value the reader is on, as an `Any`.\n def read_any : Any\n def read_array(& : (-> Nil)) : Nil\n def read_begin_array : Nil\n def read_begin_object : Nil\n def read_bool : Bool\n def read_end_array : Nil\n def read_end_object : Nil\n # A float, or an integer read as one.\n def read_float : Float64\n def read_int : Int64\n def read_next : Kind\n def read_null : Nil\n def read_null? : Bool\n # Yields each key of the object the reader is on, with the reader at its\n # value. A key named twice is refused, as `JSON.parse` refuses it.\n def read_object(& : (String -> Nil)) : Nil\n def read_object_key : String\n # The value the reader is on, written into `json` as it is read. A number\n # is written as its own text, the text it was read from: rebuilt from the\n # Int64 or Float64 it parsed to, `12345678901234567890` came back as\n # `1.2345678901234567e+19` and `1E+2` as `100.0`, and a UInt64 id passed\n # through here did not read back as itself.\n def read_raw(json : Builder) : Nil\n # The value the reader is on, as JSON text.\n def read_raw : String\n def read_string : String\n # Passes over the value the reader is on, whole.\n def skip : Nil\n def string_value : String\nend\n\n# A type that can write itself into a `Builder`. `JSON.to_json` accepts any\n# value whose type implements it, as a `derive serializable` type does.\npub trait ToJSON\n abstract def to_json(json : Builder) : Nil\nend\n\nimpl ToJSON for Any\n def to_json(json : Builder) : Nil\nend\n" + "sourceSha256": "3ee61ca665e8c34ebf067b55952d565a6aaabc6b0282daa11b7901532a319703", + "surface": "module std/json\n\n# `derive serializable`, in a struct or class whose fields are written with\n# their types: the type reads and writes itself as a JSON object, a key per\n# field, named as the field is.\n#\n# pub struct Coord\n# getter x : Float64\n# @[JSON::Field(key: \"label\")]\n# getter name : String\n# derive serializable\n# end\n#\n# Coord.from_json(%({\"x\": 1.5, \"label\": \"a\"})).x # => 1.5\n# coord.to_json # => {\"x\":1.5,\"label\":\"a\"}\n#\n# A field's value is read and written as `JSON.read_value` and\n# `JSON.write_value` read and write its type: the built-in values, an enum,\n# an `Array` or `Hash(String, V)` of them, an `Any`, another serializable\n# type, a union of those (`String | Int64`). A key the type has no field\n# for is passed over; a field with no key keeps its default when it is\n# written with one, as does a field with a default whose key holds `null`\n# where its type does not admit nil; a field with neither is refused by\n# name unless its type admits `nil`, which it then holds.\n# `@[JSON::Field(...)]` renames a field, leaves it out either way, leaves\n# a nil one out, or reads and writes it through a converter (see\n# `JSON::Field`). It is what the other library's `include\n# JSON::Serializable` writes, and the derive runs once, in the type's own\n# module (SPEC.md II.4), so a consumer calls the methods without the macro.\n#\n# Each field's options are read off the type when its methods are compiled,\n# in one `begin` so what a field's annotation says is known to every line\n# after it; and refused there, with the field named, when they do not make\n# sense.\npub macro serializable(declaration)\n\n# One JSON value of any kind, the result of `JSON.parse`. The `as_x` methods\n# panic when the value is of another kind; the `as_x?` ones answer `nil`.\npub struct Any\n alias Type = Nil | Bool | Int64 | Float64 | String | Array(Any) | Hash(String, Any)\n # Equal when the values are: an integer equals the float with the same\n # value, arrays element by element, objects key by key in any order.\n def ==(other : Any) : Bool\n def [](index : Int32) : Any\n def [](key : String) : Any\n def []?(index : Int32) : Any | ::Nil\n def []?(key : String) : Any | ::Nil\n def as_a : Array(Any)\n def as_a? : Array(Any) | ::Nil\n def as_bool : Bool\n def as_bool? : Bool | ::Nil\n # A float, or an integer read as one.\n def as_f : Float64\n def as_f? : Float64 | ::Nil\n def as_h : Hash(String, Any)\n def as_h? : Hash(String, Any) | ::Nil\n def as_i : Int32\n def as_i64 : Int64\n def as_i64? : Int64 | ::Nil\n def as_i? : Int32 | ::Nil\n def as_nil : Nil\n def as_s : String\n def as_s? : String | ::Nil\n def dig(key : String) : Any\n def dig(index : Int32) : Any\n def dig(k : String, *subkeys : String | Int32) : Any\n def dig(idx : Int32, *subkeys : String | Int32) : Any\n def dig?(key : String) : Any | ::Nil\n def dig?(index : Int32) : Any | ::Nil\n def dig?(k : String, *subkeys : String | Int32) : Any | ::Nil\n def dig?(idx : Int32, *subkeys : String | Int32) : Any | ::Nil\n protected def float_value? : Float64 | ::Nil\n # Consistent with `==`: a whole float hashes as the integer it equals, an\n # object's hash does not depend on the order its keys were written in.\n def hash : Int32\n def initialize(raw : Type)\n def inspect : String\n # The kind of value this is, in the word a refusal uses: `null`, `bool`,\n # `integer`, `float`, `string`, `array` or `object`.\n def kind : String\n def self.new(val : Int32) : Any\n def raw : Type\n # How many elements an array or an object holds. A scalar has no size.\n def size : Int32\n def size? : Int32 | ::Nil\n def to_ascii_json : String\n def to_json : String\n def to_pretty_json(indent : String = \" \") : String\n # A string as itself and null as nothing, as `YAML::Any#to_s` and the\n # other library answer them; a number, a boolean or a collection as its\n # JSON text. A string was its JSON text too, so `\"hello #{doc[\"name\"]}\"`\n # printed `hello \"Ada\"`, and null printed `null`.\n def to_s : String\nend\n\n# Writes a document one value at a time. `indent=` makes it pretty;\n# `ascii_only=` escapes every non-ASCII code point.\npub class Builder\n def array(& : (-> Nil)) : Nil\n def ascii_only : Bool\n def ascii_only=(value : Bool) : Bool\n def bool(val : Bool) : Nil\n # Whether no value has been written yet.\n def empty? : Bool\n def end_array : Nil\n def end_object : Nil\n def field(name : String, val : Any) : Nil\n def field(name : String, val : String) : Nil\n def field(name : String, val : Int32) : Nil\n def field(name : String, val : Int64) : Nil\n def field(name : String, val : Float64) : Nil\n def field(name : String, val : Bool) : Nil\n def field(name : String, val : Nil) : Nil\n # A key; the value that follows it is written by the next call. A key\n # whose text is one this object already holds is refused, naming both:\n # the reader refuses a duplicate key, and the builder wrote one - a key\n # given twice, or two Strings whose bytes are not UTF-8 and are both\n # written as U+FFFD (`{\"a\\xFF\" => 1, \"a\\xFE\" => 2}` was written\n # `{\"a\\uFFFD\":1,\"a\\uFFFD\":2}`, and `JSON.parse` refused it).\n def field(name : String) : Nil\n def field(name : String, & : (-> Nil)) : Nil\n def indent=(spaces : Int32) : Nil\n def indent=(str : String) : Nil\n def initialize\n def max_nesting : Int32\n def max_nesting=(value : Int32) : Int32\n def null : Nil\n def number(val : Int32) : Nil\n def number(val : Int64) : Nil\n def number(val : UInt8) : Nil\n def number(val : UInt64) : Nil\n def number(val : Float64) : Nil\n def object(& : (-> Nil)) : Nil\n # Text written as it is: the caller's own JSON.\n def raw(str : String) : Nil\n def start_array : Nil\n def start_object : Nil\n def string(val : String) : Nil\n # The document's text. A container still open or no value written at all\n # is not a document, and is refused.\n def to_s : String\nend\n\npub struct JSON\n # How `derive serializable` writes and reads one field, the other\n # library's `JSON::Field`:\n #\n # @[JSON::Field(key: \"userName\")]\n # getter user_name : String\n #\n # * `key:` the object key, where it is not the field's own name;\n # * `ignore: true` neither written nor read, `ignore_serialize: true` not\n # written, `ignore_deserialize: true` not read - a field that is not\n # read keeps its default, or is nil, and needs one or the other;\n # * `emit_null: false` a nil field left out of the object. A nil field is\n # written as `null` otherwise, where the other library leaves it out\n # unless asked;\n # * `converter:` a type whose `self.to_json(value, json : Builder)` writes\n # the field and `self.from_json(pull : PullParser)` reads it.\n #\n # An option it does not know, a key that is not a string, and two fields\n # written under one key are refused when the type is compiled.\n annotation Field\n end\n # Text written through a `Builder` the block is handed. `indent` is a\n # count of spaces or the string one level is indented by. A block that\n # writes no value, or leaves a container open, is refused.\n def self.build(indent : String | Int32 | Nil = nil, & : (Builder -> Nil)) : String\n # The document read into `type`: `Nil`, `Bool`, `Int32`, `Int64`, `UInt8`,\n # `UInt64`, `Float64`, `String`, `Any`, an enum, a type with `derive\n # serializable`, a union of them as `read_union` reads one, or an `Array`\n # or `Hash(String, V)` of those. An integer outside the type is refused,\n # as is anything after the root value.\n def self.from_json(str : String, type : T.class) : T forall T\n def initialize\n # The document as an `Any`; panics with the line and column of the first\n # thing it refuses.\n def self.parse(input : String) : Any\n # The document as an `Any`, or `nil` when it is not one.\n def self.parse?(input : String) : Any | ::Nil\n def self.read_value(pull : PullParser, type : Nil.class) : Nil\n def self.read_value(pull : PullParser, type : Bool.class) : Bool\n def self.read_value(pull : PullParser, type : Int32.class) : Int32\n def self.read_value(pull : PullParser, type : Int64.class) : Int64\n def self.read_value(pull : PullParser, type : UInt8.class) : UInt8\n # An integer past Int64 reaches the reader as a float that still carries\n # its digits; those are read here, so the whole UInt64 range comes back.\n def self.read_value(pull : PullParser, type : UInt64.class) : UInt64\n def self.read_value(pull : PullParser, type : Float64.class) : Float64\n def self.read_value(pull : PullParser, type : String.class) : String\n def self.read_value(pull : PullParser, type : Any.class) : Any\n def self.read_value(pull : PullParser, type : Array(T).class) : Array(T) forall T\n def self.read_value(pull : PullParser, type : Hash(String, V).class) : Hash(String, V) forall V\n # A type that reads itself: the `initialize(pull)` a `derive\n # serializable` wrote. A type that admits nil reads `null` as the nil and\n # anything else as the other type (`x || raise`, as the derive asks it),\n # the way `write_or_null` writes it. That was `T.new(pull)` too, and\n # `Int32 | Nil` has no such `new`, so `JSON.from_json(\"5\", Int32?)` and\n # `Array(Int32?)` did not build. Any other union is `read_union`'s.\n def self.read_value(pull : PullParser, type : T.class) : T forall T\n # Any value `write_value` knows: `nil`, a `Bool`, a prelude integer, a\n # `Float64`, a `String`, an `Any`, an enum, an `Array` or `Hash` of those,\n # or a type that implements `ToJSON`; a union of them, written as the\n # member it holds is.\n def self.to_json(obj : T) : String forall T\n def self.write_value(val : Nil, b : Builder) : Nil\n def self.write_value(val : Bool, b : Builder) : Nil\n def self.write_value(val : Int32, b : Builder) : Nil\n def self.write_value(val : Int64, b : Builder) : Nil\n def self.write_value(val : UInt8, b : Builder) : Nil\n def self.write_value(val : UInt64, b : Builder) : Nil\n def self.write_value(val : Float64, b : Builder) : Nil\n def self.write_value(val : String, b : Builder) : Nil\n def self.write_value(val : Any, b : Builder) : Nil\n def self.write_value(val : Array(T), b : Builder) : Nil forall T\n # A String key is written as it is, and two of them are never one text.\n def self.write_value(val : Hash(String, V), b : Builder) : Nil forall V\n # Any other key is written by its `to_s`, `nil` as `\"null\"`, the word a\n # JSON null is, so two keys can be one text: `{nil => 1, \"null\" => 2}`\n # was written `{\"null\":1,\"null\":2}`, which `JSON.parse` refuses\n # (\"duplicate key 'null' at line 1, column 11\"). The texts written are\n # kept, and a repeat is refused, naming both keys.\n def self.write_value(val : Hash(K, V), b : Builder) : Nil forall K, V\n # A `ToJSON` value writes itself. An enum member is written as the other\n # library writes one: its name underscored (`Color::DarkRed` is\n # `\"dark_red\"`), and a `@[Flags]` enum as the array of its members'\n # names; a value no member has is written as its number. Told apart here\n # and not by an overload restricted to `Enum`, which a program built\n # from this module's artifact read as a class and could not pass an enum\n # to.\n #\n # A union is matched here whole, `T` the union itself, so\n # `JSON.to_json(1.as(Int32 | String))` called `to_json` on an `Int32`\n # and did not build (issue #135). A member with an overload of its own,\n # an `Int32` or an `Array`, is sent there when the program runs, yet this\n # is still compiled for the whole union, and reached for the rest: an\n # enum, a `ToJSON` type. Each is written as it is alone, by\n # `Object#__json_write` below.\n def self.write_value(val : T, b : Builder) : Nil forall T\nend\n\n# Reads a whole document into an `Any`. Like the lexer it records the first\n# failure instead of panicking; `JSON.parse` and `JSON.parse?` decide what to\n# do with it.\npub class Parser\n def error : String | ::Nil\n def initialize(input : String)\n def parse : Any\nend\n\n# Reads a document one event at a time: `kind` names what the reader is on,\n# the `read_x` methods take it and move on. The grammar is checked as it is\n# read, so a missing comma or colon is refused where it is, with a panic.\npub class PullParser\n enum Kind : Int32\n Null = 0\n Bool = 1\n Int = 2\n Float = 3\n String = 4\n BeginArray = 5\n EndArray = 6\n BeginObject = 7\n EndObject = 8\n EOF = 9\n # Returns `true` if this enum value equals `BeginArray`\n def begin_array? : ::Bool\n # Returns `true` if this enum value equals `BeginObject`\n def begin_object? : ::Bool\n # Returns `true` if this enum value equals `Bool`\n def bool? : ::Bool\n # Returns `true` if this enum value equals `EndArray`\n def end_array? : ::Bool\n # Returns `true` if this enum value equals `EndObject`\n def end_object? : ::Bool\n # Returns `true` if this enum value equals `EOF`\n def eof? : ::Bool\n # Returns `true` if this enum value equals `Float`\n def float? : ::Bool\n # Returns `true` if this enum value equals `Int`\n def int? : ::Bool\n # Returns `true` if this enum value equals `Null`\n def null? : ::Bool\n # Returns `true` if this enum value equals `String`\n def string? : ::Bool\n end\n def bool_value : Bool\n def column_number : Int32\n def float_value : Float64\n def initialize(input : String)\n def int_value : Int64\n def kind : Kind\n def line_number : Int32\n def max_nesting : Int32\n def max_nesting=(value : Int32) : Int32\n # Reads an object, yields once at the value of `key`, and skips the rest.\n def on_key(key : String, & : (-> Nil)) : Nil\n # The number the reader is on, as it was written.\n def raw_value : String\n # The value the reader is on, as an `Any`.\n def read_any : Any\n def read_array(& : (-> Nil)) : Nil\n def read_begin_array : Nil\n def read_begin_object : Nil\n def read_bool : Bool\n def read_end_array : Nil\n def read_end_object : Nil\n # A float, or an integer read as one.\n def read_float : Float64\n def read_int : Int64\n def read_next : Kind\n def read_null : Nil\n def read_null? : Bool\n # Yields each key of the object the reader is on, with the reader at its\n # value. A key named twice is refused, as `JSON.parse` refuses it.\n def read_object(& : (String -> Nil)) : Nil\n def read_object_key : String\n # The value the reader is on, written into `json` as it is read. A number\n # is written as its own text, the text it was read from: rebuilt from the\n # Int64 or Float64 it parsed to, `12345678901234567890` came back as\n # `1.2345678901234567e+19` and `1E+2` as `100.0`, and a UInt64 id passed\n # through here did not read back as itself.\n def read_raw(json : Builder) : Nil\n # The value the reader is on, as JSON text.\n def read_raw : String\n def read_string : String\n # Passes over the value the reader is on, whole.\n def skip : Nil\n def string_value : String\nend\n\n# A type that can write itself into a `Builder`. `JSON.to_json` accepts any\n# value whose type implements it, as a `derive serializable` type does.\npub trait ToJSON\n abstract def to_json(json : Builder) : Nil\nend\n\nimpl ToJSON for Any\n def to_json(json : Builder) : Nil\nend\n\nclass ::Object\n def __json_write(json : ::Std::Json::Builder) : Nil\nend\n" }, { "name": "std/kernel", @@ -328,20 +346,20 @@ { "name": "std/log", "path": "src/std/log.iyi", - "sourceSha256": "8aabd06e381d1e9e121f042ff38fe26c6548d7a22d96b8f78612a52fd22e3c7f", - "surface": "module std/log\n\n# Entries written by a thread of their own, so a call that logs does not\n# wait for the write: the entry is formatted where it is logged and\n# queued, and a writer thread writes what has queued up since its last\n# write, in order, in one write, to *io*'s descriptor.\n#\n# AsyncBackend.open do |backend| # closed, and drained, at the end\n# Log.setup(Severity::Info, backend)\n# ...\n# end\n#\n# `close` waits for every queued entry to be written and the thread to\n# end; an entry written after it is refused. Entries queued when a program\n# ends without `close` are lost, which the block form rules out. The\n# backend is the thread that made it's, as every object not Share is.\n#\n# A thread needs the collector and a target with threads: under\n# `-Dgc_none` or `-Dgc_boehm`, or on another target, `new` refuses.\npub class AsyncBackend < Backend\n def close : Nil\n def formatter : Formatter\n def formatter=(value : Formatter) : Formatter\n def initialize(io : IO = STDOUT, formatter : Formatter = DefaultFormatter.new)\n # A backend for the block, closed and drained when the block ends.\n def self.open(io : IO = STDOUT, formatter : Formatter = DefaultFormatter.new, &block : (AsyncBackend -> R)) : R forall R\n def write(entry : Entry) : Nil\nend\n\npub abstract class Backend\n abstract def close : Nil\n abstract def write(entry : Entry) : Nil\nend\n\npub class DefaultFormatter < Formatter\n def format(entry : Entry) : String\nend\n\npub struct Entry\n # The task's context, the logger's bound data and the call's own, in\n # that order, a later key's value over an earlier's.\n def data : Hash(String, String)\n def initialize(source : String, severity : Severity, message : String, timestamp : Time = Time.utc, data : Hash(String, String) = {} of String => String)\n def message : String\n def severity : Severity\n def source : String\n def timestamp : Time\nend\n\npub abstract class Formatter\n def format(entry : Entry, io : IO) : Nil\n abstract def format(entry : Entry) : String\nend\n\npub class IOBackend < Backend\n def close : Nil\n def formatter : Formatter\n def formatter=(value : Formatter) : Formatter\n def initialize(io : IO, formatter : Formatter = DefaultFormatter.new)\n def io : IO\n def write(entry : Entry) : Nil\nend\n\n# The root logger and the calls that go straight to it.\npub class Log\n def self.backend : Backend | ::Nil\n def self.backend=(backend : Backend | ::Nil) : Nil\n # The data this task's open contexts give an entry, the outermost first.\n def self.context : Hash(String, String)\n def self.debug(msg : String, **data) : Nil\n def self.debug(**data, &b : (-> String)) : Nil\n def self.error(msg : String, **data) : Nil\n def self.error(**data, &b : (-> String)) : Nil\n def self.fatal(msg : String, **data) : Nil\n def self.fatal(**data, &b : (-> String)) : Nil\n def self.for(source : String) : Logger\n def self.info(msg : String, **data) : Nil\n def self.info(**data, &b : (-> String)) : Nil\n def self.level : Severity\n def self.level=(level : Severity) : Nil\n def self.notice(msg : String, **data) : Nil\n def self.notice(**data, &b : (-> String)) : Nil\n def self.root : Logger\n # Reconfigures the root in place, so loggers obtained earlier follow.\n def self.setup(level : Severity = Severity::Info, backend : Backend = IOBackend.new(STDOUT)) : Logger\n # `setup`, the level read from *variable* - a severity's name, any case\n # - or *default_level* when it is unset or empty. A name that is no\n # severity is refused, the severities named.\n def self.setup_from_env(default_level : Severity = Severity::Info, backend : Backend = IOBackend.new(STDOUT), variable : String = \"LOG_LEVEL\") : Logger\n def self.trace(msg : String, **data) : Nil\n def self.trace(**data, &b : (-> String)) : Nil\n def self.warn(msg : String, **data) : Nil\n def self.warn(**data, &b : (-> String)) : Nil\n # Runs the block with *data* on every entry logged in this task and in\n # the tasks it starts, over the context already open, and answers the\n # block's answer. The context before it is back when the block ends,\n # panic or not.\n def self.with_context(**data, &block : (-> R)) : R forall R\nend\n\npub class Logger\n # This logger's own backend, or the nearest ancestor's; nil silences.\n def backend : Backend | ::Nil\n def backend=(b : Backend | ::Nil) : Nil\n # A logger for the same source, its level and backend this one's, whose\n # entries all carry *data*: a request's id, a connection's peer.\n def bind(**data) : Logger\n # The data `bind` gave this logger and its parents, the root's first.\n protected def bound_into(found : Hash(String, String)) : Nil\n def debug(message : String, **data) : Nil\n def debug(**data, &b : (-> String)) : Nil\n def debug? : Bool\n def error(message : String, **data) : Nil\n def error(**data, &b : (-> String)) : Nil\n def error? : Bool\n def fatal(message : String, **data) : Nil\n def fatal(**data, &b : (-> String)) : Nil\n def fatal? : Bool\n # The logger for *child_name* under this one, created on first ask;\n # `\"a.b\"` is the child `b` of the child `a`.\n def for(child_name : String) : Logger\n protected def get_or_create_child(name : String) : Logger\n def info(message : String, **data) : Nil\n def info(**data, &b : (-> String)) : Nil\n def info? : Bool\n def initialize(source : String, level : Severity | ::Nil = nil, backend : Backend | ::Nil = nil, parent : Logger | ::Nil = nil, bound : Metadata | ::Nil = nil)\n # This logger's own level, or the nearest ancestor's; Info at a root\n # never given one.\n def level : Severity\n # nil hands the decision back to the parent.\n def level=(lvl : Severity | ::Nil) : Nil\n # None is a level and not a severity: an entry logged at None was\n # written by a logger set to None, the one level meant to write nothing.\n def log(severity : Severity, message : String, **data) : Nil\n def log(severity : Severity, **data, &block : (-> String)) : Nil\n def notice(message : String, **data) : Nil\n def notice(**data, &b : (-> String)) : Nil\n def notice? : Bool\n def own_backend : Backend | ::Nil\n def own_level : Severity | ::Nil\n def source : String\n def trace(message : String, **data) : Nil\n def trace(**data, &b : (-> String)) : Nil\n def trace? : Bool\n def warn(message : String, **data) : Nil\n def warn(**data, &b : (-> String)) : Nil\n def warn? : Bool\nend\n\npub class MemoryBackend < Backend\n def clear : Nil\n def close : Nil\n def entries : Array(Entry)\n def formatter : Formatter\n def formatter=(value : Formatter) : Formatter\n def initialize(formatter : Formatter = DefaultFormatter.new)\n # The entries as the formatter would have written them.\n def output : Array(String)\n def write(entry : Entry) : Nil\nend\n\n# Keys and values, the newest first: immutable, so a task's context can sit\n# in the table every thread reads.\npub class Metadata\n def initialize(key : String, value : String, rest : Metadata | ::Nil)\n def key : String\n # Into *into*, the oldest first, so a later key's value replaces an\n # earlier one's.\n def merge_into(into : Hash(String, String)) : Nil\n def rest : Metadata | ::Nil\n def to_h : Hash(String, String)\n def value : String\nend\n\npub enum Severity : Int32\n Trace = 0\n Debug = 1\n Info = 2\n Notice = 3\n Warn = 4\n Error = 5\n Fatal = 6\n None = 7\n def <(other : Severity) : Bool\n def <=(other : Severity) : Bool\n def >(other : Severity) : Bool\n def >=(other : Severity) : Bool\n def label : String\n def self.parse(name : String) : Severity\n # The severity named by *name*, case-insensitively, or nil: what a\n # `LOG_LEVEL` variable holds.\n def self.parse?(name : String) : Severity | ::Nil\n def to_s : String\nend\n" + "sourceSha256": "8c07afe8a92a47cd266230ef3c62fe4613c17f7870946f3526abdfc2a9389af7", + "surface": "module std/log\n\n# Entries written by a thread of their own, so a call that logs does not\n# wait for the write: the entry is formatted where it is logged and\n# queued, and a writer thread writes what has queued up since its last\n# write, in order, in one write, to *io*'s descriptor.\n#\n# AsyncBackend.open do |backend| # closed, and drained, at the end\n# Log.setup(Severity::Info, backend)\n# ...\n# end\n#\n# `close` waits for every queued entry to be written and the thread to\n# end; an entry written after it is refused. Entries queued when a program\n# ends without `close` are lost, which the block form rules out. Any\n# thread may write to the backend, and close it: it is Share, as every\n# backend is.\n#\n# A thread needs the collector and a target with threads: under\n# `-Dgc_none` or `-Dgc_boehm`, or on another target, `new` refuses.\npub class AsyncBackend < Backend\n def close : Nil\n def formatter : Formatter\n def initialize(io : IO = STDOUT, formatter : Formatter = DefaultFormatter.new)\n # A backend for the block, closed and drained when the block ends.\n def self.open(io : IO = STDOUT, formatter : Formatter = DefaultFormatter.new, &block : (AsyncBackend -> R)) : R forall R\n def write(entry : Entry) : Nil\n # The thread writing what *queue* holds to *handle* until the queue is\n # closed and drained; marking the queue finished is the last it does\n # under the lock.\n protected def self.writer(queue : Mutex(AsyncQueue), handle : Int64) : IyiThread\nend\n\npub abstract class Backend\n abstract def close : Nil\n abstract def write(entry : Entry) : Nil\nend\n\npub class DefaultFormatter < Formatter\n def format(entry : Entry) : String\nend\n\npub struct Entry\n # The data, as a hash of the caller's own.\n def data : Hash(String, String)\n def initialize(source : String, severity : Severity, message : String, timestamp : Time = Time.utc, data : Hash(String, String) = {} of String => String)\n def message : String\n # The task's context, the logger's bound data and the call's own, in\n # that order, a later key's value over an earlier's in the earlier's\n # place, as a `Hash` keeps them. Kept as pairs, which nothing writes once\n # the entry is made, so an entry is `Share` and goes into a\n # `MemoryBackend`'s lock from any thread; `data` is a hash of them.\n def pairs : List(::Tuple(String, String))\n protected def self.pairs_of(data : Hash(String, String)) : List(::Tuple(String, String))\n def severity : Severity\n def source : String\n def timestamp : Time\nend\n\npub abstract class Formatter\n abstract def format(entry : Entry) : String\nend\n\n# Each entry as one line to an IO: formatted in the calling thread, then\n# written with its newline holding the backend's lock, so the lines of\n# workers logging at once come out whole, never one inside another.\n# Twelve workers writing 100,000 lines each to one file through it as it\n# was, writing to the IO itself with no lock, left 2,563 to 4,378 of the\n# 1.2 million torn or lost in five runs, at 1,008 ns a line between them;\n# through it locked none, at 864 (--release, x86_64 Linux, 12 cores).\n#\n# The `IO` handed to `new` is not Share - its buffer is written in place,\n# and two threads writing one tear what they write - so the backend keeps\n# a handle of its own on the IO's descriptor behind its `Mutex`, as\n# `AsyncBackend`'s thread does, and flushes it after every line. What the\n# program writes to that IO itself goes out when the IO flushes, which\n# STDOUT and STDERR do at every write.\npub class IOBackend < Backend\n # Nothing is held back: each line was written as it came.\n def close : Nil\n def formatter : Formatter\n def initialize(io : IO, formatter : Formatter = DefaultFormatter.new)\n # The line and its end into the buffer, then out in one write.\n protected def self.put(io : IyiIO, line : String) : Nil\n def write(entry : Entry) : Nil\nend\n\n# The root logger and the calls that go straight to it.\npub class Log\n def self.backend : Backend | ::Nil\n def self.backend=(backend : Backend | ::Nil) : Nil\n # The data this task's open contexts give an entry, the outermost first.\n def self.context : Hash(String, String)\n def self.debug(msg : String, **data) : Nil\n def self.debug(**data, &b : (-> String)) : Nil\n def self.error(msg : String, **data) : Nil\n def self.error(**data, &b : (-> String)) : Nil\n def self.fatal(msg : String, **data) : Nil\n def self.fatal(**data, &b : (-> String)) : Nil\n def self.for(source : String) : Logger\n def self.info(msg : String, **data) : Nil\n def self.info(**data, &b : (-> String)) : Nil\n def self.level : Severity\n def self.level=(level : Severity) : Nil\n def self.notice(msg : String, **data) : Nil\n def self.notice(**data, &b : (-> String)) : Nil\n def self.root : Logger\n # Reconfigures the root in place, so loggers obtained earlier follow.\n def self.setup(level : Severity = Severity::Info, backend : Backend = IOBackend.new(STDOUT)) : Logger\n # `setup`, the level read from *variable* - a severity's name, any case\n # - or *default_level* when it is unset or empty. A name that is no\n # severity is refused, the severities named.\n def self.setup_from_env(default_level : Severity = Severity::Info, backend : Backend = IOBackend.new(STDOUT), variable : String = \"LOG_LEVEL\") : Logger\n def self.trace(msg : String, **data) : Nil\n def self.trace(**data, &b : (-> String)) : Nil\n def self.warn(msg : String, **data) : Nil\n def self.warn(**data, &b : (-> String)) : Nil\n # Runs the block with *data* on every entry logged in this task and in\n # the tasks it starts, over the context already open, and answers the\n # block's answer. The context before it is back when the block ends,\n # panic or not.\n def self.with_context(**data, &block : (-> R)) : R forall R\nend\n\npub class Logger\n # This logger's own backend, or the nearest ancestor's; nil silences.\n def backend : Backend | ::Nil\n def backend=(b : Backend | ::Nil) : Nil\n # A logger for the same source, its level and backend this one's, whose\n # entries all carry *data*: a request's id, a connection's peer.\n def bind(**data) : Logger\n # The data `bind` gave this logger and its parents, the root's first.\n protected def bound_into(found : Hash(String, String)) : Nil\n def debug(message : String, **data) : Nil\n def debug(**data, &b : (-> String)) : Nil\n def debug? : Bool\n def error(message : String, **data) : Nil\n def error(**data, &b : (-> String)) : Nil\n def error? : Bool\n def fatal(message : String, **data) : Nil\n def fatal(**data, &b : (-> String)) : Nil\n def fatal? : Bool\n # The logger for *child_name* under this one, created on first ask;\n # `\"a.b\"` is the child `b` of the child `a`.\n def for(child_name : String) : Logger\n protected def get_or_create_child(name : String) : Logger\n def info(message : String, **data) : Nil\n def info(**data, &b : (-> String)) : Nil\n def info? : Bool\n def initialize(source : String, level : Severity | ::Nil = nil, backend : Backend | ::Nil = nil, parent : Logger | ::Nil = nil, bound : Metadata | ::Nil = nil)\n # This logger's own level, or the nearest ancestor's; Info at a root\n # never given one.\n def level : Severity\n # nil hands the decision back to the parent.\n def level=(lvl : Severity | ::Nil) : Nil\n protected def level_value : Int32\n # None is a level and not a severity: an entry logged at None was\n # written by a logger set to None, the one level meant to write nothing.\n def log(severity : Severity, message : String, **data) : Nil\n def log(severity : Severity, **data, &block : (-> String)) : Nil\n def notice(message : String, **data) : Nil\n def notice(**data, &b : (-> String)) : Nil\n def notice? : Bool\n def own_backend : Backend | ::Nil\n def own_level : Severity | ::Nil\n protected def own_level_value : Int32\n protected def parent : Logger | ::Nil\n def source : String\n def trace(message : String, **data) : Nil\n def trace(**data, &b : (-> String)) : Nil\n def trace? : Bool\n def warn(message : String, **data) : Nil\n def warn(**data, &b : (-> String)) : Nil\n def warn? : Bool\nend\n\n# The entries, kept for a test to read back, behind a lock: the workers of\n# a parallel test may all log to one.\npub class MemoryBackend < Backend\n def clear : Nil\n def close : Nil\n # The entries written so far, oldest first: a copy, since the backend's\n # own are behind its lock, where another thread may be adding one.\n def entries : Array(Entry)\n def formatter : Formatter\n def initialize(formatter : Formatter = DefaultFormatter.new)\n # The entries as the formatter would have written them.\n def output : Array(String)\n def write(entry : Entry) : Nil\nend\n\n# Keys and values, the newest first: immutable, so a task's context can sit\n# in the table every thread reads.\npub class Metadata\n def initialize(key : String, value : String, rest : Metadata | ::Nil)\n def key : String\n # Into *into*, the oldest first, so a later key's value replaces an\n # earlier one's.\n def merge_into(into : Hash(String, String)) : Nil\n def rest : Metadata | ::Nil\n def to_h : Hash(String, String)\n def value : String\nend\n\npub enum Severity : Int32\n Trace = 0\n Debug = 1\n Info = 2\n Notice = 3\n Warn = 4\n Error = 5\n Fatal = 6\n None = 7\n def <(other : Severity) : Bool\n def <=(other : Severity) : Bool\n def >(other : Severity) : Bool\n def >=(other : Severity) : Bool\n def label : String\n def self.parse(name : String) : Severity\n # The severity named by *name*, case-insensitively, or nil: what a\n # `LOG_LEVEL` variable holds.\n def self.parse?(name : String) : Severity | ::Nil\n def to_s : String\nend\n" }, { "name": "std/mail", "path": "src/std/mail.iyi", - "sourceSha256": "ed9455aa36ceb50d7b93788cf2a0110bc59c2c9bad38b8fe26bab97a497d0fb5", - "surface": "module std/mail\n\npub struct Mail\n # A mailbox: an address and the name shown with it.\n class Address\n def ==(other : Address) : Bool\n # The addr-spec: the local part quoted where it is not a dot-atom.\n def address : String\n def domain : String\n # What `parse` makes, already read.\n def initialize(local : String, domain : String, name : String, read : Bool)\n # *address* is an addr-spec: `user@example.com`, or\n # `\"john doe\"@example.com` with its local part quoted. Anything else\n # is a panic, as is a name with a line break in it.\n def initialize(address : String, name : String = \"\")\n # The local part, unquoted, and the domain as written.\n def local : String\n # The display name, decoded; \"\" when there is none.\n def name : String\n # The one mailbox *text* holds.\n def self.parse(text : String) : Address | MailError\n # The mailboxes of an address list, a group's members in its place.\n def self.parse_list(text : String) : Array(Address) | MailError\n # As a person reads it: `Name `, the name quoted\n # when it is not atoms, nothing encoded.\n def to_s : String\n # Whether the address is more than ASCII (RFC 6532), which only a\n # server that offers SMTPUTF8 takes.\n def utf8? : Bool\n end\n # A message to be written: its addresses, subject, date and identifier,\n # its text and HTML, and its attachments.\n class Message\n protected def self.addresses(name : String, list : Array(Address)) : String\n # A file sent with the message, under *filename*, as *content_type*:\n # the type its extension names (std/mime) when nil.\n def attach(filename : String, data : String, content_type : String | ::Nil = nil) : self\n protected def self.attachment(filename : String, kind : String, data : String) : MailEntity\n def bcc : Array(Address)\n def cc : Array(Address)\n def date : String | ::Nil\n # An RFC 5322 date-time - `Mail.date` writes one - refused when it is\n # not one.\n def date=(value : String) : String\n # `filename=\"...\"` for a short name of printable ASCII; RFC 2231's\n # `filename*=utf-8''...` for any other, in continuations of whole\n # characters when it is longer - 50 encoded bytes in the first, after\n # its charset, and 60 in the rest, so each fits a line. All but the\n # last end in `;`.\n protected def self.filename_params(filename : String) : Array(String)\n def from : Address | ::Nil\n def from=(value : Address | ::Nil) : Address | ::Nil\n # A header of the caller's own, written as unstructured text. The\n # headers the message writes itself are refused here.\n def header(name : String, value : String) : self\n def html : String | ::Nil\n def html=(value : String) : String\n def initialize\n def message_id : String | ::Nil\n # ``, the brackets added when they are not there.\n def message_id=(value : String) : String\n # The parts under one boundary, made from their own hash.\n protected def self.multipart(subtype : String, children : Array(MailEntity)) : MailEntity\n # Every address the message goes to - To, Cc and Bcc - once each.\n def recipients : Array(String)\n def reply_to : Array(Address)\n # ASCII without NUL, in lines of 78 or fewer.\n protected def self.seven_bit?(text : String) : Bool\n def subject : String | ::Nil\n def subject=(value : String) : String\n def text : String | ::Nil\n def text=(value : String) : String\n protected def self.text_part(subtype : String, text : String) : MailEntity\n def to : Array(Address)\n # The message, CRLF line breaks and all.\n def to_s : String\n # Whether an address in the message is RFC 6532's UTF-8.\n def utf8? : Bool\n end\n # A message or one of its parts, as read: its header fields unfolded and\n # in order, and its body - a multipart's parts, a `message/rfc822`'s\n # message, or bytes in a transfer encoding.\n class Part\n # The mailboxes of every field named *name* - `From`, `To`, `Cc` -\n # none when there is no such field.\n def addresses(name : String) : Array(Address) | MailError\n def attachment? : Bool\n # The parts whose disposition is `attachment`, in order.\n def attachments : Array(Part)\n # The bytes the body stands for, its transfer encoding undone.\n def body : String | MailError\n # The charset text is in: `us-ascii` when none is named (RFC 2045\n # section 5.2), in lower case.\n def charset : String\n # The disposition in lower case - `attachment`, `inline` - or nil.\n def disposition : String | ::Nil\n # The file name of Content-Disposition, or else Content-Type's `name`.\n def filename : String | ::Nil\n # The first part of *media_type* that is not an attachment, depth\n # first: `find(\"text/plain\")` is the text a reader shows.\n def find(media_type : String) : Part | ::Nil\n protected def self.first(headers : Array(::Tuple(String, String)), lower : String) : String | ::Nil\n # The first field named *name*, any case, its encoded-words decoded.\n def header(name : String) : String | ::Nil\n # Every field named *name*, in order, decoded.\n def header_values(name : String) : Array(String)\n # Each field's name as written and its value unfolded, whitespace at\n # either end dropped, nothing decoded.\n def headers : Array(::Tuple(String, String))\n def initialize(source : String, headers : Array(::Tuple(String, String)), media_type : String, params : Hash(String, String), body_at : Int32, body_end : Int32, parts : Array(Part))\n # `type/subtype` in lower case: `text/plain` when the part names none,\n # or names one that cannot be read (RFC 2045 section 5.2).\n def media_type : String\n def multipart? : Bool\n # A Content-Type parameter, RFC 2231's decoded.\n def param(name : String) : String | ::Nil\n def self.parse(text : String) : Part | MailError\n # The parts of a multipart, or the message a `message/rfc822` holds.\n def parts : Array(Part)\n protected def self.prefix?(a : Pointer(UInt8), b : Pointer(UInt8), size : Int32) : Bool\n # The first field named *name*, as written.\n def raw_header(name : String) : String | ::Nil\n protected def self.read(source : String, start : Int32, stop : Int32, depth : Int32, default_type : String) : Part | MailError\n # The parts of a multipart body: between `--boundary` lines, the line\n # break before each line its own; to the `--boundary--` line. The\n # preamble and the epilogue are passed over.\n protected def self.split(source : String, start : Int32, stop : Int32, boundary : String, media : String) : Array(::Tuple(Int32, Int32)) | MailError\n def subject : String | ::Nil\n # The body as text in UTF-8, from the part's charset, each CRLF an LF.\n def text : String | MailError\n # The transfer encoding in lower case: `7bit` when none is named.\n def transfer_encoding : String\n protected def self.trim(value : String) : String\n # This part, then each under it, depth first.\n def walk(&block : (Part -> Nil)) : Nil\n end\n # RFC 5322's date-time for *unix* seconds, at *offset* minutes east of\n # UTC: `Sat, 17 Oct 2026 14:00:00 +0200`, as `email.utils.format_datetime`\n # writes it.\n def self.date(unix : Int64, offset : Int32 = 0) : String\n # What base64 *text* stands for, characters outside the alphabet passed\n # over.\n def self.decode_base64(text : String) : String\n # *text* from *charset* in UTF-8.\n def self.decode_charset(text : String, charset : String) : String | MailError\n # What quoted-printable *text* stands for, hard breaks as CRLF.\n def self.decode_quoted_printable(text : String) : String\n # *text* with its RFC 2047 encoded-words decoded.\n def self.decode_words(text : String) : String\n # *data* in base64, lines of 76 and a CRLF after each.\n def self.encode_base64(data : String) : String\n # *data* in quoted-printable, lines of 76 or fewer; its line breaks\n # hard ones written as CRLF, or with *binary* escaped like any byte.\n def self.encode_quoted_printable(data : String, binary : Bool = false) : String\n # An unstructured header line, `name: value` folded and encoded as the\n # builder writes it, CRLF and all.\n def self.fold(name : String, value : String) : String\n def initialize\n # A message read from *text*: its header section, then its body.\n def self.parse(text : String) : Part | MailError\n # A date-time (RFC 5322 section 3.3, with section 4.3's obsolete years\n # and zones) as Unix seconds and the offset it was written at, in\n # minutes. The day of the week is not held to the date, as readers do\n # not hold it. A military zone is -0000, as section 4.3 says.\n def self.parse_date(text : String) : ::Tuple(Int64, Int32) | MailError\nend\n\n# What a message, a header or an address is that it should not be, as a\n# value: `reason` says what; `message` says it is mail's.\npub struct MailError\n def initialize(reason : String)\n def reason : String\n def to_s : String\nend\n\nimpl Error for MailError\n def message : String\nend\n" + "sourceSha256": "205af4ec59cbf503bcb8e22a51fdcaa90bdc89d86e281a67ee6b170fdbdc5d85", + "surface": "module std/mail\n\npub struct Mail\n # A mailbox: an address and the name shown with it.\n class Address\n def ==(other : Address) : Bool\n # The addr-spec: the local part quoted where it is not a dot-atom.\n def address : String\n def domain : String\n # What `parse` makes, already read.\n def initialize(local : String, domain : String, name : String, read : Bool)\n # *address* is an addr-spec: `user@example.com`, or\n # `\"john doe\"@example.com` with its local part quoted. Anything else\n # is a panic, as is a name with a line break in it.\n def initialize(address : String, name : String = \"\")\n # The local part, unquoted, and the domain as written.\n def local : String\n # The display name, decoded; \"\" when there is none.\n def name : String\n # The one mailbox *text* holds.\n def self.parse(text : String) : Address | MailError\n # The mailboxes of an address list, a group's members in its place.\n def self.parse_list(text : String) : Array(Address) | MailError\n # As a person reads it: `Name `, the name quoted\n # when it is not atoms, nothing encoded.\n def to_s : String\n # Whether the address is more than ASCII (RFC 6532), which only a\n # server that offers SMTPUTF8 takes.\n def utf8? : Bool\n end\n # A message to be written: its addresses, subject, date and identifier,\n # its text and HTML, and its attachments.\n class Message\n protected def self.addresses(name : String, list : Array(Address)) : String\n # A file sent with the message, under *filename*, as *content_type*:\n # the type its extension names (std/mime) when nil.\n def attach(filename : String, data : String, content_type : String | ::Nil = nil) : self\n protected def self.attachment(filename : String, kind : String, data : String) : MailEntity\n def bcc : Array(Address)\n def cc : Array(Address)\n def date : String | ::Nil\n # An RFC 5322 date-time - `Mail.date` writes one - refused when it is\n # not one.\n def date=(value : String) : String\n # `filename=\"...\"` for a short name of printable ASCII; RFC 2231's\n # `filename*=utf-8''...` for any other, in continuations of whole\n # characters when it is longer - 50 encoded bytes in the first, after\n # its charset, and 60 in the rest, so each fits a line. All but the\n # last end in `;`.\n protected def self.filename_params(filename : String) : Array(String)\n def from : Address | ::Nil\n def from=(value : Address | ::Nil) : Address | ::Nil\n # A header of the caller's own, written as unstructured text. The\n # headers the message writes itself are refused here.\n def header(name : String, value : String) : self\n def html : String | ::Nil\n def html=(value : String) : String\n def initialize\n def message_id : String | ::Nil\n # ``, the brackets added when they are not there.\n def message_id=(value : String) : String\n # The parts under one boundary, made from their own hash.\n protected def self.multipart(subtype : String, children : Array(MailEntity)) : MailEntity\n # Every address the message goes to - To, Cc and Bcc - once each.\n def recipients : Array(String)\n def reply_to : Array(Address)\n # ASCII without NUL, in lines of 78 or fewer.\n protected def self.seven_bit?(text : String) : Bool\n def subject : String | ::Nil\n def subject=(value : String) : String\n def text : String | ::Nil\n def text=(value : String) : String\n protected def self.text_part(subtype : String, text : String) : MailEntity\n def to : Array(Address)\n # The message, CRLF line breaks and all. A From and a Date are\n # required - set the Date with `msg.date = Mail.date(...)` - and the\n # Message-ID is optional. Writing a message the caller left incomplete\n # is a mistake, so it panics, with one of:\n #\n # - `mail: a message has no From` when no From was set;\n # - `mail: a message has no Date` when no Date was set.\n #\n # Those are the only panics here: every other value - a header, an\n # address, a Date, a Message-ID, a body, an attachment - is checked,\n # and refused with a panic, by the setter or method that takes it.\n def to_s : String\n # Whether an address in the message is RFC 6532's UTF-8.\n def utf8? : Bool\n end\n # A message or one of its parts, as read: its header fields unfolded and\n # in order, and its body - a multipart's parts, a `message/rfc822`'s\n # message, or bytes in a transfer encoding.\n class Part\n # The mailboxes of every field named *name* - `From`, `To`, `Cc` -\n # none when there is no such field.\n def addresses(name : String) : Array(Address) | MailError\n def attachment? : Bool\n # The parts whose disposition is `attachment`, in order.\n def attachments : Array(Part)\n # The bytes the body stands for, its transfer encoding undone.\n def body : String | MailError\n # The charset text is in: `us-ascii` when none is named (RFC 2045\n # section 5.2), in lower case.\n def charset : String\n # The disposition in lower case - `attachment`, `inline` - or nil.\n def disposition : String | ::Nil\n # The file name of Content-Disposition, or else Content-Type's `name`.\n def filename : String | ::Nil\n # The first part of *media_type* that is not an attachment, depth\n # first: `find(\"text/plain\")` is the text a reader shows.\n def find(media_type : String) : Part | ::Nil\n protected def self.first(headers : Array(::Tuple(String, String)), lower : String) : String | ::Nil\n # The first field named *name*, any case, its encoded-words decoded.\n def header(name : String) : String | ::Nil\n # Every field named *name*, in order, decoded.\n def header_values(name : String) : Array(String)\n # Each field's name as written and its value unfolded, whitespace at\n # either end dropped, nothing decoded.\n def headers : Array(::Tuple(String, String))\n def initialize(source : String, headers : Array(::Tuple(String, String)), media_type : String, params : Hash(String, String), body_at : Int32, body_end : Int32, parts : Array(Part))\n # `type/subtype` in lower case: `text/plain` when the part names none,\n # or names one that cannot be read (RFC 2045 section 5.2).\n def media_type : String\n def multipart? : Bool\n # A Content-Type parameter, RFC 2231's decoded.\n def param(name : String) : String | ::Nil\n def self.parse(text : String) : Part | MailError\n # The parts of a multipart, or the message a `message/rfc822` holds.\n def parts : Array(Part)\n protected def self.prefix?(a : Pointer(UInt8), b : Pointer(UInt8), size : Int32) : Bool\n # The first field named *name*, as written.\n def raw_header(name : String) : String | ::Nil\n protected def self.read(source : String, start : Int32, stop : Int32, depth : Int32, default_type : String) : Part | MailError\n # The parts of a multipart body: between `--boundary` lines, the line\n # break before each line its own; to the `--boundary--` line. The\n # preamble and the epilogue are passed over.\n protected def self.split(source : String, start : Int32, stop : Int32, boundary : String, media : String) : Array(::Tuple(Int32, Int32)) | MailError\n def subject : String | ::Nil\n # The body as text in UTF-8, from the part's charset, each CRLF an LF.\n def text : String | MailError\n # The transfer encoding in lower case: `7bit` when none is named.\n def transfer_encoding : String\n protected def self.trim(value : String) : String\n # This part, then each under it, depth first.\n def walk(&block : (Part -> Nil)) : Nil\n end\n # RFC 5322's date-time for *unix* seconds, at *offset* minutes east of\n # UTC: `Sat, 17 Oct 2026 14:00:00 +0200`, as `email.utils.format_datetime`\n # writes it.\n def self.date(unix : Int64, offset : Int32 = 0) : String\n # What base64 *text* stands for, characters outside the alphabet passed\n # over.\n def self.decode_base64(text : String) : String\n # *text* from *charset* in UTF-8.\n def self.decode_charset(text : String, charset : String) : String | MailError\n # What quoted-printable *text* stands for, hard breaks as CRLF.\n def self.decode_quoted_printable(text : String) : String\n # *text* with its RFC 2047 encoded-words decoded.\n def self.decode_words(text : String) : String\n # *data* in base64, lines of 76 and a CRLF after each.\n def self.encode_base64(data : String) : String\n # *data* in quoted-printable, lines of 76 or fewer; its line breaks\n # hard ones written as CRLF, or with *binary* escaped like any byte.\n def self.encode_quoted_printable(data : String, binary : Bool = false) : String\n # An unstructured header line, `name: value` folded and encoded as the\n # builder writes it, CRLF and all.\n def self.fold(name : String, value : String) : String\n def initialize\n # A message read from *text*: its header section, then its body.\n def self.parse(text : String) : Part | MailError\n # A date-time (RFC 5322 section 3.3, with section 4.3's obsolete years\n # and zones) as Unix seconds and the offset it was written at, in\n # minutes. The day of the week is not held to the date, as readers do\n # not hold it. A military zone is -0000, as section 4.3 says.\n def self.parse_date(text : String) : ::Tuple(Int64, Int32) | MailError\nend\n\n# What a message, a header or an address is that it should not be, as a\n# value: `reason` says what; `message` says it is mail's.\npub struct MailError\n def initialize(reason : String)\n def reason : String\n def to_s : String\nend\n\nimpl Error for MailError\n def message : String\nend\n" }, { "name": "std/math", "path": "src/std/math.iyi", - "sourceSha256": "0e281b320dc9539d1f15984621a425d3ff60da20085b11d4ad811a795b9f74cb", - "surface": "module std/math\n\npub struct Math\n def self.acos(value : Float64) : Float64\n def self.acos(value : Float32) : Float32\n def self.acos(value : T) : Float64 forall T\n # Correctly rounded (CORE-MATH, e_acosh.c): NaN below 1 (and for NaN),\n # acosh(1) = 0, acosh(inf) = inf.\n def self.acosh(value : Float64) : Float64\n def self.acosh(value : Float32) : Float32\n def self.acosh(value : T) : Float64 forall T\n def self.asin(value : Float64) : Float64\n def self.asin(value : Float32) : Float32\n def self.asin(value : T) : Float64 forall T\n # Correctly rounded (CORE-MATH, s_asinh.c): odd, asinh(+-0) = +-0,\n # +-inf and NaN come back as x + x.\n def self.asinh(value : Float64) : Float64\n def self.asinh(value : Float32) : Float32\n def self.asinh(value : T) : Float64 forall T\n def self.atan(value : Float64) : Float64\n def self.atan(value : Float32) : Float32\n def self.atan(value : T) : Float64 forall T\n # The angle of (x, y), with the zeros' and infinities' signs read the\n # way C's atan2 reads them: atan2(0.0, -0.0) is pi, atan2(-0.0, -1.0) is\n # -pi, atan2(inf, inf) is pi/4.\n def self.atan2(y : Float64, x : Float64) : Float64\n def self.atan2(y : Float32, x : Float32) : Float32\n def self.atan2(y : T, x : U) : Float64 forall T, U\n # Correctly rounded (CORE-MATH, e_atanh.c): odd, atanh(+-1) = +-inf, NaN\n # beyond 1 in magnitude (and for NaN).\n def self.atanh(value : Float64) : Float64\n def self.atanh(value : Float32) : Float32\n def self.atanh(value : T) : Float64 forall T\n # The Bessel function of the first kind of the given *order*,\n # Jn(*value*), as glibc computes it.\n def self.besselj(order : Int32, value : Float64) : Float64\n # The Bessel function of the first kind of the given *order*,\n # Jn(*value*), as glibc computes it.\n def self.besselj(order : Int32, value : Float32) : Float32\n # The Bessel function of the first kind of the given *order*,\n # Jn(*value*), as glibc computes it.\n def self.besselj(order : Int32, value : T) : Float64 forall T\n # The Bessel function of the first kind of order 0, J0(*value*), as glibc\n # computes it.\n def self.besselj0(value : Float64) : Float64\n # The Bessel function of the first kind of order 0, J0(*value*), as glibc\n # computes it.\n def self.besselj0(value : Float32) : Float32\n # The Bessel function of the first kind of order 0, J0(*value*), as glibc\n # computes it.\n def self.besselj0(value : T) : Float64 forall T\n # The Bessel function of the first kind of order 1, J1(*value*), as glibc\n # computes it.\n def self.besselj1(value : Float64) : Float64\n # The Bessel function of the first kind of order 1, J1(*value*), as glibc\n # computes it.\n def self.besselj1(value : Float32) : Float32\n # The Bessel function of the first kind of order 1, J1(*value*), as glibc\n # computes it.\n def self.besselj1(value : T) : Float64 forall T\n # The Bessel function of the second kind of the given *order*,\n # Yn(*value*), as glibc computes it: NaN for negative *value*, -infinity\n # at zero (+infinity for odd negative *order*).\n def self.bessely(order : Int32, value : Float64) : Float64\n # The Bessel function of the second kind of the given *order*,\n # Yn(*value*), as glibc computes it: NaN for negative *value*, -infinity\n # at zero (+infinity for odd negative *order*).\n def self.bessely(order : Int32, value : Float32) : Float32\n # The Bessel function of the second kind of the given *order*,\n # Yn(*value*), as glibc computes it: NaN for negative *value*, -infinity\n # at zero (+infinity for odd negative *order*).\n def self.bessely(order : Int32, value : T) : Float64 forall T\n # The Bessel function of the second kind of order 0, Y0(*value*), as glibc\n # computes it: NaN for negative *value*, -infinity at zero.\n def self.bessely0(value : Float64) : Float64\n # The Bessel function of the second kind of order 0, Y0(*value*), as glibc\n # computes it: NaN for negative *value*, -infinity at zero.\n def self.bessely0(value : Float32) : Float32\n # The Bessel function of the second kind of order 0, Y0(*value*), as glibc\n # computes it: NaN for negative *value*, -infinity at zero.\n def self.bessely0(value : T) : Float64 forall T\n # The Bessel function of the second kind of order 1, Y1(*value*), as glibc\n # computes it: NaN for negative *value*, -infinity at zero.\n def self.bessely1(value : Float64) : Float64\n # The Bessel function of the second kind of order 1, Y1(*value*), as glibc\n # computes it: NaN for negative *value*, -infinity at zero.\n def self.bessely1(value : Float32) : Float32\n # The Bessel function of the second kind of order 1, Y1(*value*), as glibc\n # computes it: NaN for negative *value*, -infinity at zero.\n def self.bessely1(value : T) : Float64 forall T\n def self.cbrt(value : Float64) : Float64\n def self.cbrt(value : Float32) : Float32\n def self.cbrt(value : T) : Float64 forall T\n def self.copysign(mag : Float64, sgn : Float64) : Float64\n def self.copysign(mag : Float32, sgn : Float32) : Float32\n def self.cos(value : Float64) : Float64\n def self.cos(value : Float32) : Float32\n def self.cos(value : T) : Float64 forall T\n def self.cosh(value : Float64) : Float64\n def self.cosh(value : Float32) : Float32\n def self.cosh(value : T) : Float64 forall T\n # The error function, correctly rounded: glibc 2.43's CORE-MATH erf\n # (s_erf.c). NaN answers NaN, ±inf answer ±1, and ±0 keep their sign.\n def self.erf(value : Float64) : Float64\n # The single's: the double's answer rounded, which is the correctly\n # rounded single but where rounding twice meets a halfway point.\n def self.erf(value : Float32) : Float32\n def self.erf(value : T) : Float64 forall T\n # 1 - erf(value), correctly rounded: glibc 2.43's CORE-MATH erfc\n # (s_erfc.c). NaN answers NaN, -inf 2 and +inf 0; the answer underflows\n # to 0 from 0x1.b39dc41e48bfdp+4 (about 27.23) up.\n def self.erfc(value : Float64) : Float64\n # The single's: the double's answer rounded, which is the correctly\n # rounded single but where rounding twice meets a halfway point.\n def self.erfc(value : Float32) : Float32\n def self.erfc(value : T) : Float64 forall T\n def self.exp(value : Float64) : Float64\n def self.exp(value : Float32) : Float32\n def self.exp(value : T) : Float64 forall T\n def self.exp2(value : Float64) : Float64\n def self.exp2(value : Float32) : Float32\n def self.exp2(value : T) : Float64 forall T\n def self.expm1(value : Float64) : Float64\n def self.expm1(value : Float32) : Float32\n def self.expm1(value : T) : Float64 forall T\n # a * b + c rounded once, as IEEE 754 defines it and as the other\n # library's `Math.fma` answers through libm. The instruction where the\n # processor has one: every aarch64 processor (`fmadd`, LLVM's intrinsic),\n # and an x86_64 one with FMA3 and an operating system that saves its\n # registers, asked once by `cpuid` and `xgetbv` as `Float64#floor` asks\n # for `roundsd`. Elsewhere musl's `fma` (MIT; Copyright 2005-2020 Rich\n # Felker, et al.), in iyi: the significands as integers, their product's\n # 128 bits exact, the sum aligned with a sticky bit, one rounding at the\n # conversion back. This was Dekker's product and two more additions,\n # which round each, and answered the neighbour of the fused result for\n # arguments that cancel.\n def self.fma(a : Float64, b : Float64, c : Float64) : Float64\n # The single's: the instruction where there is one, and otherwise\n # musl's `fmaf` - the product of two singles is exact in a double and\n # the sum rounds once there, which is right unless that double sits on\n # a single's halfway point or among the subnormals; then the sum's\n # rounding error, which is exact, sends it to the odd neighbour, which\n # the conversion to a single cannot then misround.\n def self.fma(a : Float32, b : Float32, c : Float32) : Float32\n def self.fma(a : T, b : U, c : V) : Float64 forall T, U, V\n # value as m * 2^e with m in [0.5, 1) (or 0, NaN or an infinity as it\n # came, with 0), read from the bits: a subnormal is first scaled up by\n # 2^54 so that it has an exponent field of its own.\n def self.frexp(value : Float64) : ::Tuple(Float64, Int32)\n def self.gamma(value : Float64) : Float64\n # The single's: the double's answer rounded, which is the correctly\n # rounded single but where rounding twice meets a halfway point.\n def self.gamma(value : Float32) : Float32\n def self.gamma(value : T) : Float64 forall T\n # Euclid on the side of zero where every magnitude fits: the non-positive\n # side for a signed type, its minimum included - gcd(-2147483648, 6) is 2\n # - and the non-negative side, the only one there is, for an unsigned\n # type. Only gcd(minimum, 0), whose answer does not fit, overflows. The\n # two arguments are one type, as `%` takes one: the signature took any\n # two integers, and an unsigned pair (it has no unary minus) or a pair of\n # widths (no `%` between them) failed to compile inside this method. A\n # pair of widths is refused at the call now, and a literal takes the\n # other argument's type.\n def self.gcd(a : T, b : T) : T forall T\n def self.hypot(x : Float64, y : Float64) : Float64\n def self.hypot(x : Float32, y : Float32) : Float32\n def self.hypot(x : T, y : U) : Float64 forall T, U\n # The exponent of value as an integer, as C's ilogb and glibc answer it:\n # a subnormal's true exponent, -2147483648 for zero and NaN, 2147483647\n # for an infinity.\n def self.ilogb(value : Float64) : Int32\n def self.ilogb(value : Float32) : Int32\n def self.ilogb(value : T) : Int32 forall T\n def initialize\n # The largest r with r * r <= value, in the value's own type, by the\n # other library's bit-at-a-time method. A negative value panics, where\n # that library raises.\n def self.isqrt(value : ::Int) : ::Int\n def self.lcm(a : T, b : T) : T forall T\n # value * 2^exponent, with one rounding: the exponent field is rewritten\n # outright, and a result that lands among the subnormals is scaled down\n # from a normal one in a single step.\n def self.ldexp(value : Float64, exponent : Int32) : Float64\n # log|gamma(value)|, correctly rounded (CORE-MATH, as glibc 2.43): the\n # poles at the non-positive whole numbers and both infinities answer\n # +infinity, NaN answers NaN.\n def self.lgamma(value : Float64) : Float64\n # The single's: the double's answer rounded, which is the correctly\n # rounded single but where rounding twice meets a halfway point.\n def self.lgamma(value : Float32) : Float32\n def self.lgamma(value : T) : Float64 forall T\n def self.log(value : Float64, base : Float64) : Float64\n def self.log(value : T, base : U) : Float64 forall T, U\n def self.log(value : Float64) : Float64\n def self.log(value : Float32) : Float32\n def self.log(value : T) : Float64 forall T\n def self.log10(value : Float64) : Float64\n def self.log10(value : Float32) : Float32\n def self.log10(value : T) : Float64 forall T\n def self.log1p(value : Float64) : Float64\n def self.log1p(value : Float32) : Float32\n def self.log1p(value : T) : Float64 forall T\n def self.log2(value : Float64) : Float64\n def self.log2(value : Float32) : Float32\n def self.log2(value : T) : Float64 forall T\n # The exponent of value as a double: -inf for zero, +inf for an\n # infinity, NaN for NaN, as C's logb.\n def self.logb(value : Float64) : Float64\n def self.logb(value : Float32) : Float32\n def self.logb(value : T) : Float64 forall T\n # The larger, with the number when one side is NaN, and 0.0 over -0.0.\n def self.max(a : Float64, b : Float64) : Float64\n def self.max(a : Float32, b : Float32) : Float32\n # The smaller, with the number when one side is NaN, and -0.0 over 0.0.\n def self.min(a : Float64, b : Float64) : Float64\n def self.min(a : Float32, b : Float32) : Float32\n def self.pow(base : Float64, exp : Float64) : Float64\n def self.pow(base : Float32, exp : Float32) : Float32\n def self.pow(base : T, exp : U) : Float64 forall T, U\n # The least power of two not below v, 1 for v <= 1, in v's type; one\n # the type cannot hold panics \"arithmetic overflow\".\n def self.pw2ceil(v : ::Int) : ::Int\n # scalbn with an Int64 exponent: past the range an Int32 holds every\n # answer is zero or an infinity already, so the exponent is clamped.\n def self.scalbln(value : Float64, exp : Int64) : Float64\n def self.scalbln(value : Float32, exp : Int64) : Float32\n def self.scalbln(value : T, exp : U) : Float64 forall T, U\n # value * 2^exp, rounded once: `ldexp` under C's other name.\n def self.scalbn(value : Float64, exp : Int32) : Float64\n def self.scalbn(value : Float32, exp : Int32) : Float32\n def self.scalbn(value : T, exp : U) : Float64 forall T, U\n def self.sin(value : Float64) : Float64\n def self.sin(value : Float32) : Float32\n def self.sin(value : T) : Float64 forall T\n # sinh, cosh and tanh as glibc 2.43 computes them - fdlibm's\n # `e_sinh.c`, `e_cosh.c` and `s_tanh.c` (Sun's notice is at `expm1`), on\n # the `exp` and `expm1` above, which are glibc's to the last bit, so\n # these are too. Their branches are fdlibm's, at its thresholds, read off\n # the high word: a series near zero and `half_exp` past 709 answered\n # differently in the last bit for 952 arguments of sinh in 100,000, 217\n # of cosh and 4,863 of tanh.\n def self.sinh(value : Float64) : Float64\n def self.sinh(value : Float32) : Float32\n def self.sinh(value : T) : Float64 forall T\n def self.sqrt(value : Float64) : Float64\n def self.sqrt(value : Float32) : Float32\n def self.sqrt(value : T) : Float64 forall T\n def self.tan(value : Float64) : Float64\n def self.tan(value : Float32) : Float32\n def self.tan(value : T) : Float64 forall T\n def self.tanh(value : Float64) : Float64\n def self.tanh(value : Float32) : Float32\n def self.tanh(value : T) : Float64 forall T\n # gamma(value), correctly rounded (CORE-MATH, as glibc 2.43): +-0 answer\n # +-infinity, the negative whole numbers and -infinity NaN; past\n # 171.62 the answer overflows to infinity, and below -184 it is a zero\n # carrying gamma's sign.\n def self.tgamma(value : Float64) : Float64\n # The single's: the double's answer rounded, which is the correctly\n # rounded single but where rounding twice meets a halfway point.\n def self.tgamma(value : Float32) : Float32\n def self.tgamma(value : T) : Float64 forall T\nend\n" + "sourceSha256": "c4a4757ccdfb7d46e982de1177ad20663690a0040f630cd33a3a822117819b36", + "surface": "module std/math\n\npub struct Math\n def self.acos(value : Float64) : Float64\n def self.acos(value : Float32) : Float32\n def self.acos(value : T) : Float64 forall T\n # Correctly rounded (CORE-MATH, e_acosh.c): NaN below 1 (and for NaN),\n # acosh(1) = 0, acosh(inf) = inf.\n def self.acosh(value : Float64) : Float64\n def self.acosh(value : Float32) : Float32\n def self.acosh(value : T) : Float64 forall T\n def self.asin(value : Float64) : Float64\n def self.asin(value : Float32) : Float32\n def self.asin(value : T) : Float64 forall T\n # Correctly rounded (CORE-MATH, s_asinh.c): odd, asinh(+-0) = +-0,\n # +-inf and NaN come back as x + x.\n def self.asinh(value : Float64) : Float64\n def self.asinh(value : Float32) : Float32\n def self.asinh(value : T) : Float64 forall T\n def self.atan(value : Float64) : Float64\n def self.atan(value : Float32) : Float32\n def self.atan(value : T) : Float64 forall T\n # The angle of (x, y), with the zeros' and infinities' signs read the\n # way C's atan2 reads them: atan2(0.0, -0.0) is pi, atan2(-0.0, -1.0) is\n # -pi, atan2(inf, inf) is pi/4.\n def self.atan2(y : Float64, x : Float64) : Float64\n def self.atan2(y : Float32, x : Float32) : Float32\n def self.atan2(y : T, x : U) : Float64 forall T, U\n # Correctly rounded (CORE-MATH, e_atanh.c): odd, atanh(+-1) = +-inf, NaN\n # beyond 1 in magnitude (and for NaN).\n def self.atanh(value : Float64) : Float64\n def self.atanh(value : Float32) : Float32\n def self.atanh(value : T) : Float64 forall T\n # The Bessel function of the first kind of the given *order*,\n # Jn(*value*), as glibc computes it.\n def self.besselj(order : Int32, value : Float64) : Float64\n # The Bessel function of the first kind of the given *order*,\n # Jn(*value*), as glibc computes it.\n def self.besselj(order : Int32, value : Float32) : Float32\n # The Bessel function of the first kind of the given *order*,\n # Jn(*value*), as glibc computes it.\n def self.besselj(order : Int32, value : T) : Float64 forall T\n # The Bessel function of the first kind of order 0, J0(*value*), as glibc\n # computes it.\n def self.besselj0(value : Float64) : Float64\n # The Bessel function of the first kind of order 0, J0(*value*), as glibc\n # computes it.\n def self.besselj0(value : Float32) : Float32\n # The Bessel function of the first kind of order 0, J0(*value*), as glibc\n # computes it.\n def self.besselj0(value : T) : Float64 forall T\n # The Bessel function of the first kind of order 1, J1(*value*), as glibc\n # computes it.\n def self.besselj1(value : Float64) : Float64\n # The Bessel function of the first kind of order 1, J1(*value*), as glibc\n # computes it.\n def self.besselj1(value : Float32) : Float32\n # The Bessel function of the first kind of order 1, J1(*value*), as glibc\n # computes it.\n def self.besselj1(value : T) : Float64 forall T\n # The Bessel function of the second kind of the given *order*,\n # Yn(*value*), as glibc computes it: NaN for negative *value*, -infinity\n # at zero (+infinity for odd negative *order*).\n def self.bessely(order : Int32, value : Float64) : Float64\n # The Bessel function of the second kind of the given *order*,\n # Yn(*value*), as glibc computes it: NaN for negative *value*, -infinity\n # at zero (+infinity for odd negative *order*).\n def self.bessely(order : Int32, value : Float32) : Float32\n # The Bessel function of the second kind of the given *order*,\n # Yn(*value*), as glibc computes it: NaN for negative *value*, -infinity\n # at zero (+infinity for odd negative *order*).\n def self.bessely(order : Int32, value : T) : Float64 forall T\n # The Bessel function of the second kind of order 0, Y0(*value*), as glibc\n # computes it: NaN for negative *value*, -infinity at zero.\n def self.bessely0(value : Float64) : Float64\n # The Bessel function of the second kind of order 0, Y0(*value*), as glibc\n # computes it: NaN for negative *value*, -infinity at zero.\n def self.bessely0(value : Float32) : Float32\n # The Bessel function of the second kind of order 0, Y0(*value*), as glibc\n # computes it: NaN for negative *value*, -infinity at zero.\n def self.bessely0(value : T) : Float64 forall T\n # The Bessel function of the second kind of order 1, Y1(*value*), as glibc\n # computes it: NaN for negative *value*, -infinity at zero.\n def self.bessely1(value : Float64) : Float64\n # The Bessel function of the second kind of order 1, Y1(*value*), as glibc\n # computes it: NaN for negative *value*, -infinity at zero.\n def self.bessely1(value : Float32) : Float32\n # The Bessel function of the second kind of order 1, Y1(*value*), as glibc\n # computes it: NaN for negative *value*, -infinity at zero.\n def self.bessely1(value : T) : Float64 forall T\n def self.cbrt(value : Float64) : Float64\n def self.cbrt(value : Float32) : Float32\n def self.cbrt(value : T) : Float64 forall T\n # The magnitude of mag with the sign of sgn. Any other pair of numbers is\n # taken as two Float64s, as the other library's untyped overload takes\n # it: `copysign(3, -1)` was an ambiguous call between the two float\n # overloads, as `max(2, 5)` was.\n def self.copysign(mag : Float64, sgn : Float64) : Float64\n def self.copysign(mag : Float32, sgn : Float32) : Float32\n def self.copysign(mag : T, sgn : U) : Float64 forall T, U\n def self.cos(value : Float64) : Float64\n def self.cos(value : Float32) : Float32\n def self.cos(value : T) : Float64 forall T\n def self.cosh(value : Float64) : Float64\n def self.cosh(value : Float32) : Float32\n def self.cosh(value : T) : Float64 forall T\n # The error function, correctly rounded: glibc 2.43's CORE-MATH erf\n # (s_erf.c). NaN answers NaN, ±inf answer ±1, and ±0 keep their sign.\n def self.erf(value : Float64) : Float64\n # The single's: the double's answer rounded, which is the correctly\n # rounded single but where rounding twice meets a halfway point.\n def self.erf(value : Float32) : Float32\n def self.erf(value : T) : Float64 forall T\n # 1 - erf(value), correctly rounded: glibc 2.43's CORE-MATH erfc\n # (s_erfc.c). NaN answers NaN, -inf 2 and +inf 0; the answer underflows\n # to 0 from 0x1.b39dc41e48bfdp+4 (about 27.23) up.\n def self.erfc(value : Float64) : Float64\n # The single's: the double's answer rounded, which is the correctly\n # rounded single but where rounding twice meets a halfway point.\n def self.erfc(value : Float32) : Float32\n def self.erfc(value : T) : Float64 forall T\n def self.exp(value : Float64) : Float64\n def self.exp(value : Float32) : Float32\n def self.exp(value : T) : Float64 forall T\n def self.exp2(value : Float64) : Float64\n def self.exp2(value : Float32) : Float32\n def self.exp2(value : T) : Float64 forall T\n def self.expm1(value : Float64) : Float64\n def self.expm1(value : Float32) : Float32\n def self.expm1(value : T) : Float64 forall T\n # a * b + c rounded once, as IEEE 754 defines it and as the other\n # library's `Math.fma` answers through libm. The instruction where the\n # processor has one: every aarch64 processor (`fmadd`, LLVM's intrinsic),\n # and an x86_64 one with FMA3 and an operating system that saves its\n # registers, asked once by `cpuid` and `xgetbv` as `Float64#floor` asks\n # for `roundsd`. Elsewhere musl's `fma` (MIT; Copyright 2005-2020 Rich\n # Felker, et al.), in iyi: the significands as integers, their product's\n # 128 bits exact, the sum aligned with a sticky bit, one rounding at the\n # conversion back. This was Dekker's product and two more additions,\n # which round each, and answered the neighbour of the fused result for\n # arguments that cancel.\n def self.fma(a : Float64, b : Float64, c : Float64) : Float64\n # The single's: the instruction where there is one, and otherwise\n # musl's `fmaf` - the product of two singles is exact in a double and\n # the sum rounds once there, which is right unless that double sits on\n # a single's halfway point or among the subnormals; then the sum's\n # rounding error, which is exact, sends it to the odd neighbour, which\n # the conversion to a single cannot then misround.\n def self.fma(a : Float32, b : Float32, c : Float32) : Float32\n def self.fma(a : T, b : U, c : V) : Float64 forall T, U, V\n # value as m * 2^e with m in [0.5, 1) (or 0, NaN or an infinity as it\n # came, with 0), read from the bits: a subnormal is first scaled up by\n # 2^54 so that it has an exponent field of its own.\n def self.frexp(value : Float64) : ::Tuple(Float64, Int32)\n def self.gamma(value : Float64) : Float64\n # The single's: the double's answer rounded, which is the correctly\n # rounded single but where rounding twice meets a halfway point.\n def self.gamma(value : Float32) : Float32\n def self.gamma(value : T) : Float64 forall T\n # Euclid on the side of zero where every magnitude fits: the non-positive\n # side for a signed type, its minimum included - gcd(-2147483648, 6) is 2\n # - and the non-negative side, the only one there is, for an unsigned\n # type. Only gcd(minimum, 0), whose answer does not fit, overflows. The\n # two arguments are one type, as `%` takes one: the signature took any\n # two integers, and an unsigned pair (it has no unary minus) or a pair of\n # widths (no `%` between them) failed to compile inside this method. A\n # pair of widths is refused at the call now, and a literal takes the\n # other argument's type.\n def self.gcd(a : T, b : T) : T forall T\n def self.hypot(x : Float64, y : Float64) : Float64\n def self.hypot(x : Float32, y : Float32) : Float32\n def self.hypot(x : T, y : U) : Float64 forall T, U\n # The exponent of value as an integer, as C's ilogb and glibc answer it:\n # a subnormal's true exponent, -2147483648 for zero and NaN, 2147483647\n # for an infinity.\n def self.ilogb(value : Float64) : Int32\n def self.ilogb(value : Float32) : Int32\n def self.ilogb(value : T) : Int32 forall T\n def initialize\n # The largest r with r * r <= value, in the value's own type, by the\n # other library's bit-at-a-time method. A negative value panics, where\n # that library raises.\n def self.isqrt(value : ::Int) : ::Int\n def self.lcm(a : T, b : T) : T forall T\n # value * 2^exponent, with one rounding: the exponent field is rewritten\n # outright, and a result that lands among the subnormals is scaled down\n # from a normal one in a single step.\n def self.ldexp(value : Float64, exponent : Int32) : Float64\n # log|gamma(value)|, correctly rounded (CORE-MATH, as glibc 2.43): the\n # poles at the non-positive whole numbers and both infinities answer\n # +infinity, NaN answers NaN.\n def self.lgamma(value : Float64) : Float64\n # The single's: the double's answer rounded, which is the correctly\n # rounded single but where rounding twice meets a halfway point.\n def self.lgamma(value : Float32) : Float32\n def self.lgamma(value : T) : Float64 forall T\n def self.log(value : Float64, base : Float64) : Float64\n def self.log(value : T, base : U) : Float64 forall T, U\n def self.log(value : Float64) : Float64\n def self.log(value : Float32) : Float32\n def self.log(value : T) : Float64 forall T\n def self.log10(value : Float64) : Float64\n def self.log10(value : Float32) : Float32\n def self.log10(value : T) : Float64 forall T\n def self.log1p(value : Float64) : Float64\n def self.log1p(value : Float32) : Float32\n def self.log1p(value : T) : Float64 forall T\n def self.log2(value : Float64) : Float64\n def self.log2(value : Float32) : Float32\n def self.log2(value : T) : Float64 forall T\n # The exponent of value as a double: -inf for zero, +inf for an\n # infinity, NaN for NaN, as C's logb.\n def self.logb(value : Float64) : Float64\n def self.logb(value : Float32) : Float32\n def self.logb(value : T) : Float64 forall T\n def self.max(a : T, b : T) : T forall T\n # min and max take two values of one type, any type `<` compares, and\n # answer one of them. Each is one overload: they were a Float64 and a\n # Float32 one, which took no integer pair, and an integer overload beside\n # them ties with them wherever an integer variable can widen to a\n # double: with all three, `Math.max(1_i64, x)` with `x : Int32` is\n # \"ambiguous call, implicit cast of Int32 matches all of Float64,\n # Int64\". Two doubles or two singles are ordered as IEEE 754-2019's\n # minimumNumber and maximumNumber order them, as they were: the number\n # when one side is NaN, and -0.0 below 0.0. Every other type compares\n # with `<` alone and answers the first argument on a tie, as the other\n # library's untyped `Math.min` and `Math.max` do. The one type is the\n # first argument's that the other can be cast to, so `Math.max(2,\n # page - 1)` is an Int32, `Math.max(0, n)` with `n : Int64` an Int64,\n # `Math.max(2, 2.5)` the Float64 2.5, and `Math.max(n, 0.5)` with\n # `n : Int32` a Float64, as it was; a pair neither of which casts to the\n # other's type, an Int64 and a UInt64 or a number and a String, is\n # refused at the call.\n def self.min(a : T, b : T) : T forall T\n def self.pow(base : Float64, exp : Float64) : Float64\n def self.pow(base : Float32, exp : Float32) : Float32\n def self.pow(base : T, exp : U) : Float64 forall T, U\n # The least power of two not below v, 1 for v <= 1, in v's type; one\n # the type cannot hold panics \"arithmetic overflow\".\n def self.pw2ceil(v : ::Int) : ::Int\n # scalbn with an Int64 exponent: past the range an Int32 holds every\n # answer is zero or an infinity already, so the exponent is clamped.\n def self.scalbln(value : Float64, exp : Int64) : Float64\n def self.scalbln(value : Float32, exp : Int64) : Float32\n def self.scalbln(value : T, exp : U) : Float64 forall T, U\n # value * 2^exp, rounded once: `ldexp` under C's other name.\n def self.scalbn(value : Float64, exp : Int32) : Float64\n def self.scalbn(value : Float32, exp : Int32) : Float32\n def self.scalbn(value : T, exp : U) : Float64 forall T, U\n def self.sin(value : Float64) : Float64\n def self.sin(value : Float32) : Float32\n def self.sin(value : T) : Float64 forall T\n # sinh, cosh and tanh as glibc 2.43 computes them - fdlibm's\n # `e_sinh.c`, `e_cosh.c` and `s_tanh.c` (Sun's notice is at `expm1`), on\n # the `exp` and `expm1` above, which are glibc's to the last bit, so\n # these are too. Their branches are fdlibm's, at its thresholds, read off\n # the high word: a series near zero and `half_exp` past 709 answered\n # differently in the last bit for 952 arguments of sinh in 100,000, 217\n # of cosh and 4,863 of tanh.\n def self.sinh(value : Float64) : Float64\n def self.sinh(value : Float32) : Float32\n def self.sinh(value : T) : Float64 forall T\n def self.sqrt(value : Float64) : Float64\n def self.sqrt(value : Float32) : Float32\n def self.sqrt(value : T) : Float64 forall T\n def self.tan(value : Float64) : Float64\n def self.tan(value : Float32) : Float32\n def self.tan(value : T) : Float64 forall T\n def self.tanh(value : Float64) : Float64\n def self.tanh(value : Float32) : Float32\n def self.tanh(value : T) : Float64 forall T\n # gamma(value), correctly rounded (CORE-MATH, as glibc 2.43): +-0 answer\n # +-infinity, the negative whole numbers and -infinity NaN; past\n # 171.62 the answer overflows to infinity, and below -184 it is a zero\n # carrying gamma's sign.\n def self.tgamma(value : Float64) : Float64\n # The single's: the double's answer rounded, which is the correctly\n # rounded single but where rounding twice meets a halfway point.\n def self.tgamma(value : Float32) : Float32\n def self.tgamma(value : T) : Float64 forall T\nend\n" }, { "name": "std/mime", @@ -349,11 +367,17 @@ "sourceSha256": "a1cac6eb0a4b5a6da16cd36b295720e3d9b01abce0344518a311d168070f99c2", "surface": "module std/mime\n\npub struct MIME\n # Whether a body of this type shrinks under gzip or deflate: text,\n # JSON, JavaScript, XML and their `+json`/`+xml` kin (SVG among them),\n # YAML, TOML, scripts, WebAssembly, uncompressed fonts and archives,\n # bitmaps and icons. Not images, audio and video that are already\n # compressed, nor zip, gzip and the other archives, nor WOFF and WOFF2,\n # which are compressed fonts. WebAssembly is included because its code\n # roughly halves under gzip, which is why servers compress it.\n def self.compressible?(media_type : String) : Bool\n # The extensions a media type is written with, dotted and sorted\n # (\"text/html\" is [\".htm\", \".html\"]). Parameters are ignored and case\n # does not matter; empty when the type is unknown. The array is a fresh\n # copy the caller may change.\n def self.extensions(media_type : String) : Array(String)\n # The same, falling back to *default*.\n def self.from_extension(name : String, default : String = \"application/octet-stream\") : String\n # The media type for a file name or extension: \".html\", \"html\",\n # \"index.HTML\" and \"a/b.tar.gz\" (by its last extension) all work, in\n # any case. A path whose base name has no dot has no extension; a bare\n # word is taken as the extension itself. Nil when unknown.\n def self.from_extension?(name : String) : String | ::Nil\n def initialize\n # RFC 9110 §8.3.1: `type/subtype` followed by `; name=value` parameters,\n # whitespace allowed around the semicolons and at either end, a value a\n # token or a quoted string whose backslash escapes are undone. Answers\n # the type lowercased and the parameters with lowercased names and\n # values as written; a name given twice keeps its last value. Nil when\n # any part is not a token, a parameter has no `=`, or a quote is left\n # open.\n def self.parse?(value : String) : ::Tuple(String, Hash(String, String)) | ::Nil\n # The media type with `; charset=utf-8` added when it is text, JSON,\n # JavaScript or XML (`+json` and `+xml` included) and names no charset\n # yet. Anything else, and anything that does not parse, comes back as\n # given.\n def self.with_charset(media_type : String) : String\nend\n" }, + { + "name": "std/mlkem", + "path": "src/std/mlkem.iyi", + "sourceSha256": "8b6ae912b1eb37146021806f7dcfff82fc16d6f1d57f38ba723082bfb73cc106", + "surface": "module std/mlkem\n\n# ML-KEM-768's encapsulation, and its sizes (FIPS 203 section 8, table 3).\npub struct MlKem768\n # The ciphertext for *encapsulation_key* and the 32-byte shared secret it\n # carries, FIPS 203 Algorithm 17 from the 32 random bytes *randomness*\n # (m), or an `MlKemError`: a key that is not 1,184 bytes or fails the\n # modulus check of section 7.2.\n def self.encapsulate(encapsulation_key : String | Array(UInt8), randomness : String | Array(UInt8)) : ::Tuple(Array(UInt8), Array(UInt8)) | MlKemError\n def initialize\nend\n\n# An ML-KEM-768 key pair: the decapsulation key and the encapsulation key\n# that goes with it. Holds the secret vector in the NTT domain, and the\n# public matrix and vector that decapsulation encrypts with again.\npub struct MlKem768PrivateKey\n # The 32-byte shared secret *ciphertext* carries, FIPS 203 Algorithm 18,\n # or an `MlKemError` for a ciphertext that is not 1,088 bytes. A\n # ciphertext that does not re-encrypt to itself is answered with the\n # implicit-rejection key J(z || c), chosen by masks: the caller cannot\n # tell the two apart, and neither can the time taken.\n def decapsulate(ciphertext : String | Array(UInt8)) : Array(UInt8) | MlKemError\n # The 2,400-byte decapsulation key, as `from_bytes` reads it.\n def decapsulation_key : Array(UInt8)\n # The 1,184 bytes a peer encapsulates to: ByteEncode12 of t, then rho.\n def encapsulation_key : Array(UInt8)\n # The key whose 2,400-byte decapsulation key is *bytes* (ByteEncode12 of\n # s, the encapsulation key, H of it, z), or an `MlKemError`: the wrong\n # size, or a stored H(ek) that is not the encapsulation key's hash (FIPS\n # 203 section 7.3).\n def self.from_bytes(bytes : String | Array(UInt8)) : MlKem768PrivateKey | MlKemError\n # The key pair of *seed*, d then z, 32 bytes each: FIPS 203 Algorithm 16\n # (ML-KEM.KeyGen_internal) over Algorithm 13 (K-PKE.KeyGen).\n def self.from_seed(seed : String | Array(UInt8)) : MlKem768PrivateKey\n def initialize(encapsulation_key : Array(UInt8), s : Pointer(UInt32), t : Pointer(UInt32), a : Pointer(UInt32), h : Array(UInt8), z : Array(UInt8))\nend\n\n# What is wrong with a key or a ciphertext from outside: `message` is the\n# sentence.\npub struct MlKemError\n def initialize(message : String)\n def to_s : String\nend\n\nimpl Error for MlKemError\n def message : String\nend\n" + }, { "name": "std/mutex", "path": "src/std/mutex.iyi", - "sourceSha256": "8171d7e399fd514875a37f775459a9c6ed5b1baa978d0210aa84d07c59d24aa7", - "surface": "module std/mutex\n\npub class Mutex(T)\n protected def self.build(value : T) : Mutex(T)\n # The block's answer, worked out with the lock held. It must be `Share`,\n # because it leaves the lock.\n def get(&block : (T -> R)) : R | Cancelled forall R\n # Runs the block with the value, the lock held; answers nil, or\n # `Cancelled` when the task was cancelled while it waited.\n def lock(&block : (T -> _)) : Nil | Cancelled\n # Whether some task holds it now: an answer that may be old by the time\n # it is read, for a report rather than a decision.\n def locked? : Bool\n # The value is the block's: made here, so nothing outside holds it. The\n # constructor that takes a value is private for that reason.\n def self.new(&block : (-> U)) : Mutex(U) forall U\n protected def self.task_id : UInt64\n # Whether this thread has anything to run besides the waiting task:\n # tasks ready to run, tasks asleep, tasks waiting on I/O.\n protected def self.thread_busy? : Bool\n protected def self.thread_id : UInt64\n # The value replaced by the block's answer, with the lock held: what a\n # number or any other value type wants, which a block cannot change in\n # place.\n def update(&block : (T -> T)) : Nil | Cancelled\n # Runs the block with the lock held each time the value changes, until it\n # answers something other than nil, and answers that: a condition and\n # what is done once it holds, in one step no other task can come between.\n #\n # queue = Mutex.new { [] of Int32 }\n # job = queue.wait_for { |q| q.empty? ? nil : q.shift }.or_panic\n #\n # A change is any lock, get, update or wait_for of this Mutex by another\n # task; between them the waiter holds no lock, and what it does while it\n # waits is `lock`'s: yields, then sleeps a millisecond at a time, and on\n # Linux a thread with nothing else to run sleeps in the kernel until the\n # next release. Cancellable, as `lock` is. A wait nothing could end - one\n # thread, and nothing else on it to run - panics saying so.\n def wait_for(&block : (T -> R | ::Nil)) : R | Cancelled forall R\nend\n" + "sourceSha256": "e02a2548bfddd8681125bbb3c18272d4b266a1df4c1e04f3345d7c47109b2f3d", + "surface": "module std/mutex\n\npub class Mutex(T)\n # The program's one thread, with nothing on it to run but the waiting\n # task: no task runnable, asleep or waiting on I/O, and none another\n # thread has woken into its inbox (SPEC.md III.4.13). Nothing can\n # release or change the value then.\n protected def self.alone? : Bool\n protected def self.build(value : T) : Mutex(T)\n # The block's answer, worked out with the lock held. It must be `Share`,\n # because it leaves the lock.\n def get(&block : (T -> R)) : R | Cancelled forall R\n # Whether the holder, which took the lock on *thread*, may be running\n # now: another thread exists, and the holder is not on this one, which\n # is running the waiter.\n protected def self.holder_may_run?(thread : UInt64) : Bool\n # Runs the block with the value, the lock held; answers nil, or\n # `Cancelled` when the task was cancelled while it waited.\n def lock(&block : (T -> _)) : Nil | Cancelled\n # Whether some task holds it now: an answer that may be old by the time\n # it is read, for a report rather than a decision.\n def locked? : Bool\n # The value is the block's: made here, so nothing outside holds it. The\n # constructor that takes a value is private for that reason.\n def self.new(&block : (-> U)) : Mutex(U) forall U\n protected def self.task_id : UInt64\n protected def self.thread_id : UInt64\n # The value replaced by the block's answer, with the lock held: what a\n # number or any other value type wants, which a block cannot change in\n # place.\n def update(&block : (T -> T)) : Nil | Cancelled\n # Runs the block with the lock held each time the value changes, until it\n # answers something other than nil, and answers that: a condition and\n # what is done once it holds, in one step no other task can come between.\n #\n # queue = Mutex.new { [] of Int32 }\n # job = queue.wait_for { |q| q.empty? ? nil : q.shift }.or_panic\n #\n # A change is any lock, get, update or wait_for of this Mutex by another\n # task; between them the waiter holds no lock, and is parked on the count\n # of releases until another task's moves it. Cancellable, as `lock` is.\n # A wait nothing could end - one thread, and nothing else on it to run -\n # panics saying so.\n def wait_for(&block : (T -> R | ::Nil)) : R | Cancelled forall R\nend\n" }, { "name": "std/named_tuple", @@ -379,6 +403,12 @@ "sourceSha256": "a40cfd087457929c1ee319de0306b8d72b2e4ded7dbc359dcf3085f0d5668a5b", "surface": "module std/number_format\n\n# Which binary prefixes `humanize_bytes` writes.\npub enum BinaryPrefixFormat : Int32\n IEC = 0\n JEDEC = 1\nend\n\nstruct ::Int\n # A count of bytes scaled by powers of 1024, as `humanize` scales by\n # 1000.\n def humanize_bytes(precision : Int32 = 3, separator : ::Char = '.', *, significant : ::Bool = true, unit_separator : ::String = \"\", format : Std::NumberFormat::BinaryPrefixFormat = Std::NumberFormat::BinaryPrefixFormat::IEC) : ::String\nend\n\nstruct ::Number\n # The number with its integer digits in groups of *group*, *delimiter*\n # between them and *separator* before the fraction. *decimal_places*\n # rounds to that many places, half to even; nil keeps an integer whole\n # and a float's shortest digits. *only_significant* drops the fraction's\n # trailing zeros, and the separator if nothing is left.\n def format(separator : ::Char = '.', delimiter : ::Char = ',', decimal_places : Int32 | ::Nil = nil, *, group : Int32 = 3, only_significant : ::Bool = false) : ::String\n # The number scaled to an SI prefix, with *precision* significant\n # digits (or, with `significant: false`, places), *unit_separator*\n # between it and the prefix.\n def humanize(precision : Int32 = 3, separator : ::Char = '.', delimiter : ::Char = ',', *, significant : ::Bool = true, unit_separator : ::String = \"\") : ::String\nend\n" }, + { + "name": "std/ocsp", + "path": "src/std/ocsp.iyi", + "sourceSha256": "8d3219c058d2b4488d0d5a63180f72a3cea57b94ba7a6fd9e0b3952639607746", + "surface": "module std/ocsp\n\npub struct Ocsp\n def initialize\n # A CRLReason by the name RFC 5280 section 5.3.1 gives it.\n def self.reason_name(reason : Int32) : String\n # An OCSPRequest (RFC 6960 section 4.1.1) for *leaf*, *issuer* its\n # issuer's certificate: one Request, unsigned, and a nonce extension\n # holding *nonce* when one is given.\n def self.request(leaf : Certificate, issuer : Certificate, hash : OcspHash = OcspHash::SHA1, nonce : Array(UInt8) | ::Nil = nil) : Array(UInt8)\n # A responseStatus by the name RFC 6960 gives it.\n def self.status_name(status : Int64) : String\nend\n\n# A CertID (RFC 6960 section 4.1.1): the hash it is made under, the hashes\n# of the issuer's name and key, and the certificate's serial number (its\n# two's-complement bytes, as `Certificate#serial` holds it).\npub struct OcspCertId\n # Its DER: the hash's AlgorithmIdentifier with NULL parameters, as\n # OpenSSL writes it.\n def der : Array(UInt8)\n def hash : OcspHash\n def initialize(hash : OcspHash, issuer_name_hash : Array(UInt8), issuer_key_hash : Array(UInt8), serial : Array(UInt8))\n def issuer_key_hash : Array(UInt8)\n def issuer_name_hash : Array(UInt8)\n # Whether this is *leaf*'s CertID, *issuer* its issuer: the name hash\n # over the leaf's issuer name, the key hash over the issuer's key, and\n # the serial number the leaf's.\n def matches?(leaf : Certificate, issuer : Certificate) : Bool\n # *leaf*'s CertID, *issuer* its issuer's certificate.\n def self.of(leaf : Certificate, issuer : Certificate, hash : OcspHash = OcspHash::SHA1) : OcspCertId\n def serial : Array(UInt8)\nend\n\n# What a SingleResponse says of a certificate (RFC 6960 section 4.2.1).\npub enum OcspCertStatus : Int32\n Good = 0\n Revoked = 1\n Unknown = 2\n def word : String\nend\n\n# What reading or checking a response answers when it fails.\npub struct OcspError\n def initialize(message : String, response_status : Int32 | ::Nil = nil)\n # The responseStatus of a responder that answered with no response: 1\n # malformedRequest, 2 internalError, 3 tryLater, 5 sigRequired, 6\n # unauthorized. Nil for every other refusal.\n def response_status : Int32 | ::Nil\n def to_s : String\nend\n\n# The hashes a CertID is made under.\npub enum OcspHash : Int32\n SHA1 = 0\n SHA256 = 1\n SHA384 = 2\n SHA512 = 3\n def digest(data : Array(UInt8)) : Array(UInt8)\n def self.from_oid(oid : String) : OcspHash | ::Nil\n def oid : String\n def size : Int32\nend\n\npub struct OcspResponse\n # The certificates the response carries, for a delegated responder.\n def certificates : Array(Certificate)\n def initialize(raw : Array(UInt8), tbs : Array(UInt8), version : Int32, responder_name : Array(UInt8) | ::Nil, responder_key_hash : Array(UInt8) | ::Nil, produced_at : Time, responses : Array(OcspSingleResponse), nonce : Array(UInt8) | ::Nil, signature_algorithm : String, signature_parameters : DerValue | ::Nil, signature : Array(UInt8), certificates : Array(Certificate))\n # The nonce extension's OCTET STRING, nil when absent.\n def nonce : Array(UInt8) | ::Nil\n # The OCSPResponse *der* holds (RFC 6960 section 4.2.1).\n def self.parse(der : Array(UInt8)) : OcspResponse | OcspError\n def produced_at : Time\n # The whole OCSPResponse as it was read, and the ResponseData the\n # signature is over.\n def raw : Array(UInt8)\n def responder_key_hash : Array(UInt8) | ::Nil\n # The responderID: a Name's DER (byName), or the SHA-1 of the\n # responder's key (byKey); one of the two is nil.\n def responder_name : Array(UInt8) | ::Nil\n # The responderID, for a sentence.\n def responder_text : String\n def responses : Array(OcspSingleResponse)\n def signature : Array(UInt8)\n # The signature algorithm's OID, and the signature.\n def signature_algorithm : String\n # The SingleResponse for *leaf*, *issuer* its issuer, or nil.\n def single_for(leaf : Certificate, issuer : Certificate) : OcspSingleResponse | ::Nil\n def tbs : Array(UInt8)\n # The status this response gives *leaf*, *issuer* its issuer's\n # certificate, checked at *now* (see the module's header); or why it\n # gives none that can be taken.\n def verify(leaf : Certificate, issuer : Certificate, now : Time = Time.utc, skew_seconds : Int32 = Ocsp::SKEW_SECONDS) : OcspVerdict | OcspError\n def version : Int32\nend\n\n# One SingleResponse (RFC 6960 section 4.2.1): a certificate's status,\n# when it was revoked and why (a CRLReason, nil when not given), and the\n# time the status is for.\npub struct OcspSingleResponse\n def cert_id : OcspCertId\n def initialize(cert_id : OcspCertId, status : OcspCertStatus, revocation_time : Time | ::Nil, revocation_reason : Int32 | ::Nil, this_update : Time, next_update : Time | ::Nil)\n def next_update : Time | ::Nil\n def revocation_reason : Int32 | ::Nil\n def revocation_time : Time | ::Nil\n def status : OcspCertStatus\n def this_update : Time\nend\n\n# What `OcspResponse#verify` answers: the status of the leaf, the\n# SingleResponse that gave it, and the certificate that signed - the\n# issuer, or a delegated responder.\npub struct OcspVerdict\n def delegated : Bool\n def initialize(status : OcspCertStatus, single : OcspSingleResponse, signer : Certificate, delegated : Bool)\n def signer : Certificate\n def single : OcspSingleResponse\n def status : OcspCertStatus\nend\n\nimpl Error for OcspError\n def message : String\nend\n" + }, { "name": "std/option_parser", "path": "src/std/option_parser.iyi", @@ -394,9 +424,15 @@ { "name": "std/p256", "path": "src/std/p256.iyi", - "sourceSha256": "519791b0842b8d5f787903a32696dd3fc0d54915eb0cf5628817864c8bd5821d", + "sourceSha256": "fff30034b881b76ce3e290fc5952af15bf42391ebd61cd2149e1d7109422d551", "surface": "module std/p256\n\n# A P-256 private key, and the public key that goes with it.\npub struct P256PrivateKey\n # The key whose d is *bytes*, 32 big-endian, or why it is not one: not\n # 32 bytes, or not in [1, n - 1].\n def self.from_bytes(bytes : String | Array(UInt8)) : P256PrivateKey | EcdsaError\n # A PKCS #8 OneAsymmetricKey (RFC 5958) holding a P-256 key: version 0 or\n # 1, the algorithm id-ecPublicKey with prime256v1, and an ECPrivateKey\n # inside the privateKey OCTET STRING.\n def self.from_pkcs8(der : Array(UInt8)) : P256PrivateKey | EcdsaError\n # SEC 1's ECPrivateKey (RFC 5915): version 1, the 32-byte private key,\n # then optionally the curve ([0], which must be prime256v1) and the\n # public key ([1], which must be the private key's).\n def self.from_sec1(der : Array(UInt8)) : P256PrivateKey | EcdsaError\n def initialize(d : P256Num, public_key : EcdsaPublicKey, public_point : Array(UInt8))\n def public_key : EcdsaPublicKey\n # The public key's point, uncompressed: 0x04, then x and y, 32 bytes each.\n def public_point : Array(UInt8)\n # ECDH: x of [d]Q for the peer's point Q, 32 bytes big-endian - or why\n # *peer* is not a point of P-256 (checked before d is used).\n def shared_secret(peer : Array(UInt8)) : Array(UInt8) | EcdsaError\n # The signature of *message* under *hash*: the DER of Ecdsa-Sig-Value,\n # SEQUENCE { r INTEGER, s INTEGER }, as X.509 and TLS 1.3 carry it. The\n # nonce is RFC 6979's, so the same key and message sign alike.\n def sign(hash : EcdsaHash, message : String | Array(UInt8)) : Array(UInt8)\nend\n" }, + { + "name": "std/p384", + "path": "src/std/p384.iyi", + "sourceSha256": "bceeb1a2e690f13b5ab58010a40173ced4f43829058c224587d921dc643d53c1", + "surface": "module std/p384\n\n# A P-384 private key, and the public key that goes with it.\npub struct P384PrivateKey\n # The key whose d is *bytes*, 48 big-endian, or why it is not one: not\n # 48 bytes, or not in [1, n - 1].\n def self.from_bytes(bytes : String | Array(UInt8)) : P384PrivateKey | EcdsaError\n # A PKCS #8 OneAsymmetricKey (RFC 5958) holding a P-384 key: version 0 or\n # 1, the algorithm id-ecPublicKey with secp384r1, and an ECPrivateKey\n # inside the privateKey OCTET STRING.\n def self.from_pkcs8(der : Array(UInt8)) : P384PrivateKey | EcdsaError\n # SEC 1's ECPrivateKey (RFC 5915): version 1, the 48-byte private key,\n # then optionally the curve ([0], which must be secp384r1) and the\n # public key ([1], which must be the private key's).\n def self.from_sec1(der : Array(UInt8)) : P384PrivateKey | EcdsaError\n def initialize(d : P384Num, public_key : EcdsaPublicKey, public_point : Array(UInt8))\n def public_key : EcdsaPublicKey\n # The public key's point, uncompressed: 0x04, then x and y, 48 bytes each.\n def public_point : Array(UInt8)\n # ECDH: x of [d]Q for the peer's point Q, 48 bytes big-endian - or why\n # *peer* is not a point of P-384 (checked before d is used), or why the\n # answer is no secret.\n def shared_secret(peer : Array(UInt8)) : Array(UInt8) | EcdsaError\n # The signature of *message* under *hash*: the DER of Ecdsa-Sig-Value,\n # SEQUENCE { r INTEGER, s INTEGER }, as X.509 and TLS 1.3 carry it. The\n # nonce is RFC 6979's, so the same key and message sign alike.\n def sign(hash : EcdsaHash, message : String | Array(UInt8)) : Array(UInt8)\n # The signature of a message whose digest under *hash* is *digest*, as\n # `sign` makes it - or why *digest* is not one of *hash*'s.\n def sign_digest(hash : EcdsaHash, digest : Array(UInt8)) : Array(UInt8) | EcdsaError\nend\n" + }, { "name": "std/password", "path": "src/std/password.iyi", @@ -418,13 +454,13 @@ { "name": "std/process", "path": "src/std/process.iyi", - "sourceSha256": "28cc11c3a78c92f7c2dc62fa229a826e3648ed69eac46b894343f4b68f57da05", + "sourceSha256": "afad6c79111206b02bfb15419101ae82c131cdabc51d6e268de0c20eb0e3da14", "surface": "module std/process\n\n# The child's standard input, as a pipe this program writes.\npub class ChildInput\n # Closes the pipe: the child reads the end of its input.\n def close : Nil\n def initialize(child : ProcessChild)\n # Writes all of *text*, parking while the pipe is full. A child that\n # closed its input, or ended, is `ChildInputClosed`; `close` has made it\n # so too.\n def write(text : String) : Nil | ChildInputClosed | Cancelled\nend\n\n# A write to a child that had closed its input - or ended.\npub struct ChildInputClosed\n def initialize(pid : Int64)\n def pid : Int64\nend\n\n# One of the child's output streams, as a pipe this program reads. Each\n# read parks until the child has written, or its end of the pipe closed.\npub class ChildOutput\n def initialize(child : ProcessChild, output : ::Bool)\n # What the child has written that this program has not read, up to\n # *max* bytes, once there is some: nil at the end.\n def read(max : Int32 = 65536) : String | ::Nil | Cancelled\n # Everything the child writes from here to its end.\n def read_all : String | Cancelled\n # The next line, without its `\\n` (and a `\\r` before it) unless *chomp*\n # is false; the last one need not end in one. nil at the end.\n def read_line(chomp : ::Bool = true) : String | ::Nil | Cancelled\nend\n\n# A child started by `Process.spawn`, running beside this program.\npub class ChildProcess\n # Whether the child has ended, without waiting; once it has, `status`\n # says how.\n def ended? : ::Bool\n def initialize(child : ProcessChild, input : ::Bool, output : ::Bool, error : ::Bool)\n # Ends the child: SIGKILL on Linux and darwin, and on Windows the child\n # and every program it started. Nothing once it has ended.\n def kill : Nil\n # The child's process id, which the operating system may give another\n # process once this one has ended and been waited for.\n def pid : Int64\n # Sends *number* to the child, Linux and darwin. Windows has no signals,\n # and a call there panics: `terminate` and `kill` are what it has.\n def signal(number : Int32) : Nil\n # How the child ended, once it has; nil while it runs.\n def status : ProcessStatus | ::Nil\n # The child's standard error, asked for as `Redirect::Pipe`.\n def stderr : ChildOutput\n # The child's standard input, asked for as `Redirect::Pipe`.\n def stdin : ChildInput\n # The child's standard output, asked for as `Redirect::Pipe`.\n def stdout : ChildOutput\n # Asks the child to stop: SIGTERM on Linux and darwin, which it may\n # handle. Windows has no request to stop a program, and ends it and what\n # it started, as `kill` does. Nothing once it has ended.\n def terminate : Nil\n # Parks until the child has ended and answers how; at once if it had.\n # Its input, if a pipe, is closed first: a child reading to the end of\n # its input would otherwise wait for this program while this program\n # waits for it.\n def wait : ProcessStatus | Cancelled\nend\n\npub struct Process\n # Replaces this program with *command*, and answers only if it could not:\n # a `ProcessError`, with this program as it was, in the directory it was.\n #\n # On Linux and darwin the process becomes the program - the same pid,\n # this program's three standard streams and none of its other\n # descriptors (on Linux from 5.11, which marks them for the exec) - and\n # nothing after the call runs. Windows cannot replace a program: there\n # the program runs on this program's streams, this program waits for it\n # and ends with its exit code, and a pid is not kept.\n #\n # *command*, *args*, *chdir* and *env* are `run`'s. What this program had\n # written to its own buffered streams is flushed first.\n def self.exec(command : String, args : Array(String) = [] of String, chdir : String | ::Nil = nil, env : Hash(String, String) | Hash(String, String | ::Nil) | Hash(String, Nil) | Nil = nil) : ProcessError\n # This program's own executable, as a path; nil where the platform will\n # not say.\n def self.executable : String | ::Nil\n def initialize\n # This program's own process id.\n def self.pid : Int64\n # Runs *command* with *args* and answers once it has ended.\n #\n # *command* is a path, or a name looked for on `PATH` (on Windows also as\n # `NAME.exe` and `NAME.com`; a `.bat` or `.cmd` is refused). Each of\n # *args* reaches the child as one argument, and no shell reads them.\n # *input* is written to the child's standard input, and without it the\n # child reads nothing. *chdir* is the directory it runs in. *env* changes\n # the child's environment alone: a name given a value is set, a name\n # given `nil` removed. With *capture* false the child writes to this\n # program's own streams and the result's texts are empty.\n #\n # Answers a `ProcessResult` for a child that ran, whatever its exit code;\n # a `ProcessError` when it could not be started; and `Cancelled`, after\n # the child is ended, when the task running this is cancelled. Nothing\n # blocks the thread: the other tasks run while the child does.\n def self.run(command : String, args : Array(String) = [] of String, input : String | ::Nil = nil, chdir : String | ::Nil = nil, capture : ::Bool = true, env : Hash(String, String) | Hash(String, String | ::Nil) | Hash(String, Nil) | Nil = nil) : ProcessResult | ProcessError | Cancelled\n # Starts *command* and answers at once with the running child, which\n # this program then talks to and waits for: `ChildProcess`.\n #\n # *command*, *args*, *chdir* and *env* are `run`'s. Each of *input*,\n # *output* and *error* is a `Redirect`: `Pipe` to write the child's input\n # or read its output through the handle, `Inherit` to share this\n # program's own stream (which is flushed first), `Null` for the null\n # device. All three are inherited unless asked.\n #\n # Answers a `ProcessError` when the child could not be started.\n #\n # The child runs until it ends or is ended; `wait` collects its end and\n # is what a program owes every child it starts. A pipe nobody reads fills\n # and stops the child that writes it, so read what is asked for as a\n # pipe - on two tasks at once for both output and errors - before or\n # while waiting. A task cancelled in any of the handle's calls ends the\n # child before it answers `Cancelled`, as `run` does: a task that stops\n # leaves no program running.\n def self.spawn(command : String, args : Array(String) = [] of String, input : Redirect = Redirect::Inherit, output : Redirect = Redirect::Inherit, error : Redirect = Redirect::Inherit, chdir : String | ::Nil = nil, env : Hash(String, String) | Hash(String, String | ::Nil) | Hash(String, Nil) | Nil = nil) : ChildProcess | ProcessError\nend\n\n# A program that could not be started, and the platform's error number for\n# why. `directory` is set when it was the directory it was to run in.\npub struct ProcessError\n def code : Int32\n def command : String\n def denied? : ::Bool\n def directory : String | ::Nil\n def initialize(command : String, code : Int32, directory : String | ::Nil = nil)\n # Nothing by that name: not on PATH, no such file, no such directory.\n def not_found? : ::Bool\n def reason : String\nend\n\n# What a program that ran came back with. `exit_code` is the child's own;\n# on Linux and darwin a child ended by a signal has `signal` set and the\n# exit code a shell would report for it, 128 plus the signal. On Windows\n# `signal` is always 0 and a crash is its exception code, `0xC0000005` for\n# an access violation, read as an Int32.\npub struct ProcessResult\n def exit_code : Int32\n def initialize(exit_code : Int32, signal : Int32, stdout : String, stderr : String)\n def signal : Int32\n def stderr : String\n def stdout : String\n def success? : ::Bool\nend\n\n# How a child ended: `exit_code`, and on Linux and darwin the `signal`\n# that ended it, as `ProcessResult` says them.\npub struct ProcessStatus\n def exit_code : Int32\n def initialize(exit_code : Int32, signal : Int32)\n def signal : Int32\n def success? : ::Bool\nend\n\n# How one of a spawned child's standard streams is connected.\npub enum Redirect : Int32\n Pipe = 0\n Inherit = 1\n Null = 2\nend\n\nimpl Error for ProcessError\n def message : String\nend\n\nimpl Error for ChildInputClosed\n def message : String\nend\n" }, { "name": "std/random", "path": "src/std/random.iyi", - "sourceSha256": "1ecf78ec9a7fd494377b691adbed94a855bba353e974cb333c65c917022c207c", + "sourceSha256": "63c494faac054e6f96737ebb73e0edcaeaba7222a07d15355db09ef154091f0c", "surface": "module std/random\n\npub class Random\n # The operating system's randomness, for anything a guess must not reach:\n # tokens, keys, nonces, query IDs. It is a `Random`, so `rand(n)`,\n # `rand(range)`, `hex` and every other draw take their values from it, and\n # `Random::Secure.rand(n)` answers without an instance. There is no state to\n # seed: each draw is a fresh request to the kernel (or libSystem, or the\n # Windows or WASI host), and nothing is held between draws, so a `fork`\n # cannot hand the child the parent's next value.\n class Secure < ::Std::Random::Random\n # *count* bytes at *buffer*, every one from the platform's entropy source,\n # or a panic that says why there are none: a byte that only looks random\n # is never the answer.\n def self.fill(buffer : Pointer(UInt8), count : Int32) : Nil\n # The generator fields a `Random` carries, which nothing here reads.\n def initialize\n def next_u : UInt32\n # The whole buffer in one request rather than four bytes at a time.\n def random_bytes(buffer : Array(UInt8)) : Nil\n end\n # *n* random bytes in base64 with `+` `/` and `=` padding, no line breaks.\n def base64(n : Int32 = 16) : String\n def self.base64(n : Int32 = 16) : String\n # *n* random bytes as two lowercase hex digits each.\n def hex(n : Int32 = 16) : String\n def self.hex(n : Int32 = 16) : String\n # The stream came from the seed, and one seed was one stream: the other\n # library takes the stream apart from the seed, zero unless asked, and\n # the same seed gave two different sequences in the two libraries.\n def initialize(seed : UInt64, sequence : UInt64 = 0_u64)\n # Any integer seed and sequence, as the other library takes them. There\n # were two overloads, an `Int32` and an `Int64` seed with a `UInt64`\n # sequence, beside this class's own `UInt64` pair: `Random.new(7, 3)`,\n # the form the comment above writes, cast its literals to all three and\n # was an ambiguous call, and a `UInt32` seed matched none of them. A\n # negative seed or sequence panics in the conversion, as it raises there.\n def self.new(seed : ::Int, sequence : ::Int = 0_u64) : Random\n def self.new : Random\n def next_bool : Bool\n def self.next_bool : Bool\n # 2^53 values, the high draw first: two 32-bit draws make the integer,\n # and it is divided by 2^53 - 1, so both ends can come out.\n def next_float : Float64\n def next_u : UInt32\n # The same draws without a generator in hand, from one seeded the first\n # time it is asked, as the other library's `Random.rand` draws from its\n # default. `Random::Secure.rand(...)` and the rest are these, answered by\n # the operating system instead.\n def self.next_u : UInt32\n def rand(n : Int32) : Int32\n def rand(n : UInt32) : UInt32\n def rand(n : Int64) : Int64\n def rand(n : UInt64) : UInt64\n # In `[0, x)`: 2^53 evenly spaced values, scaled. Not `rand * x`, which\n # divides by 2^53 - 1 and can answer *x* itself.\n def rand(x : Float64) : Float64\n # The span is taken as the unsigned difference, so a range across zero\n # does not overflow on the way. The whole of `Int32` is one draw read as\n # an `Int32`, as the other library reads it, rather than added to the\n # bottom of the range, which would answer the same value with its top\n # bit turned over.\n def rand(range : Range(Int32, Int32)) : Int32\n # As the `Int32` range: the whole of `Int64` is 2^64 values, one more than\n # a `UInt64` span can count, and is two draws, high first, read as one.\n def rand(range : Range(Int64, Int64)) : Int64\n # An end left out is the other library's choice too: `rand(x)` cannot\n # reach *x*, and an inclusive range scales `rand`, which can.\n def rand(range : Range(Float64, Float64)) : Float64\n def rand : Float64\n def self.rand(n : Int32) : Int32\n def self.rand(n : UInt32) : UInt32\n def self.rand(n : Int64) : Int64\n def self.rand(n : UInt64) : UInt64\n def self.rand(x : Float64) : Float64\n def self.rand(range : Range(Int32, Int32)) : Int32\n def self.rand(range : Range(Int64, Int64)) : Int64\n def self.rand(range : Range(Float64, Float64)) : Float64\n def self.rand : Float64\n # Four bytes a draw, low byte first, the last draw cut short: a seeded\n # generator fills a buffer with the other library's bytes.\n #\n # The bytes are an `Array(UInt8)`, as `UUID#bytes` and std/digest's\n # `hash_bytes` are, rather than the other library's `Bytes`: std/slice\n # reaches this module through std/indexable's `sample`, and an import\n # back would be a cycle.\n def random_bytes(buffer : Array(UInt8)) : Nil\n def random_bytes(n : Int32 = 16) : Array(UInt8)\n def self.random_bytes(buffer : Array(UInt8)) : Nil\n def self.random_bytes(n : Int32 = 16) : Array(UInt8)\n # The bytes as a String, which is how std/base64 takes them.\n protected def self.text_of(bytes : Array(UInt8)) : String\n # *n* random bytes in the URL-safe alphabet, `-` and `_`; unpadded unless\n # asked, as the other library answers it, since a token in a URL or a\n # file name has no use for the `=`.\n def urlsafe_base64(n : Int32 = 16, padding : Bool = false) : String\n def self.urlsafe_base64(n : Int32 = 16, padding : Bool = false) : String\nend\n\nclass ::Array(T)\n def sample(random : Std::Random::Random | ::Nil = nil) : T\n # *n* distinct elements. One is `sample` in a list; more are a reservoir\n # (each element past the first *n* replaces a slot with probability\n # n/(i+1)) shuffled at the end - both as the other library does it.\n def sample(n : Int32, random : Std::Random::Random | ::Nil = nil) : Array(T)\n def shuffle(random : Std::Random::Random | ::Nil = nil) : Array(T)\n # Fisher-Yates from the back, `rand(i + 1)` a step: the other library's\n # `shuffle!`, so a seeded generator puts the elements where it would.\n def shuffle_in_place(random : Std::Random::Random | ::Nil = nil) : Array(T)\nend\n\nstruct ::StaticArray(T, N)\n def initialize\n # `Array#shuffle_in_place` for the array that holds its elements inline:\n # the other library's `StaticArray#shuffle!`, the same draws in the same\n # order, so a seeded generator puts the elements where it would. Its\n # sample of noise does exactly this to a 256-entry permutation table.\n def shuffle_in_place(random : Std::Random::Random | ::Nil = nil) : self\nend\n" }, { @@ -436,21 +472,27 @@ { "name": "std/regex", "path": "src/std/regex.iyi", - "sourceSha256": "7b6cbf68745e7ffe3f780415f5442cc6c7db6dd621b87cdc0c1ecf3757d4ea92", - "surface": "module std/regex\n\npub struct Regex\n # One match: the text it was found in and where each group began and\n # ended, in bytes. A group that took no part in the match - the second\n # of `(a)|(b)` when `a` matched, `(x)?` when `x` did not - has no span,\n # and `[]?` answers nil for it.\n class MatchData\n # The text group *n* matched. A group the pattern does not have, or one\n # that took no part in this match, is a mistake the program made, and\n # it panics with the reason.\n def [](n : Int32) : String\n # The text the group called *name* matched; a name the pattern does not\n # have, or a group that took no part, panics with the reason.\n def [](name : String) : String\n # The text group *n* matched, or nil for a group that took no part or\n # that the pattern does not have.\n def []?(n : Int32) : String | ::Nil\n # The text the group called *name* matched, or nil for a group that\n # took no part or a name the pattern does not have.\n def []?(name : String) : String | ::Nil\n # Where group *n* begins, in characters, as the other library counts:\n # `\"クリスタル\".match(/リ(ス)/).begin(0)` is 1 where `byte_begin` is 3.\n def begin(n : Int32 = 0) : Int32\n # Where group *n* begins, in bytes: what `String#[]` and `index` count\n # in. A negative *n* counts from the last group.\n def byte_begin(n : Int32 = 0) : Int32\n # Where group *n* ends, in bytes.\n def byte_end(n : Int32 = 0) : Int32\n # What each unnamed group matched, in order, nil for one that took no\n # part; the named ones are `named_captures`, as in the other library.\n def captures : Array(String | ::Nil)\n # Where group *n* ends, in characters.\n def end(n : Int32 = 0) : Int32\n # *replacement* with its references filled from this match: `\\0` to\n # `\\9` are groups, `\\k` a named one, `\\\\` one backslash, and any\n # other `\\` is itself - how the other library reads the replacement\n # `String#sub` and `gsub` are given. A group that took no part is\n # empty; a name the pattern does not have panics.\n def expand(replacement : String) : String\n # How many capture groups the pattern has, the whole match not counted.\n def group_size : Int32\n def initialize(regex : Regex, string : String, slots : Array(Int32))\n # `Regex::MatchData(\"ab\" 1:\"a\" name:\"b\")`, as the other library writes it.\n def inspect : String\n # What each named group matched, nil for one that took no part.\n def named_captures : Hash(String, String | ::Nil)\n # The text after the match.\n def post_match : String\n # The text before the match.\n def pre_match : String\n # The pattern that matched.\n def regex : Regex\n # How many groups there are, the whole match counted: `(a)(b)` is 3.\n def size : Int32\n # The text the match was found in.\n def string : String\n # Every group, the whole match first.\n def to_a : Array(String | ::Nil)\n # The text the whole pattern matched.\n def to_s : String\n end\n # The flags a whole pattern is compiled with, combined with `|`. The\n # numbers are the other library's, which is what lets a literal's flags\n # (`/a/i`, `/a/mx`) reach this type unchanged.\n enum Options : Int32\n IGNORE_CASE = 1\n MULTILINE = 6\n DOTALL = 2\n MULTILINE_ONLY = 4\n EXTENDED = 8\n end\n # The same pattern with the same flags.\n def ==(other : Regex) : Bool\n # Whether the pattern occurs anywhere in *text*: what `case text when\n # /x/` asks.\n def ===(text : String) : Bool\n # Where the first match begins, in bytes, or nil. It sets nothing: the\n # other library's `=~` also fills `$~`, which iyi does not have, and a\n # program that wants the groups asks `match`.\n def =~(text : String) : Int32 | ::Nil\n # Where the first match at or after byte *offset* begins, in bytes, as\n # `String#byte_index` answers for a string.\n def byte_index(text : String, offset : Int32 = 0) : Int32 | ::Nil\n # How many capture groups the pattern has.\n def capture_count : Int32\n # The machine is compiled first either way: it is what refuses a pattern\n # this engine does not take, and the fast paths only ever see one it did.\n # They read the pattern's text as written, so a pattern with flags, which\n # change what that text means, is the machine's alone. So is one holding\n # U+FFFD: the machine reads a byte that begins no character as that\n # character, and comparing bytes would find only its three-byte spelling.\n def self.compile(pattern : String, options : Options = Options::None) : Regex\n # Every non-overlapping match with its groups, leftmost first, as `scan`\n # finds them.\n def each_match(text : String, & : (MatchData -> Nil)) : Nil\n # *text* with every character a pattern would read as an operator\n # escaped, so `Regex.compile(Regex.escape(text))` matches *text* and\n # nothing else - with `x` too, whose whitespace and `#` are escaped.\n def self.escape(text : String) : String\n def find(text : String) : String | ::Nil\n # The number of the group called *name*, or nil.\n def group_index(name : String) : Int32 | ::Nil\n # The name of group *n*, or nil for an unnamed group or one the pattern\n # does not have.\n def group_name(n : Int32) : String | ::Nil\n def initialize(nfa : RxNfa, literal : String | ::Nil, runs : RxRuns | ::Nil, source : String, options : Options, names : Array(String | ::Nil))\n # The pattern as a literal would write it, `/a\\/b/ix`.\n def inspect : String\n # The first match at or after byte *pos*, with its groups; a negative\n # *pos* counts from the end. `^` and `\\A` still mean the start of the\n # text, not *pos*.\n def match(text : String, pos : Int32 = 0) : MatchData | ::Nil\n # Whether the pattern spans the whole of *text*. The other library's\n # `match?` asks whether it occurs anywhere, which is `===` and\n # `String#matches?` here.\n def match?(text : String) : Bool\n # The match that begins exactly at byte *pos*, with its groups, or nil:\n # the other library's `match_at_byte_index` with `MatchOptions::ANCHORED`,\n # Python's `pattern.match(text, pos)`, what a scanner asks at its\n # offset. As there, the text before *pos* is still the text: `^` and\n # `\\A` mean its start, not *pos*, and `\\b` sees the byte before *pos*.\n # A negative *pos* counts from the end, as `match`'s does.\n def match_at(text : String, pos : Int32) : MatchData | ::Nil\n # Each named group's number and name.\n def name_table : Hash(Int32, String)\n # The other library's name for `compile`.\n def self.new(pattern : String, options : Options = Options::None) : Regex\n # The flags the pattern was compiled with; inline ones are the\n # pattern's own text and are not here.\n def options : Options\n # Every match replaced, into one buffer: `out = out + ...` copied all of\n # the text so far at each match, and eleven substitutions over a 60 MB\n # sequence with a million matches each did not finish. The replacement\n # is taken as written; `String#gsub` is the one that reads `\\1` in it.\n def replace(text : String, replacement : String) : String\n # Every match replaced by what the block answers for it — the per-match\n # substitution (`gsub(pattern, hash)` in the other library) that a fixed\n # replacement cannot say.\n def replace(text : String, & : (String -> String)) : String\n def scan(text : String) : Array(String)\n # The pattern as written, the other library's `Regex#source`: what a\n # literal was compiled from, for a program that prints its patterns.\n def source : String\n def split(text : String) : Array(String)\n # The pattern with its flags inside it, `(?i-msx:a+)`, which compiles to\n # a pattern that matches as this one does: what `union` joins.\n def to_s : String\n # One pattern matching any of *patterns*: a string as its own text, a\n # `Regex` with its flags kept to itself (`(?i-msx:...)`, its `to_s`).\n # The groups of every pattern after the first are numbered after the\n # groups before them.\n def self.union(patterns : Array(T)) : Regex forall T\n def self.union(*patterns : String | Regex) : Regex\nend\n\nclass ::String\n def =~(pattern : Std::Regex::Regex) : Int32 | ::Nil\n def gsub(pattern : Std::Regex::Regex, replacement : String) : String\n def gsub(pattern : Std::Regex::Regex, & : (String, Std::Regex::Regex::MatchData -> String)) : String\n # Each match replaced by its entry in *table*; a match the table has no\n # entry for is dropped, as the other library drops it.\n def gsub(pattern : Std::Regex::Regex, table : Hash(String, String)) : String\n def index(pattern : Std::Regex::Regex, offset : Int32 = 0) : Int32 | ::Nil\n def match(pattern : Std::Regex::Regex, pos : Int32 = 0) : Std::Regex::Regex::MatchData | ::Nil\n def matches?(pattern : Std::Regex::Regex) : Bool\n def scan(pattern : Std::Regex::Regex) : Array(Std::Regex::Regex::MatchData)\n def scan(pattern : Std::Regex::Regex, & : (Std::Regex::Regex::MatchData -> Nil)) : String\n def sub(pattern : Std::Regex::Regex, replacement : String) : String\n def sub(pattern : Std::Regex::Regex, & : (String, Std::Regex::Regex::MatchData -> String)) : String\nend\n" + "sourceSha256": "a606bf1b00791cd897309faf04248074e1efafa47f1c7cb5e72538e2321fed35", + "surface": "module std/regex\n\npub struct Regex\n # One match: the text it was found in and where each group began and\n # ended, in bytes. A group that took no part in the match - the second\n # of `(a)|(b)` when `a` matched, `(x)?` when `x` did not - has no span,\n # and `[]?` answers nil for it.\n class MatchData\n # The text group *n* matched. A group the pattern does not have, or one\n # that took no part in this match, is a mistake the program made, and\n # it panics with the reason.\n def [](n : Int32) : String\n # The text the group called *name* matched; a name the pattern does not\n # have, or a group that took no part, panics with the reason.\n def [](name : String) : String\n # The text group *n* matched, or nil for a group that took no part or\n # that the pattern does not have.\n def []?(n : Int32) : String | ::Nil\n # The text the group called *name* matched, or nil for a group that\n # took no part or a name the pattern does not have.\n def []?(name : String) : String | ::Nil\n # Where group *n* begins, in characters, as the other library counts:\n # `\"クリスタル\".match(/リ(ス)/).begin(0)` is 1 where `byte_begin` is 3.\n def begin(n : Int32 = 0) : Int32\n # Where group *n* begins, in bytes: what `String#[]` and `index` count\n # in. A negative *n* counts from the last group.\n def byte_begin(n : Int32 = 0) : Int32\n # Where group *n* ends, in bytes.\n def byte_end(n : Int32 = 0) : Int32\n # What each unnamed group matched, in order, nil for one that took no\n # part; the named ones are `named_captures`, as in the other library.\n def captures : Array(String | ::Nil)\n # Where group *n* ends, in characters.\n def end(n : Int32 = 0) : Int32\n # *replacement* with its references filled from this match: `\\0` to\n # `\\9` are groups, `\\k` a named one, `\\\\` one backslash, and any\n # other `\\` is itself - how the other library reads the replacement\n # `String#sub` and `gsub` are given. A group that took no part is\n # empty; a name the pattern does not have panics.\n def expand(replacement : String) : String\n # How many capture groups the pattern has, the whole match not counted.\n def group_size : Int32\n def initialize(regex : Regex, string : String, slots : Array(Int32))\n # `Regex::MatchData(\"ab\" 1:\"a\" name:\"b\")`, as the other library writes it.\n def inspect : String\n # What each named group matched, nil for one that took no part.\n def named_captures : Hash(String, String | ::Nil)\n # The text after the match.\n def post_match : String\n # The text before the match.\n def pre_match : String\n # The pattern that matched.\n def regex : Regex\n # How many groups there are, the whole match counted: `(a)(b)` is 3.\n def size : Int32\n # The text the match was found in.\n def string : String\n # Every group, the whole match first.\n def to_a : Array(String | ::Nil)\n # The text the whole pattern matched.\n def to_s : String\n end\n # The flags a whole pattern is compiled with, combined with `|`. The\n # numbers are the other library's, which is what lets a literal's flags\n # (`/a/i`, `/a/mx`) reach this type unchanged.\n enum Options : Int32\n IGNORE_CASE = 1\n MULTILINE = 6\n DOTALL = 2\n MULTILINE_ONLY = 4\n EXTENDED = 8\n end\n # The same pattern with the same flags.\n def ==(other : Regex) : Bool\n # Whether the pattern occurs anywhere in *text*: what `case text when\n # /x/` asks.\n def ===(text : String) : Bool\n # Where the first match begins, in bytes, or nil. It sets nothing: the\n # other library's `=~` also fills `$~`, which iyi does not have, and a\n # program that wants the groups asks `match`.\n def =~(text : String) : Int32 | ::Nil\n # Where the first match at or after byte *offset* begins, in bytes, as\n # `String#byte_index` answers for a string.\n def byte_index(text : String, offset : Int32 = 0) : Int32 | ::Nil\n # How many capture groups the pattern has.\n def capture_count : Int32\n # The machine is compiled first either way: it is what refuses a pattern\n # this engine does not take, and the fast paths only ever see one it did.\n # They read the pattern's text as written, so a pattern with flags, which\n # change what that text means, is the machine's alone. So is one holding\n # U+FFFD: the machine reads a byte that begins no character as that\n # character, and comparing bytes would find only its three-byte spelling.\n def self.compile(pattern : String, options : Options = Options::None) : Regex\n # Every non-overlapping match with its groups, leftmost first, as `scan`\n # finds them.\n def each_match(text : String, & : (MatchData -> Nil)) : Nil\n # *text* with every character a pattern would read as an operator\n # escaped, so `Regex.compile(Regex.escape(text))` matches *text* and\n # nothing else - with `x` too, whose whitespace and `#` are escaped.\n def self.escape(text : String) : String\n def find(text : String) : String | ::Nil\n # The number of the group called *name*, or nil.\n def group_index(name : String) : Int32 | ::Nil\n # The name of group *n*, or nil for an unnamed group or one the pattern\n # does not have.\n def group_name(n : Int32) : String | ::Nil\n def initialize(nfa : RxNfa, literal : String | ::Nil, runs : RxRuns | ::Nil, source : String, options : Options, names : List(String | ::Nil))\n # The pattern as a literal would write it, `/a\\/b/ix`.\n def inspect : String\n # The first match at or after byte *pos*, with its groups; a negative\n # *pos* counts from the end. `^` and `\\A` still mean the start of the\n # text, not *pos*.\n def match(text : String, pos : Int32 = 0) : MatchData | ::Nil\n # Whether the pattern spans the whole of *text*. The other library's\n # `match?` asks whether it occurs anywhere, which is `===` and\n # `String#matches?` here.\n def match?(text : String) : Bool\n # The match that begins exactly at byte *pos*, with its groups, or nil:\n # the other library's `match_at_byte_index` with `MatchOptions::ANCHORED`,\n # Python's `pattern.match(text, pos)`, what a scanner asks at its\n # offset. As there, the text before *pos* is still the text: `^` and\n # `\\A` mean its start, not *pos*, and `\\b` sees the byte before *pos*.\n # A negative *pos* counts from the end, as `match`'s does.\n def match_at(text : String, pos : Int32) : MatchData | ::Nil\n # Each named group's number and name.\n def name_table : Hash(Int32, String)\n # The other library's name for `compile`.\n def self.new(pattern : String, options : Options = Options::None) : Regex\n # The flags the pattern was compiled with; inline ones are the\n # pattern's own text and are not here.\n def options : Options\n # Every match replaced, into one buffer: `out = out + ...` copied all of\n # the text so far at each match, and eleven substitutions over a 60 MB\n # sequence with a million matches each did not finish. The replacement\n # is taken as written; `String#gsub` is the one that reads `\\1` in it.\n def replace(text : String, replacement : String) : String\n # Every match replaced by what the block answers for it — the per-match\n # substitution (`gsub(pattern, hash)` in the other library) that a fixed\n # replacement cannot say.\n def replace(text : String, & : (String -> String)) : String\n def scan(text : String) : Array(String)\n # The pattern as written, the other library's `Regex#source`: what a\n # literal was compiled from, for a program that prints its patterns.\n def source : String\n def split(text : String) : Array(String)\n # The pattern with its flags inside it, `(?i-msx:a+)`, which compiles to\n # a pattern that matches as this one does: what `union` joins.\n def to_s : String\n # One pattern matching any of *patterns*: a string as its own text, a\n # `Regex` with its flags kept to itself (`(?i-msx:...)`, its `to_s`).\n # The groups of every pattern after the first are numbered after the\n # groups before them.\n def self.union(patterns : Array(T)) : Regex forall T\n def self.union(*patterns : String | Regex) : Regex\nend\n\nclass ::String\n def =~(pattern : Std::Regex::Regex) : Int32 | ::Nil\n def gsub(pattern : Std::Regex::Regex, replacement : String) : String\n def gsub(pattern : Std::Regex::Regex, & : (String, Std::Regex::Regex::MatchData -> String)) : String\n # Each match replaced by its entry in *table*; a match the table has no\n # entry for is dropped, as the other library drops it.\n def gsub(pattern : Std::Regex::Regex, table : Hash(String, String)) : String\n def index(pattern : Std::Regex::Regex, offset : Int32 = 0) : Int32 | ::Nil\n def match(pattern : Std::Regex::Regex, pos : Int32 = 0) : Std::Regex::Regex::MatchData | ::Nil\n def matches?(pattern : Std::Regex::Regex) : Bool\n def scan(pattern : Std::Regex::Regex) : Array(Std::Regex::Regex::MatchData)\n def scan(pattern : Std::Regex::Regex, & : (Std::Regex::Regex::MatchData -> Nil)) : String\n def sub(pattern : Std::Regex::Regex, replacement : String) : String\n def sub(pattern : Std::Regex::Regex, & : (String, Std::Regex::Regex::MatchData -> String)) : String\nend\n" }, { "name": "std/router", "path": "src/std/router.iyi", - "sourceSha256": "08330b79870a18dae9c55fd346f503d801db1b9adcaa243cfd081a9b7ea1db16", - "surface": "module std/router\n\n# A route's pattern, `[METHOD ][HOST]/[PATH]`, parsed: what `Router#handle`\n# registers. `match` reads a request path's wildcards; `relation` and\n# `conflict` are the comparisons that decide precedence and refuse two\n# patterns neither of which is more specific.\npub class Pattern\n # Two relations of parts (methods, then each segment) as the relation\n # of the whole: a superset in one part and a subset in another is\n # neither, an overlap.\n def self.combine(first : Int32, second : Int32) : Int32\n # The sentence refusing this pattern beside *other*, nil when the two\n # can be registered together: when they have the same host and match\n # the same requests, or some requests in common with neither more\n # specific. It names both and a request both match.\n def conflict(other : Pattern) : String | ::Nil\n # Whether this pattern matched *pieces* without its trailing wildcard\n # taking anything: `/x/` on `/x/`, not on `/x/y`. What decides whether\n # `/x` is redirected to `/x/`.\n def exact?(pieces : Array(String)) : Bool\n def host : String\n # A wildcard's name: an ASCII letter or `_`, then letters, digits, `_`.\n def self.identifier?(name : String) : Bool\n def initialize(text : String, method : String, host : String, kinds : Array(Int32), names : Array(String))\n protected def kinds : Array(Int32)\n # The wildcards' values when *path* - a request path, rooted and clean,\n # still percent-encoded - matches this pattern's path; nil when it does\n # not. The method and host are not looked at.\n def match(path : String) : Hash(String, String) | ::Nil\n # `match` on a path already cut into `pieces`.\n def match_pieces(pieces : Array(String)) : Hash(String, String) | ::Nil\n # Whether a request of *method* is one this pattern's method takes.\n def matches_method?(method : String) : Bool\n def method : String\n # Whether this pattern matches a strict subset of *other*'s requests,\n # methods and paths together; hosts are not compared.\n def more_specific?(other : Pattern) : Bool\n protected def names : Array(String)\n # *text* read as a pattern, or why it is not one: an invalid method, no\n # `/` to start the path, a `{` in the host, a path a request's cleaned\n # path never equals (`//`, `.`, `..`), a wildcard that is not a whole\n # segment, `{$}` or `{name...}` before the end, a name that is not an\n # identifier or is used twice, a malformed percent escape.\n def self.parse(text : String) : Pattern | RouterError\n # *path*'s segments after its first `/`, each percent-decoded: `/` is\n # one empty piece, and a trailing slash is a last empty one. Nil for a\n # path that is not rooted or holds a malformed escape. Decoded a segment\n # at a time, so `%2F` is inside a segment, never between two.\n def self.pieces(path : String) : Array(String) | ::Nil\n # How this pattern's requests relate to *other*'s, methods and paths\n # together: `EQUIVALENT`, `MORE_GENERAL`, `MORE_SPECIFIC`, `DISJOINT` or\n # `OVERLAPS`.\n def relation(other : Pattern) : Int32\n # The pattern as it was written.\n def to_s : String\nend\n\n# Requests sent to handlers by pattern, Go 1.22's `ServeMux`:\n#\n# router = Router.new\n# router.handle(\"GET /users/{id}\") { |req, params| Response.new(200, params[\"id\"]) }\n# router.handle(\"/static/\") { |req, params| FileServer.serve(root, req) }\n# Server.serve(listener) { |req| router.call(req) }\n#\n# `handle` panics on a pattern that is not one, on one that conflicts with\n# a pattern already registered, and after the router has answered a\n# request. `call` answers with the most specific pattern's handler, or a\n# 301 (to the cleaned path, or to a subtree's `/`), a 405 with `Allow`, a\n# 400 for a malformed escape, a 404.\npub class Router\n # The answer to *req*: its handler's, or the router's own 301, 400, 404\n # or 405.\n def call(req : Request) : Response\n # *path* - rooted - with `.` and empty segments dropped and `..` taking\n # the one before it off, its trailing slash kept: Go's `cleanPath`.\n def self.clean(path : String) : String\n # Sends the requests *pattern* matches to the block, with the request\n # and the wildcards' values by name.\n def handle(pattern : String, &handler : (Request, Hash(String, String) -> Response)) : Nil\n # A `Host` value without its port, as Go's `stripHostPort` has it: an\n # IPv6 address in brackets loses the brackets with the port.\n def self.host_of(value : String) : String\n def initialize\n # The patterns registered, in the order they were.\n def patterns : Array(Pattern)\n def self.plain(status : Int32, text : String) : Response\n def self.redirect(path : String, query : String | ::Nil) : Response\nend\n\n# Why a pattern is refused: `Pattern.parse`'s answer for text that is not\n# a pattern. `Router#handle` panics with its `message`.\npub struct RouterError\n def initialize(reason : String)\n def reason : String\n def to_s : String\nend\n\nimpl Error for RouterError\n def message : String\nend\n" + "sourceSha256": "46616dc94ec6b99be5edc5ff896bba1aec8f66faaa5c65587d76d9fec69c9647", + "surface": "module std/router\n\n# A route's pattern, `[METHOD ][HOST]/[PATH]`, parsed: what `Router#handle`\n# registers. `match` reads a request path's wildcards; `relation` and\n# `conflict` are the comparisons that decide precedence and refuse two\n# patterns neither of which is more specific.\npub class Pattern\n # Two relations of parts (methods, then each segment) as the relation\n # of the whole: a superset in one part and a subset in another is\n # neither, an overlap.\n def self.combine(first : Int32, second : Int32) : Int32\n # The sentence refusing this pattern beside *other*, nil when the two\n # can be registered together: when they have the same host and match\n # the same requests, or some requests in common with neither more\n # specific. It names both and a request both match.\n def conflict(other : Pattern) : String | ::Nil\n # Whether this pattern matched *pieces* without its trailing wildcard\n # taking anything: `/x/` on `/x/`, not on `/x/y`. What decides whether\n # `/x` is redirected to `/x/`.\n def exact?(pieces : Array(String)) : Bool\n def host : String\n # A wildcard's name: an ASCII letter or `_`, then letters, digits, `_`.\n def self.identifier?(name : String) : Bool\n def initialize(text : String, method : String, host : String, kinds : Array(Int32), names : Array(String))\n protected def kinds : List(Int32)\n # The wildcards' values when *path* - a request path, rooted and clean,\n # still percent-encoded - matches this pattern's path; nil when it does\n # not. The method and host are not looked at.\n def match(path : String) : Hash(String, String) | ::Nil\n # `match` on a path already cut into `pieces`.\n def match_pieces(pieces : Array(String)) : Hash(String, String) | ::Nil\n # Whether a request of *method* is one this pattern's method takes.\n def matches_method?(method : String) : Bool\n def method : String\n # Whether this pattern matches a strict subset of *other*'s requests,\n # methods and paths together; hosts are not compared.\n def more_specific?(other : Pattern) : Bool\n protected def names : List(String)\n # *text* read as a pattern, or why it is not one: an invalid method, no\n # `/` to start the path, a `{` in the host, a path a request's cleaned\n # path never equals (`//`, `.`, `..`), a wildcard that is not a whole\n # segment, `{$}` or `{name...}` before the end, a name that is not an\n # identifier or is used twice, a malformed percent escape.\n def self.parse(text : String) : Pattern | RouterError\n # *path*'s segments after its first `/`, each percent-decoded: `/` is\n # one empty piece, and a trailing slash is a last empty one. Nil for a\n # path that is not rooted or holds a malformed escape. Decoded a segment\n # at a time, so `%2F` is inside a segment, never between two.\n def self.pieces(path : String) : Array(String) | ::Nil\n # How this pattern's requests relate to *other*'s, methods and paths\n # together: `EQUIVALENT`, `MORE_GENERAL`, `MORE_SPECIFIC`, `DISJOINT` or\n # `OVERLAPS`.\n def relation(other : Pattern) : Int32\n # The pattern as it was written.\n def to_s : String\nend\n\n# Requests sent to handlers by pattern, Go 1.22's `ServeMux`:\n#\n# router = Router.new\n# router.handle(\"GET /users/{id}\") { |req, params| Response.new(200, params[\"id\"]) }\n# router.handle(\"/static/\") { |req, params| FileServer.serve(root, req) }\n# Server.serve(listener, router, workers: 1)\n#\n# A `Router` is written as it is set up and holds procs nobody checked,\n# so it is not `Share`: it is served on one thread (`workers: 1`), as the\n# handler or from a block that calls it, and refused at the argument on\n# more than one worker; `SharedRouter` below routes on every worker.\n#\n# `handle` panics on a pattern that is not one, on one that conflicts with\n# a pattern already registered, and after the router has answered a\n# request. `call` answers with the most specific pattern's handler, or a\n# 307 (to the cleaned path, or to a subtree's `/`), a 405 with `Allow`, a\n# 400 for a malformed escape, a 404.\npub class Router\n # The answer to *req*: its handler's, or the router's own 307, 400, 404\n # or 405.\n def call(req : Request) : Response\n # *path* - rooted - with `.` and empty segments dropped and `..` taking\n # the one before it off, its trailing slash kept: Go's `cleanPath`.\n def self.clean(path : String) : String\n # Sends the requests *pattern* matches to the block, with the request\n # and the wildcards' values by name.\n def handle(pattern : String, &handler : (Request, Hash(String, String) -> Response)) : Nil\n # A `Host` value without its port, as Go's `stripHostPort` has it: an\n # IPv6 address in brackets loses the brackets with the port.\n def self.host_of(value : String) : String\n def initialize\n # *pattern* parsed, panicking on text that is not a pattern and on one\n # that conflicts with one of *known*: what `handle` registers, here and\n # in `SharedRouter`.\n def self.parse_against(pattern : String, known : P) : Pattern forall P\n # The patterns registered, in the order they were.\n def patterns : Array(Pattern)\n def self.plain(status : Int32, text : String) : Response\n def self.redirect(path : String, query : String | ::Nil) : Response\n # Which of *patterns* - a `Router`'s or a `SharedRouter`'s - takes *req*:\n # its index and the wildcards' values, or the router's own 307, 400, 404\n # or 405.\n def self.route(patterns : P, req : Request) : ::Tuple(Int32, Hash(String, String)) | Response forall P\nend\n\n# Why a pattern is refused: `Pattern.parse`'s answer for text that is not\n# a pattern. `Router#handle` panics with its `message`.\npub struct RouterError\n def initialize(reason : String)\n def reason : String\n def to_s : String\nend\n\n# `Router`'s table for `Server.serve` on every worker, which route at\n# once (SPEC.md III.4.13):\n#\n# routes = SharedRouter.new\n# .handle(\"GET /users/{id}\") { |req, params| Response.new(200, params[\"id\"]) }\n# .handle(\"/static/\") { |req, params| FileServer.serve(root, req) }\n# Server.serve(listener, routes)\n#\n# The same patterns, precedence, conflicts and answers as `Router`'s, by\n# the same code (`Router.route`). What differs is what a handler may\n# capture: `handle` is `@[Share]`, so each block is checked where it is\n# written as a parallel task's is - every value it captures `Share`, a\n# pool behind a `Mutex`, a count in an `Atomic` - and kept as a\n# `SharedProc`. A `Router` holds procs nobody checked, so `Server.serve`\n# takes one under `workers: 1` alone. A `SharedRouter` is never written:\n# `handle` answers a new router with the route added, so the one being\n# served is the table it was when the server was given it, with no\n# `handle` after the first request to refuse.\npub class SharedRouter\n # The answer to *req*: its handler's, or the router's own 307, 400, 404\n # or 405.\n def call(req : Request) : Response\n # This router with the requests *pattern* matches sent to the block,\n # with the request and the wildcards' values by name. Panics as\n # `Router#handle` does on a pattern that is not one or that conflicts.\n def handle(pattern : String, &handler : (Request, Hash(String, String) -> Response)) : SharedRouter\n def initialize(patterns : List(Pattern) = List(Pattern).new([] of Pattern), handlers : List(SharedProc(::Tuple(Request, Hash(String, String)), Response)) = List(SharedProc(::Tuple(Request, Hash(String, String)), Response)).new([] of SharedProc(::Tuple(Request, Hash(String, String)), Response)))\n # The patterns registered, in the order they were.\n def patterns : Array(Pattern)\nend\n\nimpl Error for RouterError\n def message : String\nend\n" }, { "name": "std/rsa", "path": "src/std/rsa.iyi", - "sourceSha256": "bdfe4106b5fdda512740f693a6ff1d10748670ddb62c0285029f89f830aaddd8", + "sourceSha256": "25ebe39e70765207e03dfb418ac251c7d7f3ecd0f3d419baf428add7cbc354bd", "surface": "module std/rsa\n\n# What reading a key answers for bytes that are not an RSA key.\npub struct RsaError\n def initialize(message : String)\n def to_s : String\nend\n\n# The hashes a signature is made over.\npub enum RsaHash : Int32\n SHA1 = 0\n SHA256 = 1\n SHA384 = 2\n SHA512 = 3\n def digest(data : Array(UInt8)) : Array(UInt8)\n # The DER of a DigestInfo up to the digest itself (RFC 8017 section 9.2,\n # note 1): the algorithm's OID with NULL parameters, then the OCTET\n # STRING's header.\n def digest_info_prefix : Array(UInt8)\n def size : Int32\nend\n\n# An RSA private key with its CRT parameters (RFC 8017 section 3.2, the\n# first representation and the second together), which signs.\npub struct RsaPrivateKey\n # The modulus's length in bits, and in bytes: a signature's length.\n def bits : Int32\n # The one key in a PEM text: an `RSA PRIVATE KEY` block (PKCS #1) or a\n # `PRIVATE KEY` block (PKCS #8).\n def self.from_pem(text : String) : RsaPrivateKey | RsaError\n # An RSAPrivateKey (appendix A.1.2) of two primes: version 0 and the\n # eight numbers.\n def self.from_pkcs1(der : Array(UInt8)) : RsaPrivateKey | RsaError\n # A PKCS #8 PrivateKeyInfo or OneAsymmetricKey (RFC 5958) naming\n # rsaEncryption, its privateKey an RSAPrivateKey. Attributes are passed\n # over; a public key, which version 1 may carry, must be the key's own.\n def self.from_pkcs8(der : Array(UInt8)) : RsaPrivateKey | RsaError\n def initialize(public_key : RsaPublicKey, p : BigInt, q : BigInt, dp : BigInt, dq : BigInt, qi : BigInt, prf : Array(UInt8))\n # The key from its eight numbers, each big-endian - n, e, d, p, q, dp,\n # dq, qi - or why they are not one.\n def self.new(modulus : Array(UInt8), exponent : Array(UInt8), d : Array(UInt8), p : Array(UInt8), q : Array(UInt8), dp : Array(UInt8), dq : Array(UInt8), qi : Array(UInt8)) : RsaPrivateKey | RsaError\n def public_key : RsaPublicKey\n # RSASSA-PKCS1-v1_5 (section 8.2.1) of *message* under *hash*: 0x00\n # 0x01, the 0xFF padding, 0x00, the hash's DigestInfo and the digest.\n def sign_pkcs1v15(hash : RsaHash, message : Array(UInt8) | String) : Array(UInt8)\n # RSASSA-PSS (section 8.1.1) of *message* under *hash*, MGF1 over the\n # same hash: EMSA-PSS-ENCODE (section 9.1.1) with a salt as long as the\n # digest, drawn as the module's header says.\n def sign_pss(hash : RsaHash, message : Array(UInt8) | String) : Array(UInt8)\n def size : Int32\nend\n\npub struct RsaPublicKey\n # The modulus's length in bits, and in bytes: a signature's length.\n def bits : Int32\n def exponent : BigInt\n # An RSAPublicKey (RFC 8017 appendix A.1.1): SEQUENCE { modulus, exponent }.\n def self.from_pkcs1(der : Array(UInt8)) : RsaPublicKey | RsaError\n # A SubjectPublicKeyInfo (RFC 5280 section 4.1.2.7) naming rsaEncryption.\n def self.from_spki(der : Array(UInt8)) : RsaPublicKey | RsaError\n def self.from_spki(value : DerValue) : RsaPublicKey | RsaError\n def initialize(modulus : BigInt, exponent : BigInt, bits : Int32)\n def modulus : BigInt\n # The key from a modulus and an exponent, each big-endian.\n def self.new(modulus : Array(UInt8), exponent : Array(UInt8)) : RsaPublicKey | RsaError\n def size : Int32\n # Whether *signature* is the PKCS #1 v1.5 signature (RSASSA-PKCS1-v1_5,\n # section 8.2.2) of *message* under *hash*.\n def verify_pkcs1v15(hash : RsaHash, message : Array(UInt8) | String, signature : Array(UInt8)) : Bool\n # Whether *signature* is an RSASSA-PSS signature (section 8.1.2) of\n # *message* under *hash*, MGF1 over the same hash, with a salt of\n # *salt_length* bytes (the digest's length when nil).\n def verify_pss(hash : RsaHash, message : Array(UInt8) | String, signature : Array(UInt8), salt_length : Int32 | ::Nil = nil) : Bool\nend\n\nimpl Error for RsaError\n def message : String\nend\n" }, + { + "name": "std/secure_dns", + "path": "src/std/secure_dns.iyi", + "sourceSha256": "2ec99a10b574c9ffc740e71924e0db2bf74a7e3c884b2f69ca400f132d1acccf", + "surface": "module std/secure_dns\n\n# DNS over HTTPS to one URL: see the module's header.\npub class DnsOverHttps\n # The message a response carries: a 200 of `application/dns-message`\n # (parameters after it allowed, the type in any case) of at most\n # `MAX_ANSWER` bytes. RFC 8484 4.2.1 calls any 2xx a success, but no\n # other 2xx carries an answer to a query: 204 has no body and 206 a part\n # of one.\n def self.answer(response : Response, label : String) : Bytes | DnsError | Cancelled\n # RFC 8484 4.1's `dns` parameter: base64url (RFC 4648 5) \"with padding\n # characters removed\".\n def self.base64url(message : String) : String\n def close : Nil\n # Connections the HTTP client has opened, and requests sent over one it\n # kept.\n def connections_made : Int32\n def connections_reused : Int32\n def exchange(queries : Array(Bytes), timeout_ms : Int32) : Array(Bytes) | DnsError | Cancelled\n # *url* is `https://`: an `http://` upstream would be plaintext with\n # extra steps, and is refused. *address*, when given, is where the URL's\n # host is, and nothing is asked to find it. *config* holds the roots the\n # server must chain to and the ALPN offered: by default the system's\n # roots, and `h2` before `http/1.1`.\n def initialize(url : String, address : String | ::Nil = nil, config : TlsConfig | ::Nil = nil, method : String = \"POST\")\n def label : String\n # \"POST\" or \"GET\".\n def method : String\n def url : String\n def zero_id? : Bool\nend\n\n# DNS over TLS to one server: see the module's header.\npub class DnsOverTls\n # The address connected to, IPv4 or IPv6.\n def address : String\n def close : Nil\n def config : TlsConfig\n # Connections this upstream has opened: what a program reads to see its\n # connection kept.\n def connections_made : Int32\n def exchange(queries : Array(Bytes), timeout_ms : Int32) : Array(Bytes) | DnsError | Cancelled\n def idle_ms : Int32\n # *name* is what the server's certificate is checked for and *address*\n # where it is; *config* holds the roots it must chain to (the system's\n # by default) and the versions spoken. A name that is not a host name,\n # or an address that is not one, is the program's mistake and refused\n # here.\n def initialize(name : String, address : String, port : Int32 = PORT, config : TlsConfig | ::Nil = nil, idle_ms : Int32 = IDLE_MS)\n def label : String\n # The authentication domain name: what the certificate must carry.\n def name : String\n def port : Int32\n def zero_id? : Bool\nend\n\nimpl Std::Socket::DnsUpstream for DnsOverTls\nend\n\nimpl Std::Socket::DnsUpstream for DnsOverHttps\nend\n" + }, { "name": "std/semantic_version", "path": "src/std/semantic_version.iyi", @@ -463,6 +505,12 @@ "sourceSha256": "5cc08e55afdde00aa2b041123aaeabc9a86b56095a93fb74ce3d102587eea377", "surface": "module std/set\n\nclass ::Set(T)\n # Intersection: what is in both, in this set's order.\n def &(other : Set(U)) : Set(T) forall U\n # `+` is union: two sets added are one set.\n def +(other : Set(U)) : Set(T | U) forall U\n # Adds value and answers the set, for chaining: `set << 1 << 2`.\n def <<(value : T) : Set(T)\n # The same members, in any order, where one element type holds the\n # other, as tuples compare (src/iyi/object.iyi).\n def ==(other : Set(U)) : Bool forall U\n # Symmetric difference: what is in exactly one of the two.\n def ^(other : Set(U)) : Set(T | U) forall U\n # Adds every element of other; answers the set.\n def concat(other : Set(T)) : Set(T)\n # No element in common; two empty sets are disjoint.\n def disjoint?(other : Set(U)) : Bool forall U\n # A copy with the same elements in the same order.\n def dup : Set(T)\n # Whether value, of any type, is a member: one this set's type cannot\n # hold is not.\n protected def has_member?(value) : Bool\n # Equal sets hash alike, and unequal ones apart. Each member's hash goes\n # through splitmix64's finaliser before a wrapping sum, which does not\n # care about order the way the sets do not, and the size is folded in\n # after, as `Array#hash` folds it. The members' hashes summed as they\n # were put a set of small integers at their total, `Int32#hash` being the\n # value: {1, 4} and {2, 3} were one key, the 11,175 sets {i, j} with\n # i < j < 150 had 297 hashes between them, and a table of such keys grew\n # quadratically.\n def hash : Int32\n # At least one element in common.\n def intersects?(other : Set(U)) : Bool forall U\n # A subset that is not the same set.\n def proper_subset_of?(other : Set(U)) : Bool forall U\n def proper_superset_of?(other : Set(U)) : Bool forall U\n # Every element of this set is in other. The empty set is a subset of\n # every set, itself included.\n def subset_of?(other : Set(U)) : Bool forall U\n def superset_of?(other : Set(U)) : Bool forall U\n # Union: everything in either, this set's elements first. The other set\n # may be of another element type, as everything below may: the union of\n # a `Set(Int32)` and a `Set(Int32?)` is a `Set(Int32?)`, either way round.\n # Restricted to `Set(T)`, a set of the narrower type was taken for the\n # wider one and not back, and where the body then asked the narrower set\n # about a member of the wider type it failed to compile inside this file:\n # `Set(Int32?) == Set(Int32)`, `&`, `^`, `subset_of?` and the rest, while\n # `Set(Int32) == Set(Int32?)` answered false for the same members.\n def |(other : Set(U)) : Set(T | U) forall U\nend\n" }, + { + "name": "std/shared_proc", + "path": "src/std/shared_proc.iyi", + "sourceSha256": "a6654265e51523b44a081f94d9eb1b5603fa0b419697e1b45c5f1a7e90161949", + "surface": "module std/shared_proc\n\npub struct SharedProc(A, R)\n def call(argument : A) : R\n # The block, checked as a parallel task's block is, as a value any\n # thread may call.\n def self.of(&block : (A -> R)) : SharedProc(A, R)\nend\n" + }, { "name": "std/shlex", "path": "src/std/shlex.iyi", @@ -472,7 +520,7 @@ { "name": "std/signal", "path": "src/std/signal.iyi", - "sourceSha256": "9dc862b6a18ae292c72c36f482c3bc37efe7af9653b1f388f8d0883128d39a27", + "sourceSha256": "c2d35f9fe0952237ddd8df4c87b2c63520198d9bb1c71a3d76df2ec1779fc748", "surface": "module std/signal\n\npub enum Signal : Int32\n HUP = 1\n INT = 2\n QUIT = 3\n PIPE = 13\n ALRM = 14\n TERM = 15\n WINCH = 28\n USR1 = 10\n USR2 = 12\n CHLD = 17\n # Runs the block for each arrival of one of *signals*, in this task,\n # until the task is cancelled, and answers `Cancelled` then. Arrivals\n # while the block runs are kept, each signal once.\n def self.each(*signals : Signal, &block : (Signal -> _)) : Cancelled\n # Sets each of *signals* to be ignored by the process: its arrivals are\n # dropped, and one that was pending is forgotten. Windows can ignore\n # Ctrl-C (`INT`) alone; anything else is refused there.\n def self.ignore(*signals : Signal) : Nil\n # Gives each of *signals* its default action back: INT and TERM end the\n # process again, WINCH is ignored again. Windows: `INT` alone.\n def self.reset(*signals : Signal) : Nil\n # Parks until one of *signals* arrives; answers it.\n def self.wait(*signals : Signal) : Signal | Cancelled\nend\n" }, { @@ -484,14 +532,14 @@ { "name": "std/smtp", "path": "src/std/smtp.iyi", - "sourceSha256": "a683f9c8884d341eec2f4161f47ce2172425ddcc112f434ac872a1c520ba73b9", - "surface": "module std/smtp\n\npub enum SmtpAuth : Int32\n Plain = 0\n Login = 1\n CramMd5 = 2\nend\n\n# A session with a mail server.\npub class SmtpClient\n def self.ascii?(text : String) : Bool\n # AUTH as *user* with *password*, by *mechanism*, or by the first the\n # server offers of PLAIN, LOGIN and CRAM-MD5.\n def auth(user : String, password : String, mechanism : SmtpAuth | ::Nil = nil) : SmtpError | ::Nil\n # Whether a password may go over a connection without TLS.\n def cleartext_auth : Bool\n # Whether a password may go over a connection without TLS.\n def cleartext_auth=(value : Bool) : Bool\n # The connection closed, without QUIT.\n def close : Nil\n def closed? : Bool\n # *line* sent, and its reply.\n def command(line : String) : SmtpReply | SmtpError\n # A session with *host* on *port*: connected, greeted, EHLO said, and\n # under TLS as *security* asks.\n def self.connect(host : String, port : Int32, security : SmtpSecurity = SmtpSecurity::StartTls, config : TlsConfig = TlsConfig.new, helo : String | ::Nil = nil, timeout_ms : Int32 = TIMEOUT_MS) : SmtpClient | SmtpError\n def self.digit?(b : UInt8) : Bool\n # What EHLO named, by its keyword in upper case: each extension's\n # parameters (\"\" when none). Empty after HELO.\n def extensions : Hash(String, String)\n # The server's 220.\n def greeting : SmtpReply\n def initialize(socket : IyiSocket, host : String, helo : String, timeout_ms : Int32)\n # `[192.0.2.1]`, or `[IPv6:2001:db8::1]` (section 4.1.3).\n def self.literal(address : String) : String\n def self.mechanism_name(mechanism : SmtpAuth) : String\n protected def open(security : SmtpSecurity, config : TlsConfig) : SmtpError | ::Nil\n # QUIT, its 221 read, and the connection closed.\n def quit : SmtpError | ::Nil\n # The next reply, every line of it.\n def reply : SmtpReply | SmtpError\n # *data*, a whole message, from *sender* to *recipients*; *utf8* when\n # the message is RFC 6532's, as SMTPUTF8 carries.\n def send(sender : String, recipients : Array(String), data : String, utf8 : Bool = false) : SmtpError | ::Nil\n # *message* to its recipients - To, Cc and Bcc - from its From.\n def send(message : Mail::Message) : SmtpError | ::Nil\n # *data* as DATA sends it (section 4.5.2): line breaks CRLF, a dot\n # doubled at a line's start, a CRLF at the end if it had none, and the\n # lone dot after.\n def self.stuffed(data : String) : String\n # Whether the session is under TLS.\n def tls? : Bool\n def self.unsafe?(text : String) : Bool\nend\n\n# What a session answered that it should not have, or could not do, as a\n# value. `code` is the reply's code, 0 when there was no reply to have\n# one; `reply` the reply's text, its lines joined with newlines.\npub struct SmtpError\n def cancelled? : Bool\n def code : Int32\n def initialize(reason : String, code : Int32 = 0, reply : String = \"\", timed_out : Bool = false, cancelled : Bool = false)\n def reason : String\n def reply : String\n # Whether a read or a write waited `timeout_ms` and nothing came.\n def timed_out? : Bool\n def to_s : String\nend\n\n# One reply: its code and its lines' text, the code and separator taken\n# off each.\npub struct SmtpReply\n def code : Int32\n def initialize(code : Int32, lines : Array(String))\n def lines : Array(String)\n def text : String\nend\n\n# How the connection is kept from the wire.\npub enum SmtpSecurity : Int32\n StartTls = 0\n Tls = 1\n Cleartext = 2\nend\n\nimpl Error for SmtpError\n def message : String\nend\n" + "sourceSha256": "2d705943fb25cab029ae3af971d812a1df1c514695545e451fa4e99eea77500c", + "surface": "module std/smtp\n\npub enum SmtpAuth : Int32\n Plain = 0\n Login = 1\n CramMd5 = 2\nend\n\n# A session with a mail server.\npub class SmtpClient\n def self.ascii?(text : String) : Bool\n # AUTH as *user* with *password*, by *mechanism*, or by the first the\n # server offers of PLAIN, LOGIN and CRAM-MD5.\n def auth(user : String, password : String, mechanism : SmtpAuth | ::Nil = nil) : SmtpError | ::Nil\n # Whether a password may go over a connection without TLS.\n def cleartext_auth : Bool\n # Whether a password may go over a connection without TLS.\n def cleartext_auth=(value : Bool) : Bool\n # The connection closed, without QUIT.\n def close : Nil\n def closed? : Bool\n # *line* sent, and its reply.\n def command(line : String) : SmtpReply | SmtpError\n # A session with *host* on *port*: connected, greeted, EHLO said, and\n # under TLS as *security* asks.\n def self.connect(host : String, port : Int32, security : SmtpSecurity = SmtpSecurity::StartTls, config : TlsConfig = TlsConfig.new, helo : String | ::Nil = nil, timeout_ms : Int32 = TIMEOUT_MS) : SmtpClient | SmtpError\n def self.digit?(b : UInt8) : Bool\n # What EHLO named, by its keyword in upper case: each extension's\n # parameters (\"\" when none). Empty after HELO.\n def extensions : Hash(String, String)\n # The server's 220.\n def greeting : SmtpReply\n def initialize(socket : IyiSocket, host : String, helo : String, timeout_ms : Int32)\n # `[192.0.2.1]`, or `[IPv6:2001:db8::1]` (section 4.1.3).\n def self.literal(address : String) : String\n def self.mechanism_name(mechanism : SmtpAuth) : String\n protected def open(security : SmtpSecurity, config : TlsConfig) : SmtpError | ::Nil\n # QUIT, its 221 read, and the connection closed.\n def quit : SmtpError | ::Nil\n # The next reply, every line of it.\n def reply : SmtpReply | SmtpError\n # *data*, a whole message, from *sender* to *recipients*; *utf8* when\n # the message is RFC 6532's, as SMTPUTF8 carries. *data* is sent as it\n # is, so a message written with `Mail::Message#to_s` must have had its\n # Date to get here. No recipients, or an address that holds a line break\n # or an angle bracket, panics (`SMTP: a message with no recipients`,\n # `SMTP: ... is not an address to put in angle brackets`); every other\n # failure is the `SmtpError` returned.\n def send(sender : String, recipients : Array(String), data : String, utf8 : Bool = false) : SmtpError | ::Nil\n # *message* to its recipients - To, Cc and Bcc - from its From. The\n # message must have a From and a Date, as `Mail::Message#to_s` asks\n # (`msg.date = Mail.date(...)`), and at least one recipient. A message\n # without them is the caller's mistake and panics: `SMTP: a message has\n # no From`, then `to_s`'s `mail: a message has no Date`, then `SMTP: a\n # message with no recipients`. Every other failure - the connection, the\n # server's replies, a size or extension the server refuses - is the\n # `SmtpError` returned.\n def send(message : Mail::Message) : SmtpError | ::Nil\n # *data* as DATA sends it (section 4.5.2): line breaks CRLF, a dot\n # doubled at a line's start, a CRLF at the end if it had none, and the\n # lone dot after.\n def self.stuffed(data : String) : String\n # Whether the session is under TLS.\n def tls? : Bool\n def self.unsafe?(text : String) : Bool\nend\n\n# What a session answered that it should not have, or could not do, as a\n# value. `code` is the reply's code, 0 when there was no reply to have\n# one; `reply` the reply's text, its lines joined with newlines.\npub struct SmtpError\n def cancelled? : Bool\n def code : Int32\n def initialize(reason : String, code : Int32 = 0, reply : String = \"\", timed_out : Bool = false, cancelled : Bool = false)\n def reason : String\n def reply : String\n # Whether a read or a write waited `timeout_ms` and nothing came.\n def timed_out? : Bool\n def to_s : String\nend\n\n# One reply: its code and its lines' text, the code and separator taken\n# off each.\npub struct SmtpReply\n def code : Int32\n def initialize(code : Int32, lines : Array(String))\n def lines : Array(String)\n def text : String\nend\n\n# How the connection is kept from the wire.\npub enum SmtpSecurity : Int32\n StartTls = 0\n Tls = 1\n Cleartext = 2\nend\n\nimpl Error for SmtpError\n def message : String\nend\n" }, { "name": "std/socket", "path": "src/std/socket.iyi", - "sourceSha256": "47a6354bf8717cd28c325ac48c333d7e536fb29cf524bc22e18716216db54c53", - "surface": "module std/socket\n\n# What a resolver answers and is built from, under the names a program\n# that connects by name already imports from here.\npub alias DnsError = Std::Dns::DnsError\n\n# Either family's address: what a resolver answers for a name.\npub alias IPAddress = IPv4Address | IPv6Address\n\npub struct IPv4Address\n def b0 : UInt8\n def b1 : UInt8\n def b2 : UInt8\n def b3 : UInt8\n def initialize(b0 : UInt8, b1 : UInt8, b2 : UInt8, b3 : UInt8)\n def to_s : String\nend\n\n# Sixteen bytes in network order, held as two words: `high` is bytes 0 to\n# 7. Written the RFC 5952 way - lowercase, no leading zeros, the longest\n# run of two or more zero groups as `::`, the first of two equal runs -\n# and an IPv4-mapped address with its dotted tail, `::ffff:192.0.2.1`.\npub struct IPv6Address\n # Byte *index*, 0 to 15.\n def [](index : Int32) : UInt8\n # The 16-bit group *index*, 0 to 7. Not `group`: that name is the task\n # group's in iyi (SPEC.md III.4.9).\n def hextet(index : Int32) : Int32\n def high : UInt64\n def initialize(high : UInt64, low : UInt64)\n def low : UInt64\n # The sixteen bytes at *bytes*, network order.\n def self.new(bytes : Pointer(UInt8)) : IPv6Address\n def to_s : String\nend\n\npub class IyiSocket\n alias AcceptExFn = Proc(UInt64, UInt64, ::Pointer(Void), Int32, Int32, Int32, Pointer(Int32), ::Pointer(Void), Int32)\n alias ConnectExFn = Proc(UInt64, ::Pointer(Void), Int32, ::Pointer(Void), Int32, Pointer(Int32), ::Pointer(Void), Int32)\n lib LibAdvapi32\n end\n lib LibWs2_32\n # Two slots of an address and the sixteen bytes after it, room for\n # the widest family this file makes.\n struct AcceptAddresses\n end\n struct PollFd\n end\n # A WSABUF, and the two address slots AcceptEx fills in - each a\n # `sockaddr_in` and the sixteen bytes it insists on after one. They are\n # declared here so that the callers below can keep them on the stack:\n # the kernel reads and writes these while the fiber is parked, and a\n # heap chunk whose only reference is a local the posting call has\n # finished with is a chunk the collector can hand to somebody else\n # first. `bench/server_load.iyi` died of a memory fault on exactly\n # that, with the accepted addresses on the heap.\n struct WSABuf\n end\n end\n # Room for any family's `sockaddr`, zeroed, so a unix path the kernel\n # did not end with a NUL still ends.\n def self.__address_room : Pointer(UInt8)\n # A `sockaddr` the kernel filled, as text: dotted IPv4, IPv6 written as\n # RFC 5952 has it, or a unix socket's path.\n def self.__address_text(addr : Pointer(UInt8), family : Int32) : String\n # Winsock's address length is an `int*` where POSIX has a `socklen_t*`:\n # the same width and the same bytes, so the callers above keep one\n # signature.\n def self.__sys_accept(fd : Int32, addr : Pointer(UInt8), addrlen : Pointer(UInt32), family : Int32) : Int32\n def self.__sys_accept_posted(s : UInt64, addr : Pointer(UInt8), addrlen : Pointer(UInt32), family : Int32) : Int32\n def self.__sys_addr_size(family : Int32) : Int32\n def self.__sys_bind(fd : Int32, addr : Pointer(UInt8), family : Int32) : Int32\n # Every close of a socket in this file goes through here. `__iyi_close` is\n # the descriptor close, and on Windows a socket is not a descriptor:\n # `CloseHandle` on a SOCKET releases the kernel handle and leaves Winsock's\n # half of it standing, and the graceful close that makes a peer's read\n # answer EOF rather than a reset is `closesocket`'s.\n def self.__sys_close(fd : Int32) : Nil\n # The failures above arrive as the Winsock number negated.\n def self.__sys_code(result : Int64) : Int32\n def self.__sys_connect(fd : Int32, addr : Pointer(UInt8), family : Int32) : Int32\n # A unix socket connects blocking, and is made non-blocking after:\n # `ConnectEx` is TCP's alone, and the plain `connect` on a socket\n # already non-blocking is not an answer here. Measured on the runner,\n # it came back connected to a path whose listener had closed, and,\n # waited for with `select`, refused a listener that was there. On a\n # socket still blocking it is Go's `connect` on this platform, and\n # its answer is the outcome: the listener is on this machine, and its\n # kernel queues the connection or refuses it at once.\n def self.__sys_connects_blocking?(family : Int32) : ::Bool\n # The plain call, not `__sys_connect`'s `ConnectEx`, which is TCP's: a\n # datagram socket's connect records the peer and returns.\n def self.__sys_dgram_connect(fd : Int32, addr : Pointer(UInt8), family : Int32) : Int32\n # The plain call, not `__sys_send`'s posted one: a datagram of a\n # query's size goes out whole or not at all, and there is no room to\n # wait for.\n def self.__sys_dgram_send(fd : Int32, buf : Pointer(UInt8), len : UInt64) : Int64\n # The resolver's datagram socket: UDP, non-blocking, and - unlike\n # `std/udp`'s - with Windows' report of an ICMP port-unreachable left\n # on. This one is connected to one name server, so the report says\n # that server has nothing on its port, and the next server is asked at\n # once instead of after the timeout.\n def self.__sys_dgram_socket(family : Int32) : Int32\n # Not `await_readable`: the scheduler's readable-wait is a zero-byte\n # overlapped read, and on a datagram socket that read takes the\n # datagram and leaves nothing for the receive after it (measured, and\n # the reason `std/udp` posts its receive instead). `WSAPoll` asks\n # without taking, but it blocks the thread for as long as it is told,\n # and every other task on the thread with it; so it is asked with no\n # wait at all, and the task sleeps on the scheduler between askings -\n # at Windows' timer tick, 15.6 ms, which is nothing next to a name\n # server's round trip.\n def self.__sys_dgram_wait(fd : Int32, ms : Int32) : ::Bool | Cancelled\n # The machine's resolver configuration, read from the registry:\n #\n # - name servers: the TCP/IP service's own `NameServer` (a policy's),\n # then each IPv4 interface that has an address - `NameServer` when\n # it was set by hand, else `DhcpNameServer` - then each IPv6\n # interface's `NameServer`, without repeats, at most\n # `ResolvConf::MAX_NAMESERVERS`;\n # - search list: `SearchList`, else the primary DNS suffix (`Domain`,\n # else `DhcpDomain`).\n #\n # What it cannot see: which interface is up (a stale DHCP lease on an\n # unplugged adapter still has an address in the registry), the order\n # of the interfaces' metrics (they are read in the registry's order),\n # IPv6 servers learned from router advertisements or DHCPv6 (stored as\n # binary, not read), and per-connection suffixes. Those need\n # iphlpapi; see the `lib` above for why it is not linked.\n def self.__sys_dns_config : ResolvConf\n # The failure the last call left, negated. The POSIX arms answer the\n # kernel's errno this way — Linux the negative return itself, darwin\n # `errno` read after a -1 — and this answers Winsock's number in the same\n # shape, so nothing above learns a second convention: a negative result\n # is the failure, and the two predicates below are the only things that\n # read which failure it was.\n def self.__sys_error : Int64\n # The pointer to one of mswsock's extension functions, asked of the\n # socket that will use it. Fetched where it is used rather than cached:\n # it is one call, and both callers are about to do a TCP handshake.\n def self.__sys_extension(s : UInt64, low : UInt64, high : UInt64) : Pointer(UInt64)\n def self.__sys_getpeername(fd : Int32, addr : Pointer(UInt8), addrlen : Pointer(UInt32)) : Int32\n def self.__sys_getsockname(fd : Int32, addr : Pointer(UInt8), addrlen : Pointer(UInt32)) : Int32\n # A SOCKET from the `Int32` the class carries, and back: see the note\n # above the `lib` block for why that is lossless.\n def self.__sys_handle(fd : Int32) : UInt64\n def self.__sys_in_progress?(result : Int32) : ::Bool\n # Winsock caps a backlog at SOMAXCONN, 200, and turns the next connect\n # away as refused - where Linux holds it - unless the backlog is asked\n # as SOMAXCONN_HINT(n), which is -n: 220 connects to a listener asked\n # for 256 lost 20.\n def self.__sys_listen(fd : Int32, backlog : Int32) : Int32\n # Windows raises no SIGPIPE; a write to a closed connection answers\n # WSAECONNRESET or WSAESHUTDOWN.\n def self.__sys_no_sigpipe(fd : Int32) : Nil\n # The wait a cancelled post still owes the kernel. `CancelIoEx` is a\n # request, and on a socket tied to a completion port the operation is not\n # over when it returns: measured here, the status stays STATUS_PENDING\n # and the address block, the descriptor and the OVERLAPPED are the\n # kernel's until the completion packet is taken *off the port* — the\n # poller's `GetQueuedCompletionStatus` is what writes them. The same\n # measurement on an unassociated socket had the status written by\n # `CancelIoEx` itself, which is why this is not obvious. So\n # `WSAGetOverlappedResult`'s own wait flag cannot be the wait either: it\n # waits on the OVERLAPPED's event, the scheduler's OVERLAPPED has none,\n # and the socket handle it falls back to is never signalled for a socket\n # on a port — it hung forever on the first cancelled receive tried.\n #\n # What ends the operation is the poller, so the frame parks once more and\n # lets it. `IyiScheduler.cancel` has already unregistered this fiber,\n # which is what would have left the packet to be dropped; parking puts it\n # back, and the wake means the dequeue has happened. Asked first, because\n # a completion the poller delivered *before* the cancel is already over\n # and no second packet is coming — parking on one would never wake.\n def self.__sys_overlapped_await(s : UInt64, ov : Pointer(UInt8)) : Int64\n # What a posted operation ended with, read off the operation itself. The\n # completion port's byte count cannot tell a failure from a success that\n # transferred nothing, and a successful `AcceptEx` or `ConnectEx` is\n # exactly that — both complete with zero bytes. Nothing waits here: the\n # completion has already arrived, which is what the 0 says.\n def self.__sys_overlapped_result(s : UInt64, ov : Pointer(UInt8)) : Int64\n # TCP names its protocol; a unix socket has only the one, and says 0.\n def self.__sys_protocol(family : Int32) : Int32\n def self.__sys_recv(fd : Int32, buf : Pointer(UInt8), len : UInt64) : Int64\n def self.__sys_send(fd : Int32, buf : Pointer(UInt8), len : UInt64, ms : Int32) : Int64\n # The send as the wait, with the write's deadline on it: a deadline\n # that comes first cancels the send, and the cancellation's completion\n # wakes this frame, so what the send did is known when it returns.\n def self.__sys_send_posted(s : UInt64, buf : Pointer(UInt8), len : UInt64, ms : Int32) : Int64\n def self.__sys_set_nonblock(fd : Int32) : Int32\n # Not SO_REUSEADDR, which on Windows lets a *different* socket bind a\n # port this one is already bound to, and the last binder takes the\n # packets; what the POSIX arms ask for with it is only the waiver of\n # the TIME_WAIT wait, which Windows does not impose on a listener's\n # port. The opposite: SO_EXCLUSIVEADDRUSE (~SO_REUSEADDR, -5). Without\n # it the port was not the listener's either - a bind to 127.0.0.1:P went\n # through while 0.0.0.0:P listened, and the other way round, from any\n # process, and the more specific listener took the connections.\n def self.__sys_set_reuseaddr(fd : Int32) : Int32\n # IPV6_V6ONLY (27) at IPPROTO_IPV6 (41). Windows' default already, and\n # said anyway: the default is a registry's, and this is the program's.\n def self.__sys_set_v6only(fd : Int32) : Int32\n # SO_ERROR at SOL_SOCKET, as on the POSIX arms. `__sys_connect` above has\n # already waited for the handshake and answered what it ended with, so\n # the shared `connect` reaches this only when its task was cancelled —\n # and `wait_writable` answers `Cancelled` before it gets here. It reads\n # the option rather than guessing, so it is the truth for anything that\n # does ask.\n def self.__sys_sock_error(fd : Int32) : Int32\n def self.__sys_socket(family : Int32) : Int32\n def self.__sys_winsock : Nil\n # WSAEWOULDBLOCK answers both questions here: it is what a non-blocking\n # call with nothing to do says, and it is what a connect that is under\n # way says, where POSIX has EAGAIN and EINPROGRESS for the two.\n def self.__sys_would_block?(result : Int64) : ::Bool\n def accept : IyiSocket | Cancelled | SocketError\n def self.await_readable(fd : Int32, ms : Int32 = -1) : ::Bool | Cancelled\n def self.await_writable(fd : Int32, ms : Int32 = -1) : ::Bool | Cancelled\n # A timeout as the waits take it: milliseconds, -1 for none.\n def self.bound(ms : Int32 | ::Nil) : Int32\n protected def bound_path(path : String) : Nil\n # *path* with the NUL a system call reads to.\n def self.c_path(path : String) : Pointer(UInt8)\n def close : Nil\n def closed? : ::Bool\n # `localhost` is 127.0.0.1 and then ::1: a refused or unreachable\n # 127.0.0.1 is tried again at ::1. Windows names both, ::1 first, and a\n # dev server that binds `localhost` there is often on ::1 alone, where\n # a connect to 127.0.0.1 only was \"connection refused\". 127.0.0.1 goes\n # first because a listener here binds `localhost` there. Windows takes\n # 2 s to refuse a connect, so a ::1-only listener is reached in 2 s\n # (2017 ms measured) and a port nobody holds is refused in 4 s, not 2.\n #\n # Any other host name is resolved by the machine's resolver\n # (`Resolver.system`) and its addresses tried in the order the resolver\n # answers them - IPv4 first, then IPv6, as `localhost` is - until one\n # connects; a name that does not resolve is a `SocketError` whose\n # `unresolved?` is true and whose sentence names the host. It panicked,\n # \"cannot resolve address: \\\"example.com\\\"\", for every name but\n # `localhost`, so `HTTP.get(\"http://example.com/\")` could not run.\n #\n # *timeout_ms* bounds each address's handshake (-1: as long as the\n # kernel waits, which on Linux is about two minutes of SYN retries for\n # a host that drops them); one that runs out is a `SocketError` whose\n # `timed_out?` is true, and the next address is tried.\n def self.connect(host : String, port : Int32, timeout_ms : Int32 = -1) : IyiSocket | Cancelled | SocketError\n # The same, with a host name resolved by *resolver*: name servers, a\n # hosts file and search list of the program's choosing, rather than the\n # machine's. An address and `localhost` are what they are either way.\n def self.connect(host : String, port : Int32, resolver : Resolver, timeout_ms : Int32 = -1) : IyiSocket | Cancelled | SocketError\n # A connect to *addr*, waiting at most *ms* milliseconds for the\n # handshake (-1: as long as the kernel does). The resolver's TCP query\n # is the caller with a bound; `connect` waits as the kernel does, as it\n # always has.\n def self.connect_to(addr : Pointer(UInt8), family : Int32, peer : String, ms : Int32 = -1) : IyiSocket | Cancelled | SocketError\n # The stream socket listening at *path*.\n def self.connect_unix(path : String) : IyiSocket | Cancelled | SocketError\n # *host* and *port* as a message names them: an IPv6 literal in its\n # brackets, as a URL writes it. Bare, `::1:57456` was an address with\n # no port, and `ff02::1:80` another address altogether.\n def self.endpoint(host : String, port : Int32) : String\n def fd : Int32\n # The address family, the platform's number for it: an accepted\n # connection is its listener's, and on Windows the socket `AcceptEx`\n # fills in has to be made in it.\n def initialize(fd : Int32, family : Int32 = AF_INET)\n def self.listen(host : String, port : Int32, backlog : Int32 = 128) : IyiSocket\n def self.listen(port : Int32, backlog : Int32 = 128) : IyiSocket\n # A stream socket at *path*. The path must not exist: a socket file an\n # earlier run left behind is refused rather than taken over, since\n # which program owns it is not something a bind can know. `close`\n # removes the file.\n def self.listen_unix(path : String, backlog : Int32 = 128) : IyiSocket\n def local_address : String\n # The port sits at the same two bytes of a `sockaddr_in` and a\n # `sockaddr_in6`.\n def local_port : Int32\n # `localhost` in any case, and with the one trailing dot of a name\n # written fully qualified: a host name's case is not part of it (RFC\n # 4343), and getaddrinfo, Python and curl all answer 127.0.0.1 for\n # `LOCALHOST` and `localhost.`. Matched exactly, these were \"cannot\n # resolve address: \\\"LOCALHOST\\\"\", and so were `Localhost` and\n # `localhost.`.\n def self.localhost?(host : String) : ::Bool\n def self.make_sockaddr_in(ip : IPv4Address, port : Int32) : Pointer(UInt8)\n # A `sockaddr_in6`: family, port, a zero flow label, the address, a zero\n # scope. The family's number and where it sits are the platform's.\n def self.make_sockaddr_in6(ip : IPv6Address, port : Int32) : Pointer(UInt8)\n # A `sockaddr_un`: the family, then the path and its NUL. The room for\n # the path is the platform's - 104 bytes on darwin, 108 elsewhere - and a\n # longer one is refused rather than cut, since a cut path is another\n # path.\n def self.make_sockaddr_un(path : String) : Pointer(UInt8)\n # Dotted-decimal IPv4 only: four octets of 0 to 255, no leading zero\n # (`\"010.1.1.1\"` is refused; glibc's `inet_aton` reads `010` as octal 8,\n # CVE-2021-29921, so it must not quietly be 10 here), plus `localhost`.\n # The refusal inspects the host so a stray space shows.\n def self.parse_ip(host : String) : IPv4Address\n # Eight groups of up to four hex digits, `::` once for a run of zero\n # groups, and a dotted IPv4 tail for the last two (`::ffff:1.2.3.4`). A\n # zone (`fe80::1%eth0`) is refused by name: it names an interface, and\n # this parser has no way to ask the platform which.\n def self.parse_ipv6(host : String) : IPv6Address\n def read(buffer : Pointer(UInt8), count : Int32) : Int32 | Cancelled | SocketError\n def read(max_bytes : Int32 = 4096) : String | Cancelled | SocketError\n # The dotted-decimal reading alone, with the refusal's sentence as the\n # answer instead of a panic: the resolver reads the addresses a hosts\n # file and a resolv.conf write, and a line it cannot read is skipped\n # there, not the end of the program.\n def self.read_ipv4(host : String) : IPv4Address | String\n # The reading alone, the refusal's sentence as the answer: see\n # `read_ipv4`.\n def self.read_ipv6(host : String) : IPv6Address | String\n # The bounds on a read's and a write's wait, in milliseconds; nil waits\n # as long as it takes.\n def read_timeout_ms : Int32 | ::Nil\n def read_timeout_ms=(ms : Int32 | ::Nil) : Int32 | ::Nil\n def recv(buffer : Pointer(UInt8), count : Int32) : Int32 | Cancelled | SocketError\n def recv(max_bytes : Int32 = 4096) : String | Cancelled | SocketError\n # The other end's address and port, as `local_address` and\n # `local_port` give this end's: what a server logs a client by. A unix\n # socket's peer has a path at most, often none (\"\"), and no port. Nil\n # when the other end is gone - the connection was reset or never made -\n # which is the peer's doing and no fault of the program's.\n def remote_address : String | ::Nil\n def remote_port : Int32 | ::Nil\n # Every address *host* stands for, by the machine's resolver: what\n # `connect` tries, in the order it tries them. See `Resolver#resolve`.\n def self.resolve(host : String) : Array(IPAddress) | DnsError | Cancelled\n def send(buffer : Pointer(UInt8), count : Int32) : Int32 | Cancelled | SocketError\n def send(contents : String) : Int32 | Cancelled | SocketError\n # A host and port as the address a call takes, and its family: an IPv6\n # literal bare or in brackets, anything else IPv4.\n def self.sockaddr(host : String, port : Int32) : Tuple(Pointer(UInt8), Int32)\n # This socket as a stream (`SocketIO`), the same one every time, so\n # what one read took ahead the next reads. It was a stream over the\n # descriptor that read a socket with nothing yet to read as failed.\n def to_io : Std::Socket::SocketIO\n def to_unsafe : Int32\n def write(buffer : Pointer(UInt8), count : Int32) : Int32 | Cancelled | SocketError\n def write(contents : String) : Int32 | Cancelled | SocketError\n def write_timeout_ms : Int32 | ::Nil\n def write_timeout_ms=(ms : Int32 | ::Nil) : Int32 | ::Nil\nend\n\npub alias ResolvConf = Std::Dns::ResolvConf\n\n# A stub resolver: a host name's addresses, from a hosts file and then\n# from name servers, as the C library's resolver finds them - but iyi's,\n# so asking costs no library (see the header of this file).\n#\n# `Resolver.system` is the machine's: `/etc/resolv.conf` and `/etc/hosts`\n# on Linux and darwin, the registry and\n# `%SystemRoot%\\System32\\drivers\\etc\\hosts` on Windows (see\n# `__sys_dns_config` for what the registry can and cannot say). A\n# resolver built with `new` or `from_config` asks exactly what it was\n# given, which is how a test asks a server it runs itself.\n#\n# `resolve` answers every address for a name, IPv4 first and then IPv6\n# (the order `connect` tries `localhost` in), each family in the order\n# the hosts file or the server gave it:\n#\n# 1. An address, or `localhost` (127.0.0.1 and ::1: RFC 6761 6.3 keeps it\n# off the network), is itself. Anything that is not a host name is\n# `invalid_name?`.\n# 2. The hosts file: every line naming the host, in any case. A name\n# found there is not asked about.\n# 3. The names the search list and `ndots` make of it (`DnsName.candidates`),\n# in order. Each is asked for A and then AAAA records; NXDOMAIN or no\n# records moves on to the next, and any other failure ends the lookup\n# with that failure - a server that timed out on `db.corp.example` must\n# not turn the answer into `db.example`'s (musl's rule; glibc moves on).\n#\n# A query is one UDP datagram from a fresh socket (so a fresh source\n# port), with an ID from `Random::Secure`, to each server in turn, each\n# waited for `timeout_ms`, and the round repeated `attempts` times. A\n# datagram that does not carry the ID and the question is ignored and the\n# wait goes on; one from any other address never arrives, because the\n# socket is connected to the server. An answer with TC set is asked again\n# over TCP. SERVFAIL, REFUSED and a server that does not answer move on to\n# the next server; NXDOMAIN is the answer. An answer that cannot be read\n# is ignored like a forgery, and is the failure reported if nothing\n# better arrives before the timeout.\npub class Resolver\n def attempts : Int32\n # A resolver from a parsed resolv.conf and a hosts file's text. A\n # `nameserver` line this resolver cannot use - an IPv6 address with a\n # zone, a typo - is skipped as glibc skips one; with none left, the\n # servers a machine without a configuration is assumed to run.\n def self.from_config(config : ResolvConf, hosts : String = \"\") : Resolver\n # A resolver from a resolv.conf and a hosts file at these paths. A file\n # that is not there reads as empty, as it does to the C library.\n def self.from_files(resolv_conf : String, hosts : String) : Resolver\n # The hosts file's text, read before any server is asked.\n def hosts : String\n # *nameservers* are addresses, each with an optional port:\n # `\"192.0.2.1\"`, `\"192.0.2.1:5353\"`, `\"2001:db8::1\"`,\n # `\"[2001:db8::1]:5353\"`. One that is not is refused here, by name: it is\n # the program's own mistake. None at all is a resolver that reads only\n # *hosts*.\n def initialize(nameservers : Array(String), search : Array(String) = [] of String, ndots : Int32 = 1, timeout_ms : Int32 = 5000, attempts : Int32 = 2, hosts : String = \"\")\n def nameservers : Array(String)\n def ndots : Int32\n # The monotonic clock in milliseconds: the runtime's, which its sleep\n # queue keeps deadlines by. A target without the runtime has no socket\n # to wait on either (`__sys_dgram_socket` refuses there), so nothing\n # there reads a time.\n def self.now_ms : Int64\n def self.rcode_name(rcode : Int32) : String\n # Every address *host* stands for: see the class's comment for the\n # order things are asked in.\n def resolve(host : String) : Array(IPAddress) | DnsError | Cancelled\n def search : Array(String)\n # A name server written as an address with an optional port, or the\n # sentence saying why it is not one.\n def self.server(text : String) : NameServer | String\n # The machine's resolver, read afresh each time: a configuration the\n # network manager rewrote is the one the next lookup uses.\n def self.system : Resolver\n def timeout_ms : Int32\nend\n\n# A connection's own failure: which operation, and the platform's error\n# number for why - or, for a host name that could not be turned into an\n# address, the resolver's `DnsError`, and no number (`code` 0); or, for a\n# protocol layered on the connection (TLS), that protocol's own sentence,\n# and no number either.\npub struct SocketError\n def code : Int32\n # The peer is gone: it reset the connection, or closed it and the write\n # found the pipe broken, or the connection was aborted.\n def disconnected? : ::Bool\n # Why the host's name did not resolve; nil for every other failure.\n def dns_error : DnsError | ::Nil\n def initialize(operation : String, code : Int32, dns_error : DnsError | ::Nil, layer_reason : String | ::Nil)\n def initialize(operation : String, code : Int32, dns_error : DnsError | ::Nil)\n def initialize(operation : String, code : Int32)\n # What the protocol over the connection said went wrong; nil otherwise.\n def layer_reason : String | ::Nil\n # A failure of the protocol over the connection, in its words: `cannot\n # read from example.com: tls: a record that does not decrypt`.\n def self.layered(operation : String, reason : String) : SocketError\n def operation : String\n def reason : String\n def refused? : ::Bool\n # A wait for the peer that ran past its socket's timeout, carrying the\n # platform's own number for it so `reason` and `timed_out?` read it as\n # they read the kernel's.\n def self.timed_out(operation : String) : SocketError\n # The peer did not answer in time: a connect the network timed out, or a\n # read or write past its socket's timeout.\n def timed_out? : ::Bool\n def unreachable? : ::Bool\n # The host was a name, and no address came of it: `dns_error` says why\n # (`not_found?` for NXDOMAIN, `server_failure?` for SERVFAIL, ...).\n def unresolved? : ::Bool\nend\n\n# A socket as a stream, for what is written against streams: `read_line`,\n# `puts`, `IyiIO.copy` between it and a file or a pipe. Its reads and\n# writes are the socket's own, which park the task and keep its\n# timeouts. A stream has no error to answer, so a read the socket refuses\n# ends the stream, `read_failed?` true, and a write it refuses panics,\n# naming the reason; a program that answers those reads the socket.\n# Writes are buffered: `flush`, or `IyiIO.copy`, which flushes, sends\n# them. Closing it closes the socket.\npub class SocketIO < ::IyiIO\n def initialize(socket : IyiSocket, buffer_size : Int32 = 4096)\n def socket : IyiSocket\nend\n\nimpl Error for SocketError\n def message : String\nend\n" + "sourceSha256": "fe78564802a8a020e4fff120d2f676e30b86a1f5b31611d71c23f2f5b1ffed2f", + "surface": "module std/socket\n\n# What a resolver answers and is built from, under the names a program\n# that connects by name already imports from here.\npub alias DnsError = Std::Dns::DnsError\n\n# An encrypted way to a name server, asked by a resolver `Resolver#encrypted`\n# made instead of its plaintext servers: std/secure_dns's `DnsOverTls`\n# (RFC 7858) and `DnsOverHttps` (RFC 8484). The trait is here and they are\n# there because they speak std/tls and std/http, which import this module,\n# and R-1 refuses the cycle - as std/http's `CookieStore` is std/cookie's\n# to implement.\npub trait DnsUpstream\n # Its connections closed; the next exchange opens new ones.\n abstract def close : Nil\n # The answer to each of *queries*, in their order, each one whole\n # message as it came; or why there are none. *timeout_ms* bounds each\n # wait on the server. An answer is matched to its query by the\n # transport - by ID over one connection, by request over HTTP - and the\n # resolver then reads it as it reads a datagram.\n abstract def exchange(queries : Array(Bytes), timeout_ms : Int32) : Array(Bytes) | DnsError | Cancelled\n # How a message names it: `dns.test (127.0.0.1:853) over TLS`.\n abstract def label : String\n # Whether its queries carry the ID 0: DNS over HTTPS's, which RFC 8484\n # 4.1 asks for so that an HTTP cache sees one request for one question.\n # The answer must carry the ID the query did all the same.\n abstract def zero_id? : Bool\nend\n\n# Either family's address: what a resolver answers for a name.\npub alias IPAddress = IPv4Address | IPv6Address\n\npub struct IPv4Address\n def b0 : UInt8\n def b1 : UInt8\n def b2 : UInt8\n def b3 : UInt8\n def initialize(b0 : UInt8, b1 : UInt8, b2 : UInt8, b3 : UInt8)\n def to_s : String\nend\n\n# Sixteen bytes in network order, held as two words: `high` is bytes 0 to\n# 7. Written the RFC 5952 way - lowercase, no leading zeros, the longest\n# run of two or more zero groups as `::`, the first of two equal runs -\n# and an IPv4-mapped address with its dotted tail, `::ffff:192.0.2.1`.\npub struct IPv6Address\n # Byte *index*, 0 to 15.\n def [](index : Int32) : UInt8\n # The 16-bit group *index*, 0 to 7. Not `group`: that name is the task\n # group's in iyi (SPEC.md III.4.9).\n def hextet(index : Int32) : Int32\n def high : UInt64\n def initialize(high : UInt64, low : UInt64)\n def low : UInt64\n # The sixteen bytes at *bytes*, network order.\n def self.new(bytes : Pointer(UInt8)) : IPv6Address\n def to_s : String\nend\n\npub class IyiSocket\n # Room for any family's `sockaddr`, zeroed, so a unix path the kernel\n # did not end with a NUL still ends.\n def self.__address_room : Pointer(UInt8)\n # A `sockaddr` the kernel filled, as text: dotted IPv4, IPv6 written as\n # RFC 5952 has it, or a unix socket's path.\n def self.__address_text(addr : Pointer(UInt8), family : Int32) : String\n # What every connected and accepted socket starts with: TCP_NODELAY, on\n # TCP; a unix socket has no Nagle.\n def self.__send_at_once(fd : Int32, family : Int32) : Nil\n def self.__sys3(number : Int64, a : Int64, b : Int64, c : Int64) : Int64\n def self.__sys5(number : Int64, a : Int64, b : Int64, c : Int64, d : Int64, e : Int64) : Int64\n def self.__sys6(number : Int64, a : Int64, b : Int64, c : Int64, d : Int64, e : Int64, f : Int64) : Int64\n def self.__sys_accept(fd : Int32, addr : Pointer(UInt8), addrlen : Pointer(UInt32), family : Int32) : Int32\n def self.__sys_addr_size(family : Int32) : Int64\n def self.__sys_bind(fd : Int32, addr : Pointer(UInt8), family : Int32) : Int32\n # Every close of a socket in this file goes through here. `__iyi_close` is\n # the descriptor close, and on Windows a socket is not a descriptor:\n # `CloseHandle` on a SOCKET releases the kernel handle and leaves Winsock's\n # half of it standing, and the graceful close that makes a peer's read\n # answer EOF rather than a reset is `closesocket`'s.\n def self.__sys_close(fd : Int32) : Nil\n # A raw syscall's negative errno, as the number.\n def self.__sys_code(result : Int64) : Int32\n # *ms* is `connect_to`'s wait's: the call answers EINPROGRESS at once.\n def self.__sys_connect(fd : Int32, addr : Pointer(UInt8), family : Int32, ms : Int32) : Int32\n def self.__sys_connects_blocking?(family : Int32) : ::Bool\n def self.__sys_dgram_connect(fd : Int32, addr : Pointer(UInt8), family : Int32) : Int32\n def self.__sys_dgram_send(fd : Int32, buf : Pointer(UInt8), len : UInt64) : Int64\n # The resolver's datagram socket: see the darwin arm. The raw call\n # answers the negative errno, which `__sys_code` reads.\n def self.__sys_dgram_socket(family : Int32) : Int32\n def self.__sys_dgram_wait(fd : Int32, ms : Int32) : ::Bool | Cancelled\n def self.__sys_getpeername(fd : Int32, addr : Pointer(UInt8), addrlen : Pointer(UInt32)) : Int32\n def self.__sys_getsockname(fd : Int32, addr : Pointer(UInt8), addrlen : Pointer(UInt32)) : Int32\n def self.__sys_in_progress?(result : Int32) : ::Bool\n def self.__sys_listen(fd : Int32, backlog : Int32) : Int32\n def self.__sys_no_sigpipe(fd : Int32) : Nil\n def self.__sys_nodelay?(fd : Int32) : ::Bool\n # `ppoll` on one descriptor for *ms* milliseconds - a timespec, or none\n # for -1 - and no signal mask. 0 when the time ran out.\n def self.__sys_poll(fd : Int32, events : Int32, ms : Int32) : Int32\n def self.__sys_recv(fd : Int32, buf : Pointer(UInt8), len : UInt64) : Int64\n # MSG_NOSIGNAL (0x4000): a write to a connection the peer closed answers\n # EPIPE instead of killing the process with SIGPIPE.\n def self.__sys_send(fd : Int32, buf : Pointer(UInt8), len : UInt64, ms : Int32) : Int64\n # TCP_NODELAY (1) at IPPROTO_TCP (6): Nagle's algorithm off when *on*.\n def self.__sys_set_nodelay(fd : Int32, on : ::Bool) : Int32\n # F_GETFL (3), then F_SETFL (4) with O_NONBLOCK (0x800) added.\n def self.__sys_set_nonblock(fd : Int32) : Int32\n def self.__sys_set_reuseaddr(fd : Int32) : Int32\n # IPV6_V6ONLY (26) at IPPROTO_IPV6 (41).\n def self.__sys_set_v6only(fd : Int32) : Int32\n def self.__sys_shutdown_write(fd : Int32) : Int64\n # SO_ERROR (4) at SOL_SOCKET (1): what a connect that was in progress\n # ended with, 0 when it went through.\n def self.__sys_sock_error(fd : Int32) : Int32\n def self.__sys_socket(family : Int32) : Int32\n # A raw syscall answers the negative errno: EAGAIN is 11, EINPROGRESS 115.\n def self.__sys_would_block?(result : Int64) : ::Bool\n def accept : IyiSocket | Cancelled | SocketError\n # The order `connect` tries a name's addresses in (RFC 8305 section 4):\n # one family's first address, then the other's, alternating, each family\n # in the resolver's order, and the longer family's rest at the end.\n # IPv6 goes first when this machine has a route to the first IPv6\n # address - RFC 6724's first rule, asked the way glibc's getaddrinfo\n # asks it, by connecting a UDP socket, which sends nothing - and IPv4\n # first when it has none, so a machine without IPv6 does not start every\n # connect with an attempt that cannot leave it. A name of one family is\n # left in the resolver's order, and asks nothing.\n def self.attempt_order(addresses : Array(IPAddress)) : Array(IPAddress)\n def self.await_readable(fd : Int32, ms : Int32 = -1) : ::Bool | Cancelled\n def self.await_writable(fd : Int32, ms : Int32 = -1) : ::Bool | Cancelled\n # A timeout as the waits take it: milliseconds, -1 for none.\n def self.bound(ms : Int32 | ::Nil) : Int32\n protected def bound_path(path : String) : Nil\n # *path* with the NUL a system call reads to.\n def self.c_path(path : String) : Pointer(UInt8)\n def close : Nil\n # The sending half ended, the receiving half kept: the peer reads the\n # end of the stream after what was written, and this end goes on reading\n # what the peer still sends until its own end. `shutdown(SHUT_WR)` on\n # POSIX, `shutdown(SD_SEND)` on Windows. A socket that is not connected\n # answers the platform's refusal as a `SocketError`; `close` is still\n # what gives the socket back.\n def close_write : SocketError | ::Nil\n def closed? : ::Bool\n # A host name is resolved by the machine's resolver (`Resolver.system`);\n # a name that does not resolve is a `SocketError` whose `unresolved?` is\n # true and whose sentence names the host. It panicked, \"cannot resolve\n # address: \\\"example.com\\\"\", for every name but `localhost`, so\n # `HTTP.get(\"http://example.com/\")` could not run.\n #\n # A name with more than one address is raced, Happy Eyeballs v2 (RFC\n # 8305): the first address is tried, the next `ATTEMPT_DELAY_MS` later\n # without waiting for the first to fail, or at once when an attempt\n # fails, and so on down the list (`attempt_order`'s: IPv6 first when\n # this machine has a route to it, the families alternating). The first\n # handshake to finish wins, and every other attempt is cancelled and its\n # socket closed before `connect` answers. The addresses were tried one\n # after another, IPv4 first, each with the whole timeout: a name whose\n # first address dropped SYNs cost all of *timeout_ms* - or the kernel's\n # two minutes of retries, unbounded - before the second was tried. Now\n # it costs the delay: 250 ms to a name whose first address is a full\n # listen queue and whose second listens (`bench/std_dns_exercise.sh`,\n # under a 5,000 ms bound).\n #\n # `localhost` is raced the same way, 127.0.0.1 and then ::1, without\n # asking the routing table: a listener here binds `localhost` at\n # 127.0.0.1, so it goes first, and Windows, which names ::1 first, has\n # dev servers that bind ::1 alone. This replaces the rule that tried\n # ::1 only after 127.0.0.1 refused: Windows takes 2 s to refuse a\n # connect, so a ::1-only listener was reached in 2017 ms and a port\n # nobody holds refused in 4059 ms, where now ::1 starts 250 ms after\n # 127.0.0.1 whatever 127.0.0.1 is still doing.\n #\n # *timeout_ms* bounds the whole connect, every attempt together (-1: as\n # long as the kernel waits, which on Linux is about two minutes of SYN\n # retries for a host that drops them). It bounded each address's\n # handshake, which a race has no use for: an attempt started 500 ms in\n # would have run 500 ms past the caller's bound. A connect that runs out\n # is a `SocketError` whose `timed_out?` is true. The name's lookup is\n # outside it, held by the resolver's own `timeout_ms` and `attempts`.\n #\n # A name none of whose addresses connects is one `SocketError` that\n # names each address in the order tried and how its attempt ended,\n # `tried`: `cannot connect to example.com:443: [2001:db8::1]:443 timed\n # out; 192.0.2.1:443 connection refused`. It answered the first\n # address's failure alone. Its `code` is the first attempt's, or a\n # timeout's when the time ran out first. A name with one address is\n # connected to as an address is, and fails with that address's error.\n def self.connect(host : String, port : Int32, timeout_ms : Int32 = -1) : IyiSocket | Cancelled | SocketError\n # The same, with a host name resolved by *resolver*: name servers, a\n # hosts file and search list of the program's choosing, rather than the\n # machine's. An address and `localhost` are what they are either way.\n def self.connect(host : String, port : Int32, resolver : Resolver, timeout_ms : Int32 = -1) : IyiSocket | Cancelled | SocketError\n # A connect to *addr*, waiting at most *ms* milliseconds for the\n # handshake (-1: as long as the kernel does). The resolver's TCP query\n # and `connect` to an address are its callers with a bound; a race's\n # attempts wait as the kernel does, and the race keeps the bound. The\n # bound reaches `__sys_connect` as well as the wait after it, because\n # on Windows that call is the wait: it parks in `ConnectEx` until the\n # handshake is over.\n def self.connect_to(addr : Pointer(UInt8), family : Int32, peer : String, ms : Int32 = -1) : IyiSocket | Cancelled | SocketError\n # The stream socket listening at *path*.\n def self.connect_unix(path : String) : IyiSocket | Cancelled | SocketError\n # *host* and *port* as a message names them: an IPv6 literal in its\n # brackets, as a URL writes it. Bare, `::1:57456` was an address with\n # no port, and `ff02::1:80` another address altogether.\n def self.endpoint(host : String, port : Int32) : String\n # The address family, the platform's number for it: an accepted\n # connection is its listener's, and on Windows the socket `AcceptEx`\n # fills in has to be made in it. With `fd`, what makes the socket again\n # on another thread (std/http's `Server.serve`, on its pool).\n def family : Int32\n def fd : Int32\n def initialize(fd : Int32, family : Int32 = AF_INET)\n def self.listen(host : String, port : Int32, backlog : Int32 = 128) : IyiSocket\n def self.listen(port : Int32, backlog : Int32 = 128) : IyiSocket\n # A stream socket at *path*. The path must not exist: a socket file an\n # earlier run left behind is refused rather than taken over, since\n # which program owns it is not something a bind can know. `close`\n # removes the file.\n def self.listen_unix(path : String, backlog : Int32 = 128) : IyiSocket\n def local_address : String\n # The port sits at the same two bytes of a `sockaddr_in` and a\n # `sockaddr_in6`.\n def local_port : Int32\n # `localhost` in any case, and with the one trailing dot of a name\n # written fully qualified: a host name's case is not part of it (RFC\n # 4343), and getaddrinfo, Python and curl all answer 127.0.0.1 for\n # `LOCALHOST` and `localhost.`. Matched exactly, these were \"cannot\n # resolve address: \\\"LOCALHOST\\\"\", and so were `Localhost` and\n # `localhost.`.\n def self.localhost?(host : String) : ::Bool\n # What `localhost` stands for, in the order `connect` tries it.\n def self.loopback : Array(IPAddress)\n def self.make_sockaddr_in(ip : IPv4Address, port : Int32) : Pointer(UInt8)\n # A `sockaddr_in6`: family, port, a zero flow label, the address, a zero\n # scope. The family's number and where it sits are the platform's.\n def self.make_sockaddr_in6(ip : IPv6Address, port : Int32) : Pointer(UInt8)\n # A `sockaddr_un`: the family, then the path and its NUL. The room for\n # the path is the platform's - 104 bytes on darwin, 108 elsewhere - and a\n # longer one is refused rather than cut, since a cut path is another\n # path.\n def self.make_sockaddr_un(path : String) : Pointer(UInt8)\n # Whether a small write goes at once (TCP_NODELAY) rather than waiting\n # for an earlier one's acknowledgement, as Nagle's algorithm (RFC 896)\n # has it wait. A connected or accepted TCP socket here sends at once, as\n # Go's net package sets its own; `nodelay = false` turns Nagle back on\n # for a program that writes in pieces it would rather have joined. With\n # Nagle on, a write behind an unacknowledged one waited out the peer's\n # delayed ACK, 40 ms on Linux: measured on loopback, --release, medians\n # of 200, a GET on a new https:// connection took 82.89 ms between\n # std/http's ends and 42.00 to OpenSSL's s_server, and takes 1.07 and\n # 1.10 now; wrk against a server answering a streamed body went from\n # 1,211 to 10,702 requests a second. A unix socket has no Nagle to turn\n # off: it answers false and is left alone.\n def nodelay=(on : ::Bool) : ::Bool\n # Whether TCP_NODELAY is on, as the socket's option reads.\n def nodelay? : ::Bool\n # Dotted-decimal IPv4 only: four octets of 0 to 255, no leading zero\n # (`\"010.1.1.1\"` is refused; glibc's `inet_aton` reads `010` as octal 8,\n # CVE-2021-29921, so it must not quietly be 10 here), plus `localhost`.\n # The refusal inspects the host so a stray space shows.\n def self.parse_ip(host : String) : IPv4Address\n # Eight groups of up to four hex digits, `::` once for a run of zero\n # groups, and a dotted IPv4 tail for the last two (`::ffff:1.2.3.4`). A\n # zone (`fe80::1%eth0`) is refused by name: it names an interface, and\n # this parser has no way to ask the platform which.\n def self.parse_ipv6(host : String) : IPv6Address\n def read(buffer : Pointer(UInt8), count : Int32) : Int32 | Cancelled | SocketError\n def read(max_bytes : Int32 = 4096) : String | Cancelled | SocketError\n # The dotted-decimal reading alone, with the refusal's sentence as the\n # answer instead of a panic: the resolver reads the addresses a hosts\n # file and a resolv.conf write, and a line it cannot read is skipped\n # there, not the end of the program.\n def self.read_ipv4(host : String) : IPv4Address | String\n # The reading alone, the refusal's sentence as the answer: see\n # `read_ipv4`.\n def self.read_ipv6(host : String) : IPv6Address | String\n # The bounds on a read's and a write's wait, in milliseconds; nil waits\n # as long as it takes.\n def read_timeout_ms : Int32 | ::Nil\n def read_timeout_ms=(ms : Int32 | ::Nil) : Int32 | ::Nil\n def recv(buffer : Pointer(UInt8), count : Int32) : Int32 | Cancelled | SocketError\n def recv(max_bytes : Int32 = 4096) : String | Cancelled | SocketError\n # The other end's address and port, as `local_address` and\n # `local_port` give this end's: what a server logs a client by. A unix\n # socket's peer has a path at most, often none (\"\"), and no port. Nil\n # when the other end is gone - the connection was reset or never made -\n # which is the peer's doing and no fault of the program's.\n def remote_address : String | ::Nil\n def remote_port : Int32 | ::Nil\n # Every address *host* stands for, by the machine's resolver, in the\n # resolver's order (see `Resolver#resolve`); `connect` tries them in\n # `attempt_order`'s.\n def self.resolve(host : String) : Array(IPAddress) | DnsError | Cancelled\n def send(buffer : Pointer(UInt8), count : Int32) : Int32 | Cancelled | SocketError\n def send(contents : String) : Int32 | Cancelled | SocketError\n # A host and port as the address a call takes, and its family: an IPv6\n # literal bare or in brackets, anything else IPv4.\n def self.sockaddr(host : String, port : Int32) : Tuple(Pointer(UInt8), Int32)\n # This socket as a stream (`SocketIO`), the same one every time, so\n # what one read took ahead the next reads. It was a stream over the\n # descriptor that read a socket with nothing yet to read as failed.\n def to_io : Std::Socket::SocketIO\n def to_unsafe : Int32\n # Whether this is a unix socket, which has a path where TCP has a port:\n # `remote_port` and `local_port` refuse it. std/tls asks before it keys\n # a session's tickets by the port they came from.\n def unix? : ::Bool\n def write(buffer : Pointer(UInt8), count : Int32) : Int32 | Cancelled | SocketError\n def write(contents : String) : Int32 | Cancelled | SocketError\n def write_timeout_ms : Int32 | ::Nil\n def write_timeout_ms=(ms : Int32 | ::Nil) : Int32 | ::Nil\nend\n\npub alias ResolvConf = Std::Dns::ResolvConf\n\n# A stub resolver: a host name's addresses, from a hosts file and then\n# from name servers, as the C library's resolver finds them - but iyi's,\n# so asking costs no library (see the header of this file).\n#\n# `Resolver.system` is the machine's: `/etc/resolv.conf` and `/etc/hosts`\n# on Linux and darwin, the registry and\n# `%SystemRoot%\\System32\\drivers\\etc\\hosts` on Windows (see\n# `__sys_dns_config` for what the registry can and cannot say). A\n# resolver built with `new` or `from_config` asks exactly what it was\n# given, which is how a test asks a server it runs itself.\n#\n# `resolve` answers every address for a name, IPv4 first and then IPv6,\n# each family in the order the hosts file or the server gave it;\n# `connect` races them in `IyiSocket.attempt_order`'s order:\n#\n# 1. An address, or `localhost` (127.0.0.1 and ::1: RFC 6761 6.3 keeps it\n# off the network), is itself. Anything that is not a host name is\n# `invalid_name?`.\n# 2. The hosts file: every line naming the host, in any case. A name\n# found there is not asked about.\n# 3. The names the search list and `ndots` make of it (`DnsName.candidates`),\n# in order. Each is asked for A and then AAAA records; NXDOMAIN or no\n# records moves on to the next, and any other failure ends the lookup\n# with that failure - a server that timed out on `db.corp.example` must\n# not turn the answer into `db.example`'s (musl's rule; glibc moves on).\n#\n# A and AAAA are asked one after the other, and `connect` starts its race\n# once both have answered. RFC 8305 section 3 asks both at once and\n# starts connecting on the A answer when AAAA is 50 ms behind it; that\n# makes a lookup answer in pieces, and saves the AAAA query's round trip\n# at most - 5 to 65 ms uncached for five names through systemd-resolved\n# on the machine this was written on, 0 to 1 ms cached (dig's query\n# times) - where the race saves what an address that drops SYNs costs,\n# the whole timeout. Asked in turn, an NXDOMAIN for A spares the AAAA\n# query, as it does for most of a search list's candidates.\n#\n# A query is one UDP datagram from a fresh socket (so a fresh source\n# port), with an ID from `Random::Secure`, to each server in turn, each\n# waited for `timeout_ms`, and the round repeated `attempts` times. A\n# datagram that does not carry the ID and the question is ignored and the\n# wait goes on; one from any other address never arrives, because the\n# socket is connected to the server. An answer with TC set is asked again\n# over TCP. SERVFAIL, REFUSED and a server that does not answer move on to\n# the next server; NXDOMAIN is the answer. An answer that cannot be read\n# is ignored like a forgery, and is the failure reported if nothing\n# better arrives before the timeout.\n#\n# Encrypted:\n# `encrypted(upstreams)` is the same resolver - hosts file, search list,\n# `ndots`, timeout and attempts - asking `DnsUpstream`s instead of its\n# plaintext servers: DNS over TLS or over HTTPS, std/secure_dns's\n# `DnsOverTls` and `DnsOverHttps`. Each upstream is asked in turn, the\n# round repeated `attempts` times, as the servers are; A and AAAA go in\n# one exchange. An answer over one is held to more than a datagram is:\n# the ID and the question as ever, and no TC and no byte past the message,\n# since a stream has room for any answer and its frame is the message.\n# The plaintext servers are not asked at all, not even when every\n# upstream is down, unless the caller passes *plaintext_fallback*: RFC\n# 8310 5's strict profile, where a lookup that cannot be private fails,\n# is the default, because falling back hands the very question the\n# program meant to keep private to anyone on the path, and a program\n# that would rather have an answer says so. With *plaintext_fallback*\n# (the opportunistic profile) the plaintext servers are asked only when\n# no upstream could be: one that answered, SERVFAIL included, has spoken.\n# One task at a time per resolver with upstreams: an upstream holds its\n# connection, as an `HTTPClient` does.\npub class Resolver\n protected def ask_upstreams_instead(upstreams : Array(DnsUpstream), plaintext_fallback : Bool) : Nil\n def attempts : Int32\n # *records* by ascending priority, those of one priority shuffled.\n def self.by_priority(records : Array(SvcbRecord)) : Array(SvcbRecord)\n # Every upstream's connections closed.\n def close : Nil\n # This resolver asking *upstreams* instead of its plaintext servers,\n # which are asked only with *plaintext_fallback*, and then only when no\n # upstream could be (see the class).\n def encrypted(upstreams : Array(DnsUpstream), plaintext_fallback : Bool = false) : Resolver\n def encrypted(upstream : DnsUpstream, plaintext_fallback : Bool = false) : Resolver\n # The machine's resolver - its hosts file and search list - asking\n # *upstreams*; its name servers only with *plaintext_fallback*.\n def self.encrypted(upstreams : Array(DnsUpstream), plaintext_fallback : Bool = false) : Resolver\n def self.encrypted(upstream : DnsUpstream, plaintext_fallback : Bool = false) : Resolver\n # A resolver from a parsed resolv.conf and a hosts file's text. A\n # `nameserver` line this resolver cannot use - an IPv6 address with a\n # zone, a typo - is skipped as glibc skips one; with none left, the\n # servers a machine without a configuration is assumed to run.\n def self.from_config(config : ResolvConf, hosts : String = \"\") : Resolver\n # A resolver from a resolv.conf and a hosts file at these paths. A file\n # that is not there reads as empty, as it does to the C library.\n def self.from_files(resolv_conf : String, hosts : String) : Resolver\n # The hosts file's text, read before any server is asked.\n def hosts : String\n # The HTTPS records (RFC 9460 section 9) of the origin `https://host:port`,\n # by SVCB resolution (section 3): the question is *host* for port 443\n # and `_port._https.host` for any other (section 9.1); an AliasMode\n # answer is followed to its target's HTTPS records, at most\n # `SvcbAnswer::MAX_ALIASES` of them, and CNAMEs on the way as `txt`\n # follows them; and the ServiceMode records found are answered by\n # priority, those of one priority in a random order (section 2.4.1).\n # The name is asked as written, as for `txt`, over the upstreams when\n # the resolver has them.\n #\n # Of an AliasMode set one record is followed, at random where there are\n # several (section 2.4.2), and any ServiceMode record beside it is\n # passed over (section 2.4.1). A target that has no HTTPS records ends\n # resolution there, with none: the answer's `name` is the target, which\n # section 3 still has a client connect to. An answer with a record\n # `SvcbRecord.parse` refuses is the whole set refused, `malformed?`, as\n # section 2.2 has it; so is a chain longer than the bound. NXDOMAIN and\n # NODATA for the origin's own name are `not_found?` and `no_address?`,\n # as they are for an address.\n def https_records(host : String, port : Int32 = 443) : SvcbAnswer | DnsError | Cancelled\n # *nameservers* are addresses, each with an optional port:\n # `\"192.0.2.1\"`, `\"192.0.2.1:5353\"`, `\"2001:db8::1\"`,\n # `\"[2001:db8::1]:5353\"`. One that is not is refused here, by name: it is\n # the program's own mistake. None at all is a resolver that reads only\n # *hosts*.\n def initialize(nameservers : Array(String), search : Array(String) = [] of String, ndots : Int32 = 1, timeout_ms : Int32 = 5000, attempts : Int32 = 2, hosts : String = \"\")\n # What NODATA for *type* says the name lacks: its records, by name, for\n # the types asked other than as addresses.\n def self.missing(type : Int32) : String\n def nameservers : Array(String)\n def ndots : Int32\n # The monotonic clock in milliseconds: the runtime's, which its sleep\n # queue keeps deadlines by. A target without the runtime has no socket\n # to wait on either (`__sys_dgram_socket` refuses there), so nothing\n # there reads a time.\n def self.now_ms : Int64\n # The answer to one question over plaintext: each server in turn, the\n # round repeated `attempts` times, until one answers NOERROR or\n # NXDOMAIN. The failure answered otherwise is the last server's.\n protected def plaintext(name : String, type : Int32) : Tuple(DnsMessage, String) | DnsError | Cancelled\n # Whether `nameservers` are asked when no upstream could be (RFC 8310's\n # opportunistic profile); false, the strict one, by default.\n def plaintext_fallback : Bool\n def self.rcode_name(rcode : Int32) : String\n # What an answer's RCODE makes of it: the message for NOERROR, and the\n # failure it says otherwise.\n def self.read_rcode(message : DnsMessage, name : String, label : String) : Tuple(DnsMessage, String) | DnsError\n # An answer that came over a stream, read: see `ask_upstream`.\n def self.read_streamed(bytes : Bytes, id : UInt16, name : String, type : Int32, label : String) : Tuple(DnsMessage, String) | DnsError\n # Every address *host* stands for: see the class's comment for the\n # order things are asked in.\n def resolve(host : String) : Array(IPAddress) | DnsError | Cancelled\n def search : Array(String)\n # A name server written as an address with an optional port, or the\n # sentence saying why it is not one.\n def self.server(text : String) : NameServer | String\n # The machine's resolver, read afresh each time: a configuration the\n # network manager rewrote is the one the next lookup uses.\n def self.system : Resolver\n def timeout_ms : Int32\n # The TXT records of *name*, each one's character-strings joined\n # (`DnsRecord.character_strings`), in the order the answer gave them,\n # CNAMEs followed as `resolve` follows them. The name is asked as\n # written - no hosts file, no search list - since a TXT name\n # (`_acme-challenge.example.com`, a domain's SPF) is written in full.\n def txt(name : String) : Array(String) | DnsError | Cancelled\n # The encrypted upstreams asked instead of `nameservers`; none for a\n # plaintext resolver.\n def upstreams : Array(DnsUpstream)\nend\n\n# A connection's own failure: which operation, and the platform's error\n# number for why - or, for a host name that could not be turned into an\n# address, the resolver's `DnsError`, and no number (`code` 0); or, for a\n# protocol layered on the connection (TLS), that protocol's own sentence,\n# and no number either; or, for a name whose addresses were all tried and\n# none connected, every one of them with how its attempt ended.\npub struct SocketError\n def code : Int32\n # The peer is gone: it reset the connection, or closed it and the write\n # found the pipe broken, or the connection was aborted.\n def disconnected? : ::Bool\n # Why the host's name did not resolve; nil for every other failure.\n def dns_error : DnsError | ::Nil\n # A connect to a name none of whose addresses took the connection:\n # *code* is what `refused?` and `timed_out?` read, and *tried* the\n # sentence naming every address.\n def self.every_address(operation : String, code : Int32, tried : String) : SocketError\n def initialize(operation : String, code : Int32, dns_error : DnsError | ::Nil, layer_reason : String | ::Nil, tried : String | ::Nil)\n def initialize(operation : String, code : Int32, dns_error : DnsError | ::Nil, layer_reason : String | ::Nil)\n def initialize(operation : String, code : Int32, dns_error : DnsError | ::Nil)\n def initialize(operation : String, code : Int32)\n # What the protocol over the connection said went wrong; nil otherwise.\n def layer_reason : String | ::Nil\n # A failure of the protocol over the connection, in its words: `cannot\n # read from example.com: tls: a record that does not decrypt`.\n def self.layered(operation : String, reason : String) : SocketError\n def operation : String\n def reason : String\n def refused? : ::Bool\n # A wait for the peer that ran past its socket's timeout, carrying the\n # platform's own number for it so `reason` and `timed_out?` read it as\n # they read the kernel's.\n def self.timed_out(operation : String) : SocketError\n # The peer did not answer in time: a connect the network timed out, or a\n # read or write past its socket's timeout.\n def timed_out? : ::Bool\n # For a connect to a name that stood for more than one address: each\n # address in the order it was tried and how its attempt ended -\n # `[2001:db8::1]:443 timed out; 192.0.2.1:443 connection refused` - which\n # `reason` answers. Nil for every other failure.\n def tried : String | ::Nil\n def unreachable? : ::Bool\n # The host was a name, and no address came of it: `dns_error` says why\n # (`not_found?` for NXDOMAIN, `server_failure?` for SERVFAIL, ...).\n def unresolved? : ::Bool\nend\n\n# A socket as a stream, for what is written against streams: `read_line`,\n# `puts`, `IyiIO.copy` between it and a file or a pipe. Its reads and\n# writes are the socket's own, which park the task and keep its\n# timeouts. A stream has no error to answer, so a read the socket refuses\n# ends the stream, `read_failed?` true, and a write it refuses panics,\n# naming the reason; a program that answers those reads the socket.\n# Writes are buffered: `flush`, or `IyiIO.copy`, which flushes, sends\n# them. Closing it closes the socket.\npub class SocketIO < ::IyiIO\n def initialize(socket : IyiSocket, buffer_size : Int32 = 4096)\n def socket : IyiSocket\nend\n\nimpl Error for SocketError\n def message : String\nend\n" }, { "name": "std/sse", @@ -562,14 +610,14 @@ { "name": "std/time", "path": "src/std/time.iyi", - "sourceSha256": "de71e76443d3820128318a8a725301c5aa6de7a06df82caf8993794355d43987", - "surface": "module std/time\n\npub struct DayOfWeek\n def ==(other : DayOfWeek) : Bool\n def ===(other : DayOfWeek) : Bool\n def friday? : Bool\n # Hashing follows `==`. Without it a day hashed to its type, `Object#hash`'s\n # default: `Monday.hash == Sunday.hash`, and every day a table held went to\n # one slot.\n def hash : Int32\n def initialize(value : Int32)\n def monday? : Bool\n def saturday? : Bool\n def sunday? : Bool\n def thursday? : Bool\n def to_s : String\n def tuesday? : Bool\n def value : Int32\n def wednesday? : Bool\nend\n\n# A time zone: the offsets from UTC a place has kept, and when it changed\n# from one to the next. `Location.load(\"Europe/Istanbul\")` reads the IANA\n# database the machine has; `Location.local` is the machine's own zone;\n# `Location.fixed(19800)` is an offset and nothing else; `Location::UTC` is\n# UTC. A `Time` carries one, and its date and clock are read in it.\n#\n# The database is the system's TZif files, RFC 8536: `$ZONEINFO` when it\n# names a directory, then `/usr/share/zoneinfo`, `/usr/share/lib/zoneinfo`\n# and `/etc/zoneinfo`. Versions 1 to 4 are read. A time before the first\n# change has the file's first offset, and one after the last has its POSIX\n# footer's rule, so a slim file answers for the year 2100 as a fat one does.\n# Leap seconds are not counted, as no clock this module reads counts them.\n#\n# `Location.local` is the `TZ` variable when it is set — the empty string\n# is UTC, a leading `:` is dropped, an absolute path is a TZif file, a name\n# is looked up in the database, and anything else is read as a POSIX TZ\n# string such as `EST5EDT,M3.2.0,M11.1.0` — and `/etc/localtime` when it is\n# not. Windows has no database to read: there `local` is the system's zone,\n# its rule from `GetTimeZoneInformation`, its zones named by their offsets,\n# and `load` reads `$ZONEINFO` alone. Where nothing answers, local is UTC.\n# The local zone is read once, the first time it is asked for.\n#\n# A location is built once and never changed, so a `Time` that holds one\n# can cross to another task.\npub class Location\n lib LibKernel32\n end\n # One offset a location keeps: its abbreviation (`CEST`, `+03`), its\n # seconds east of UTC, and whether it is summer time.\n struct Zone\n def ==(other : Zone) : Bool\n def dst? : Bool\n def initialize(name : String, offset : Int32, dst : Bool)\n def name : String\n def offset : Int32\n def to_s : String\n end\n def ==(other : Location) : Bool\n def self.fixed(name : String, offset : Int32) : Location\n # An offset of *offset* seconds east of UTC and nothing else, named as\n # the offset is written: `+05:30`. Less than a day either way.\n def self.fixed(offset : Int32) : Location\n # One offset, never changing.\n def fixed? : Bool\n def hash : Int32\n def initialize(name : String, zones : Array(Zone), transitions : Array(Int64), transition_zones : Array(Int32), rule : TzRule | ::Nil)\n def inspect : String\n # The zone the IANA database names *name*: `Europe/Istanbul`,\n # `America/New_York`. `UTC` and the empty name are UTC and `Local` is\n # `Location.local`, without a file. A name that climbs out of the database\n # (`..`, a leading `/`, a `\\`) is refused, and so is one no directory has.\n def self.load(name : String) : Location | LocationError\n # The machine's zone; see the type's comment for where it comes from.\n def self.local : Location\n # The machine's own zone, the one `Location.local` answers.\n def local? : Bool\n # The zone *time* is in here.\n def lookup(time : Time) : Zone\n def lookup(unix_seconds : Int64) : Zone\n def name : String\n # A location from the bytes of a TZif file, RFC 8536, named *name*.\n # Anything that is not one is refused with what was wrong and where.\n def self.read_zoneinfo(name : String, data : String) : Location | LocationError\n # The instant a wall clock here reads *wall* (seconds since 1970 as a\n # UTC clock would count them). A wall time a change repeats is the\n # earlier of the two instants; one a change skips is read on the clock\n # from before the change, which lands it past the gap: 02:30 on the\n # morning summer starts in Berlin is 03:30 CEST. Python's `fold=0` and\n # Go read them the same way. `Time.local` and a parse at a location ask\n # this.\n def resolve(wall : Int64) : Int64\n def to_s : String\n def utc? : Bool\nend\n\n# What `Location.load` and `Location.read_zoneinfo` answer when there is no\n# zone by that name, or the bytes are not a zone: a name the program was\n# handed or a file on the machine is not a bug in the program, so it is a\n# value and not a panic.\npub struct LocationError\n def initialize(message : String)\n def to_s : String\nend\n\npub struct Span\n def +(other : Span) : Span\n def -(other : Span) : Span\n def - : Span\n def <(other : Span) : Bool\n def <=(other : Span) : Bool\n def <=>(other : Span) : Int32\n def ==(other : Span) : Bool\n def >(other : Span) : Bool\n def >=(other : Span) : Bool\n # The seconds are an Int64, and a span that leaves it is refused here,\n # by name: `Span.seconds(Int64::MAX) + Span.seconds(1)` panicked with the\n # prelude's \"arithmetic overflow\", a sentence that named no span. The\n # wrapping sum is compared with an addend to see whether it wrapped; the\n # product is bounded before it is taken.\n def self.add_seconds(a : Int64, b : Int64) : Int64\n def days : Int64\n def self.days(n : Int64) : Span\n # Hashing follows `==`, the two parts mixed as a tuple's members are. Without\n # it every span hashed to its type: `Span.seconds(1).hash ==\n # Span.days(9).hash`, and a table of 16,000 spans took 0.95 s to fill where\n # the same pairs as tuples took 1 ms.\n def hash : Int32\n def hours : Int32\n def self.hours(n : Int64) : Span\n def initialize(seconds : Int64 = 0_i64, nanoseconds : Int32 = 0)\n def millisecond : Int32\n def milliseconds : Int32\n def self.milliseconds(n : Int64) : Span\n def minutes : Int32\n def self.minutes(n : Int64) : Span\n def self.mul_seconds(n : Int64, unit : Int64) : Int64\n def nanosecond : Int32\n def nanoseconds : Int32\n def self.nanoseconds(n : Int64) : Span\n def self.new(*, days : Int64 = 0_i64, hours : Int64 = 0_i64, minutes : Int64 = 0_i64, seconds : Int64 = 0_i64, milliseconds : Int64 = 0_i64, nanoseconds : Int64 = 0_i64) : Span\n def seconds : Int32\n def self.seconds(n : Int64) : Span\n def self.sub_seconds(a : Int64, b : Int64) : Int64\n def to_i : Int64\n def to_s : String\n def total_days : Float64\n def total_hours : Float64\n def total_milliseconds : Float64\n def total_minutes : Float64\n def total_nanoseconds : Float64\n def total_seconds : Float64\n def total_seconds_i64 : Int64\n def self.zero : Span\nend\n\npub struct Time\n alias DayOfWeek = Std::Time::DayOfWeek\n # A pattern of Crystal's directives, for writing a `Time` and reading one\n # back. Text that is not a directive is written as it is and must be\n # there, byte for byte, when reading; ASCII whitespace in the pattern is\n # written as it is and reads any run of whitespace, none included.\n #\n # %Y year, four digits or more, year -1 as -0001 %C year // 100\n # %y year % 100 %G %g %V the ISO 8601 week year, its last two digits,\n # and the week 01..53 %m month 01..12 %B January %b %h Jan\n # %d day 01..31 %e day \" 1\"..\"31\" %j day of the year 001..366\n # %H hour 00..23 %k \" 0\"..\"23\" %I 01..12 %l \" 1\"..\"12\" %p am %P AM\n # %M minute %S second %L milliseconds %3N %6N %9N the fraction to\n # 3, 6 and 9 digits %N nanoseconds, any number of digits when read\n # %A Sunday %a Sun %u day of the week, Monday 1..7 %w Sunday 0..6\n # %s seconds since the epoch %z +0530 %:z +05:30 %::z +05:30:00\n # %Z and %^Z: UTC at offset 0 and the offset, +05:30, at any other\n # %F %Y-%m-%d %T %X %H:%M:%S %R %H:%M %D %x %m/%d/%y\n # %r %I:%M:%S %P %c %a %b %e %H:%M:%S %Y %n newline %t tab %% %\n #\n # A number takes a flag between the `%` and its letter: `-` for no\n # padding (`%-d` is 5), `_` for spaces (`%_m` is \" 5\") and `0` for zeros\n # (`%0e` is 05); `^` upcases a name (`%^a` is SUN). The other library knows\n # `%-d`, `%-m`, `%_m` and the `^` names. The same flags on its other numbers\n # are this module's, where that library wrote the `%-` back out as text; a `%`\n # that starts no directive is text here as it is there.\n #\n # Reading takes up to a number's width in digits, fewer when the next byte\n # is not a digit, and a name in any case. `%Y` takes four digits when a\n # directive follows it (`%Y%m%d`), and when text or the end of the\n # pattern does (`%F`), an optional `-` and up to ten, so the years `to_s`\n # writes are the years it reads. A field outside its range, a day the\n # month does not have, a name that is not one and text after the pattern\n # are each a `TimeParseError`, never a panic. A day name is checked to be\n # one and not checked against the date, as Crystal, Go and Python read it.\n struct Format\n # The parts of an instant as they read at an offset, worked out once\n # per `format` rather than once per directive. *zone* is what `%Z`\n # writes, the location's abbreviation; with none it writes `UTC` at\n # offset 0 and the offset at any other.\n struct Fields\n def day : Int32\n def day_of_week : Int32\n def day_of_year : Int32\n def hour : Int32\n def initialize(time : Time, offset : Int32, zone : String | ::Nil)\n def minute : Int32\n def month : Int32\n def nanosecond : Int32\n def offset : Int32\n def second : Int32\n def unix : Int64\n def week : ::Tuple(Int64, Int32)\n def year : Int32\n def zone : String | ::Nil\n end\n # The HTTP date of RFC 9110 section 5.6.7. It is written as the\n # IMF-fixdate, always in GMT, `Sun, 06 Nov 1994 08:49:37 GMT`; it is\n # read in all three of the forms a recipient must accept: that one, the\n # obsolete RFC 850 `Sunday, 06-Nov-94 08:49:37 GMT`, and asctime's\n # `Sun Nov 6 08:49:37 1994`.\n module HTTP_DATE\n def self.format(time : Time) : String\n def self.parse(string : String) : Time | TimeParseError\n end\n # ISO 8601's calendar date, written `2016-02-15` as the date reads at\n # *offset* or in the time's own location; read extended or basic, and\n # as an ordinal or a week date, at *offset* since a date names no zone.\n module ISO_8601_DATE\n def self.format(time : Time, offset : Int32 | ::Nil = nil) : String\n def self.parse(string : String, offset : Int32 = 0) : Time | TimeParseError\n end\n # ISO 8601's date and time, written as RFC 3339 writes it and read with\n # every form of `ISO_8601_DATE` and `ISO_8601_TIME` joined by an\n # optional `T`. The zone is required, as Crystal requires it.\n module ISO_8601_DATE_TIME\n def self.format(time : Time, offset : Int32 | ::Nil = nil) : String\n def self.parse(string : String) : Time | TimeParseError\n end\n # ISO 8601's time of day and its zone, `04:35:50Z`; read as on\n # 0001-01-01, the day Crystal reads it on.\n module ISO_8601_TIME\n def self.format(time : Time, offset : Int32 | ::Nil = nil) : String\n def self.parse(string : String) : Time | TimeParseError\n end\n # Reads a text by a pattern or by one of the named grammars. Every step\n # answers whether it matched; the first that did not leaves its sentence\n # in `@error`, and `finish` answers that, so no text a program is handed\n # ends it in a panic.\n class Parser\n def accept(char : Char) : Bool\n def am_pm : Bool\n def at_end : Bool\n # RFC 5322's CFWS: whitespace and parenthesised comments, which nest\n # and in which `\\` quotes the next byte. Answers whether there was any;\n # a comment left open is the error, and the parse fails on it.\n def cfws : Bool\n def day_name : Bool\n def self.digit?(b : UInt8) : Bool\n # Up to *max* digits and at least one. Nil, with the sentence, when\n # there are none, or when they are past what an Int64 holds.\n def digits(max : Int32, what : String) : Int64 | ::Nil\n def directive(letter : Char, flag : Char, digits : Int32, wide : Bool) : Bool\n # Exactly *count* digits, or nil, reading nothing and saying nothing:\n # the caller names what was missing.\n def exact(count : Int32) : Int32 | ::Nil\n def expect(char : Char) : Bool\n def fail(what : String) : Bool\n # A numeric directive's field, read as its flag and its padding say.\n def field(width : Int32, pad : Char, flag : Char, what : String) : Int32 | ::Nil\n # The instant the fields name, or the first sentence a step left. The\n # fields are checked the way `Time.utc` checks them, with RFC 3339's\n # allowance: `:60` is a leap second, read as the second after `:59`,\n # the instant it names on every clock that has none. A text that\n # names no zone is read at *default_offset*, or failing that on\n # *location*'s wall clock; with a location the time answered is in it.\n def finish(default_offset : Int32 | ::Nil, location : Location | ::Nil = nil) : Time | TimeParseError\n # A fraction of a second: up to *max* digits, scaled to nanoseconds,\n # and for `%N` any digits past the ninth read and dropped.\n def fraction(max : Int32, rest : Bool) : Bool\n # RFC 9110 section 5.6.7's three forms of an HTTP date: the\n # IMF-fixdate `Sun, 06 Nov 1994 08:49:37 GMT`, the obsolete RFC 850\n # `Sunday, 06-Nov-94 08:49:37 GMT`, and asctime's `Sun Nov 6 08:49:37\n # 1994`, which has no zone and is GMT. Crystal's reading: a day name,\n # short or long, in any of the three; the four-digit year IIS writes\n # in the RFC 850 shape; and the zones RFC 2822 names where RFC 9110\n # writes GMT.\n def http_date : Bool\n def initialize(input : String)\n # ISO 8601's dates, extended or basic: 2016-02-15 and 20160215, the\n # ordinal 2016-046 and 2016046, and the week date 2016-W07-1 and\n # 2016W071.\n def iso_date : Bool\n def iso_date_time : Bool\n # ISO 8601's time of day, extended or basic: 04:35:50 and 043550, a\n # fraction of the second after `.` or `,`, or the minutes or the hour\n # alone with a fraction of their own (04:35.5 is 04:35:30).\n def iso_time : Bool\n def self.letter?(b : UInt8) : Bool\n def literal(b : UInt8) : Bool\n def month_name(short : Bool) : Bool\n # A run of ASCII letters and the index in *names* of the name it\n # spells, in any case: for *short*, the first three letters of a name\n # and no more; otherwise the start of a name, three letters or longer,\n # as Crystal reads `%B` and `%A`.\n def name(names : Array(String), short : Bool, what : String) : Int32 | ::Nil\n def need_cfws : Bool\n def number(max : Int32, what : String) : Int32 | ::Nil\n def offset_number(allow_colon : Bool, force_colon : Bool, allow_seconds : Bool) : Bool\n # A number blank padded, as `%e` writes \" 5\": one space stands for a\n # digit.\n def padded_number(max : Int32, what : String) : Int32 | ::Nil\n def pattern(pattern : String) : Bool\n # The byte *ahead* of the current one, or 0 past the end, as Crystal's\n # reader answers '\\0' there.\n def peek(ahead : Int32 = 0) : UInt8\n # RFC 9110's rule for a two-digit year (section 5.6.7): a year that\n # appears to be more than 50 years in the future is the most recent\n # past year with those last two digits. The candidate is taken in this\n # century and moved a century to land in the 100 years ending 50 years\n # from now, so the rule holds in 2090 too. The other library read 00..49 as 20xx\n # and the rest as 19xx, whatever the year it was read in.\n def self.recent_year(two_digits : Int64) : Int64\n # A sentence about fields that were all read, where no one byte is to\n # blame.\n def refuse(what : String) : TimeParseError\n # RFC 5322 section 3.3's date-time, with section 4.3's obsolete\n # two- and three-digit years and zone names, as Crystal's `RFC_2822`\n # reads it: `Mon, 15 Feb 2016 04:35:50 +0000`, the day name and the\n # seconds optional, comments anywhere whitespace goes.\n def rfc_2822 : Bool\n def same_letters?(start : Int32, name : String, size : Int32) : Bool\n def skip_spaces : Bool\n def self.space?(b : UInt8) : Bool\n def text(start : Int32, stop : Int32) : String\n # HH:MM:SS, as both HTTP and RFC 850 write the time of day.\n def time_of_day : Bool\n # One whitespace byte, as the HTTP grammars put between their parts.\n def whitespace : Bool\n # `%Y`: four digits when a directive follows it, and an optional `-`\n # and up to ten when text does, which is every year an Int32 holds.\n def year(wide : Bool) : Int64 | ::Nil\n # Exactly four digits, as the HTTP and ISO 8601 grammars write a year.\n def year4 : Bool\n # `%z`, `%:z` and `%::z` alike, as Crystal reads them: `Z`, `UTC`, or\n # an offset with or without its colons.\n def zone : Bool\n # `%Z`: an offset, or a name read up to the next whitespace. Only the\n # names of UTC itself are read: an abbreviation names no single zone\n # (CST is three of them), so any other is refused by name rather than\n # read as UTC or guessed at. A text whose zone is known is read at\n # that `Location` instead.\n def zone_name : Bool\n # RFC 5322's zone (section 3.3, and 4.3 for the obsolete names): an\n # offset of four digits, or a name. A military letter is read as\n # `-0000`, the offset of a time whose zone is not known, as section\n # 4.3 says to; a name the RFC does not give is refused, where Crystal\n # read it as UTC in silence. `UTC` is not the RFC's, and is read as\n # Crystal reads it.\n def zone_rfc2822 : Bool\n # ISO 8601's zone: `Z` or an offset.\n def zone_z_or_offset : Bool\n end\n # RFC 2822's date and time, `Mon, 15 Feb 2016 04:35:50 +0000`, as\n # Crystal writes it: the day of the month unpadded, the offset at the\n # end, the time's own unless another is given. RFC 2822 writes an offset\n # in whole minutes, so an offset with seconds is refused rather than\n # written as some other instant.\n module RFC_2822\n def self.format(time : Time, offset : Int32 | ::Nil = nil) : String\n def self.parse(string : String) : Time | TimeParseError\n end\n # RFC 3339, the module's own serialisation: `to_rfc3339` and\n # `parse_rfc3339` are this module's `format` and `parse`, and\n # `parse_rfc3339` panics with the sentence `parse` answers. Written at\n # *offset*, or at the time's own when it is whole minutes and in UTC\n # when it is not.\n module RFC_3339\n def self.format(time : Time, fraction_digits : Int32 = 0, offset : Int32 | ::Nil = nil) : String\n def self.parse(str : String) : Time | TimeParseError\n end\n # An offset is less than a day either side of UTC: the widest RFC 3339\n # and RFC 2822 write is 23:59, and a day or more is a date, not a zone.\n # An offset is the program's own, so a wrong one is a panic.\n def self.check_offset(offset : Int32) : Nil\n def format(time : Time, offset : Int32) : String\n def format(time : Time) : String\n # *offset*, seconds east of UTC, is the one a parse reads a text at when\n # the text names no zone, and the one `format` writes at. Nil, as for\n # Crystal's `Format.new(pattern)`, makes a text without a zone an error,\n # and `format` writes a time in its own location.\n def initialize(pattern : String, offset : Int32 | ::Nil = nil)\n # A text that names no zone is read on *location*'s wall clock, and\n # every time is read and written in *location*.\n def initialize(pattern : String, location : Location)\n # The directive at the `%` at byte *i* of *pattern*: the byte after it,\n # its letter, its flag, the colons of `%:z` and `%::z`, and the digits of\n # `%3N`. A `%` that starts no directive answers the letter '\\0' and the\n # byte after the `%`: it is text, and so is what follows it, as Crystal\n # writes `%Q` back out as `%Q`.\n def self.lex(pattern : String, i : Int32) : ::Tuple(Int32, Char, Char, Int32, Int32)\n def location : Location | ::Nil\n def self.name(io : String::Builder, text : String, flag : Char) : Nil\n # A number padded to *width* with *pad*, '\\0' for none, unless a flag\n # says otherwise. The sign of a negative year goes in front of the\n # padding, as `-0001`, the way `to_rfc3339` writes it.\n def self.number(io : String::Builder, value : Int64, width : Int32, pad : Char, flag : Char) : Nil\n def self.numeric?(letter : Char) : Bool\n def offset : Int32 | ::Nil\n # `+hh:mm` or `+hhmm`, and the seconds never (0), when there are any (1)\n # or always (2), the way Crystal's `Zone#format` writes an offset.\n def self.offset_text(offset : Int32, colon : Bool, seconds : Int32) : String\n def parse(string : String, offset : Int32 | ::Nil) : Time | TimeParseError\n def parse(string : String) : Time | TimeParseError\n def pattern : String\n def self.plain?(letter : Char) : Bool\n def self.textual?(letter : Char) : Bool\n def self.twelve(hour : Int32) : Int64\n def self.write(io : String::Builder, pattern : String, f : Fields) : Nil\n def self.write_directive(io : String::Builder, letter : Char, flag : Char, colons : Int32, digits : Int32, f : Fields) : Nil\n end\n lib LibKernel32\n end\n alias Location = Std::Time::Location\n alias Span = Std::Time::Span\n # The sum is checked before it is taken, so a span too long for the\n # seconds is refused as one; a sum that fits but leaves the years an\n # Int32 names is refused by the constructor. A span is exact: a day\n # added across the night summer begins is 24 hours, and the clock reads\n # an hour later than it did.\n def +(span : Span) : Time\n def -(span : Span) : Time\n def -(other : Time) : Span\n def <(other : Time) : Bool\n def <=(other : Time) : Bool\n def <=>(other : Time) : Int32\n def ==(other : Time) : Bool\n def >(other : Time) : Bool\n def >=(other : Time) : Bool\n # The ISO 8601 week-numbering year and week this day falls in, as\n # Crystal's `calendar_week` answers: 2021-01-01 is in week 53 of 2020.\n def calendar_week : ::Tuple(Int32, Int32)\n # Converts days since 1970-01-01 into {year, month, day}.\n def self.civil_from_days(z : Int64) : ::Tuple(Int32, Int32, Int32)\n def day : Int32\n def day_of_week : DayOfWeek\n def day_of_year : Int32\n def self.days_from_civil(y : Int64, m : Int32, d : Int32) : Int64\n def self.days_in_month(year : Int32, month : Int32) : Int32\n def self.days_in_year(year : Int32) : Int32\n # Number of days between 1970-01-01 and the given civil date.\n # Follows Howard Hinnant's Gregorian calendar algorithm.\n def self.floor_div(a : Int64, b : Int64) : Int64\n def self.floor_mod(a : Int64, b : Int64) : Int64\n def self.from_unix(seconds : Int64, nanoseconds : Int32 = 0) : Time\n def self.from_unix_ms(milliseconds : Int64) : Time\n # Hashing follows `==`, as `Span`'s does. Without it every time hashed to its\n # type: `Time.unix(1).hash == Time.unix(1000000, 5).hash`, and a table of\n # 16,000 times took 1.2 s to fill where the same pairs as tuples took 1 ms.\n def hash : Int32\n def hour : Int32\n # The same instant read in *location*: `Time.utc(2024, 7, 1, 12).in(berlin)`\n # is 14:00 CEST.\n def in(location : Location) : Time\n def initialize(seconds : Int64, nanoseconds : Int32 = 0, location : Location = Location::UTC)\n # As the other library writes it: the date and time, the nanoseconds\n # when there are any, and `Z`. There was no `inspect`, so it was `to_s`,\n # and `Time.utc(2024, 1, 1, 0, 0, 0, nanosecond: 5)` inspected as\n # `2024-01-01 00:00:00 UTC`, the same as `Time.utc(2024, 1, 1)`, which\n # `==` tells apart from it. Out of UTC the offset follows, and the\n # location's name when it is more than an offset:\n # `2016-02-15 11:20:30 +01:00 Europe/Berlin`.\n def inspect : String\n # The ISO 8601 week-numbering year and week of a date, from its year, day\n # of the month, day of the year and day of the week (Monday is 1). This is\n # Crystal's computation: the week is the count of Mondays up to the day,\n # and the first days of January or the last of December can belong to a\n # week of the year next to it. The year is an Int64 because the first days\n # of the smallest Int32 year belong to the year before it.\n def self.iso_week(year : Int64, day : Int32, day_of_year : Int32, day_of_week : Int32) : ::Tuple(Int64, Int32)\n def self.leap_year?(year : Int32) : Bool\n # The time a clock in *location* shows as the date and time given, the\n # machine's own zone when none is. Its fields are checked as `utc` checks\n # them. A wall time a change of offset repeats, the hour after summer\n # ends, is the earlier of the two; one a change skips, the hour summer\n # begins with, is read past the gap (see `Location#resolve`).\n def self.local(year : Int32, month : Int32, day : Int32, hour : Int32 = 0, minute : Int32 = 0, second : Int32 = 0, millisecond : Int32 = 0, nanosecond : Int32 = 0, location : Location = Location.local) : Time\n # Now, read in *location*.\n def self.local(location : Location) : Time\n # Now, in the machine's own zone (`Location.local`).\n def self.local : Time\n def local? : Bool\n # The zone the date and clock are read in, and its offset from UTC at\n # this instant in seconds east. `==`, `<=>` and `hash` are the instant's\n # and do not look at either: noon in London and 13:00 in Paris are the\n # same time.\n def location : Location\n def millisecond : Int32\n def milliseconds : Int32\n def minute : Int32\n def self.monotonic : Span\n def self.monotonic_nanoseconds : UInt64\n def month : Int32\n def nanosecond : Int32\n def nanoseconds : Int32\n def self.new(year : Int32, month : Int32, day : Int32, hour : Int32 = 0, minute : Int32 = 0, second : Int32 = 0, millisecond : Int32 = 0, nanosecond : Int32 = 0) : Time\n def offset : Int32\n def self.pad2(n : Int32) : String\n def self.pad3(n : Int32) : String\n # Four digits, and a negative year keeps its sign in front of them rather\n # than inside: written as `n < 10 ? \"000\" + n.to_s`, year -1 printed\n # `000-1-01-01`, which is neither a year nor a date. ISO 8601 spells it\n # `-0001`, and the conversions themselves were right all along - the epoch\n # round-trips through it.\n def self.pad4(n : Int32) : String\n def self.pad6(n : Int32) : String\n def self.pad9(n : Int32) : String\n # Reads *string* by *pattern*'s directives (see `Time::Format`). A text\n # that names no zone is read at *offset* seconds east of UTC, as Crystal's\n # `Time.parse` reads one at the location it is given.\n def self.parse(string : String, pattern : String, offset : Int32) : Time | TimeParseError\n # Reads *string* by *pattern* in *location*: a text that names no zone is\n # the wall clock there, its offset the one the location kept at that date\n # (a wall time a change repeats or skips is read as `Time.local` reads\n # it), and the time answered is in *location* whether the text named a\n # zone or not.\n def self.parse(string : String, pattern : String, location : Location) : Time | TimeParseError\n def self.parse_iso8601(string : String) : Time | TimeParseError\n # `parse` in the machine's own zone.\n def self.parse_local(string : String, pattern : String) : Time | TimeParseError\n # Any of RFC 9110's three HTTP date forms; see `Time::Format::HTTP_DATE`.\n def self.parse_rfc1123(string : String) : Time | TimeParseError\n def self.parse_rfc2822(string : String) : Time | TimeParseError\n # Parses an RFC 3339 / ISO 8601 string into a UTC Time, and panics with the\n # parser's sentence when it is not one. Handles forms like:\n # 2024-02-29T12:30:45Z\n # 2024-02-29T12:30:45.123Z\n # 2024-02-29T12:30:45.123456789Z\n # 2024-02-29 12:30:45Z\n # 2024-02-29T12:30:45+05:00\n # 2024-02-29T12:30:45-08:00\n # -0001-01-01T00:00:00Z and 12345-06-07T08:09:10Z, as `to_rfc3339` writes them\n # `Time::Format::RFC_3339.parse` reads the same grammar and answers a\n # `TimeParseError` instead, for text the program did not write itself.\n def self.parse_rfc3339(str : String) : Time\n # `parse` at UTC when the text names no zone.\n def self.parse_utc(string : String, pattern : String) : Time | TimeParseError\n def second : Int32\n def seconds : Int64\n # Moves the date by calendar years and months, then by weeks and days,\n # then by the smaller units, in that order, as Crystal's `shift` does. A\n # day the month does not have becomes its last: `Time.utc(2024, 1,\n # 31).shift(months: 1)` is 2024-02-29. The date moves on the wall clock\n # of the time's location, so the time of day is kept across a change of\n # offset - a day after 12:00 on the Saturday summer begins is 12:00 on\n # Sunday, 23 hours later - and the hours, minutes, seconds and\n # nanoseconds are exact. A year past an Int32 is refused with the\n # constructor's sentence, and a span the Int64 seconds do not hold with\n # `Span`'s.\n def shift(*, years : Int32 = 0, months : Int32 = 0, weeks : Int64 = 0_i64, days : Int64 = 0_i64, hours : Int64 = 0_i64, minutes : Int64 = 0_i64, seconds : Int64 = 0_i64, nanoseconds : Int64 = 0_i64) : Time\n def to_local : Time\n # RFC 1123's date as HTTP writes it, RFC 9110's IMF-fixdate, always in GMT:\n # `Sun, 06 Nov 1994 08:49:37 GMT`.\n def to_rfc1123 : String\n # RFC 2822's date, `Mon, 15 Feb 2016 04:35:50 +0000`, at *offset*, or at\n # the time's own offset when none is given.\n def to_rfc2822(offset : Int32 | ::Nil = nil) : String\n # RFC 3339 at the time's own offset: `Z` at UTC, `+02:00` in CEST. An\n # offset RFC 3339 cannot write, one with seconds in it as local mean time\n # before standard time had, is written as the same instant in UTC.\n def to_rfc3339(fraction_digits : Int32 = 0) : String\n # The instant written as it reads at *offset* seconds east of UTC:\n # `to_s(\"%F %T %:z\", 19800)` is the wall clock in India.\n def to_s(format : String, offset : Int32) : String\n # The time written by *format*'s directives (see `Time::Format`) as its\n # own location reads it; `%Z` is the zone's abbreviation, `CEST`.\n def to_s(format : String) : String\n # `2016-02-15 10:20:30 UTC`, and in any other location the offset in\n # place of `UTC`: `2016-02-15 11:20:30 +01:00`.\n def to_s : String\n def to_unix : Int64\n def to_unix_f : Float64\n # Refused with the module's sentence past the milliseconds an Int64\n # holds, some 292 million years either side of 1970, where the multiply\n # was the prelude's bare \"arithmetic overflow\" for a year `Time.utc`\n # accepts, 300,000,000. Both edges answer to the last millisecond that\n # fits: the lowest 808 an Int64 holds were refused, so\n # `Time.unix_ms(Int64::MIN).to_unix_ms` panicked. A negative second is\n # taken one up and its milliseconds from 1000 down, so the product fits\n # too.\n def to_unix_ms : Int64\n def to_utc : Time\n def self.unix(seconds : Int64, nanoseconds : Int32 = 0) : Time\n def self.unix_ms(milliseconds : Int64) : Time\n def self.utc(year : Int32, month : Int32, day : Int32, hour : Int32 = 0, minute : Int32 = 0, second : Int32 = 0, millisecond : Int32 = 0, nanosecond : Int32 = 0) : Time\n def self.utc : Time\n def utc? : Bool\n def self.wall_clock_nanoseconds : UInt64\n # The instant of a day of an ISO 8601 week, as Crystal's `week_date` makes\n # it: `Time.week_date(2016, 1, 1)` is Monday 2016-01-04. A week the year\n # does not have and a day past Sunday are refused, where the other library answered\n # a day of some other week.\n def self.week_date(year : Int32, week : Int32, day_of_week : Int32, hour : Int32 = 0, minute : Int32 = 0, second : Int32 = 0, nanosecond : Int32 = 0) : Time\n # Days since 1970-01-01 of a day of an ISO 8601 week. Week 1 is the week\n # holding January 4th, so its Monday is the Monday on or before that day.\n def self.week_date_days(year : Int32, week : Int32, day_of_week : Int32) : Int64\n # A year has 53 ISO 8601 weeks when it starts on a Thursday, or on a\n # Wednesday in a leap year: either way it has 53 Thursdays, and a week\n # belongs to the year that holds its Thursday.\n def self.weeks_in_year(year : Int32) : Int32\n def year : Int32\n # The zone this instant is in at its location: its abbreviation, offset\n # and whether it is summer time.\n def zone : Location::Zone\nend\n\n# What `Time::Format#parse` and the named parsers answer when the text is not\n# a time the pattern describes. Bad input is the caller's to handle, not a\n# panic: a header or a log line from somewhere else is not a bug in the\n# program reading it. `message` is the sentence, naming the byte the parser\n# stood at and the text; `position` is that byte, counted from 0.\npub struct TimeParseError\n def initialize(message : String, input : String, position : Int32)\n def input : String\n def position : Int32\n def to_s : String\nend\n\nimpl Error for TimeParseError\n def message : String\nend\n\nimpl Std::Traits::Comparable for Span\n def <=>(other : self) : Int32\nend\n\nimpl Error for LocationError\n def message : String\nend\n\nimpl Std::Traits::Comparable for Time\n def <=>(other : self) : Int32\nend\n" + "sourceSha256": "5282622222a57554e3e1f9379004f3fdb2194b89ef3c8829a804b95da1091ac3", + "surface": "module std/time\n\npub struct DayOfWeek\n def ==(other : DayOfWeek) : Bool\n def ===(other : DayOfWeek) : Bool\n def friday? : Bool\n # Hashing follows `==`. Without it a day hashed to its type, `Object#hash`'s\n # default: `Monday.hash == Sunday.hash`, and every day a table held went to\n # one slot.\n def hash : Int32\n def initialize(value : Int32)\n def monday? : Bool\n def saturday? : Bool\n def sunday? : Bool\n def thursday? : Bool\n def to_s : String\n def tuesday? : Bool\n def value : Int32\n def wednesday? : Bool\nend\n\n# A time zone: the offsets from UTC a place has kept, and when it changed\n# from one to the next. `Location.load(\"Europe/Istanbul\")` reads the IANA\n# database the machine has; `Location.local` is the machine's own zone;\n# `Location.fixed(19800)` is an offset and nothing else; `Location::UTC` is\n# UTC. A `Time` carries one, and its date and clock are read in it.\n#\n# The database is the system's TZif files, RFC 8536: `$ZONEINFO` when it\n# names a directory, then `/usr/share/zoneinfo`, `/usr/share/lib/zoneinfo`\n# and `/etc/zoneinfo`. Versions 1 to 4 are read. A time before the first\n# change has the file's first offset, and one after the last has its POSIX\n# footer's rule, so a slim file answers for the year 2100 as a fat one does.\n# Leap seconds are not counted, as no clock this module reads counts them.\n#\n# `Location.local` is the `TZ` variable when it is set — the empty string\n# is UTC, a leading `:` is dropped, an absolute path is a TZif file, a name\n# is looked up in the database, and anything else is read as a POSIX TZ\n# string such as `EST5EDT,M3.2.0,M11.1.0` — and `/etc/localtime` when it is\n# not. Windows has no database to read: there `local` is the system's zone,\n# its rule from `GetTimeZoneInformation`, its zones named by their offsets,\n# and `load` reads `$ZONEINFO` alone. Where nothing answers, local is UTC.\n# The local zone is read once, the first time it is asked for.\n#\n# A location is built once and never changed, so a `Time` that holds one\n# can cross to another task.\npub class Location\n # One offset a location keeps: its abbreviation (`CEST`, `+03`), its\n # seconds east of UTC, and whether it is summer time.\n struct Zone\n def ==(other : Zone) : Bool\n def dst? : Bool\n def initialize(name : String, offset : Int32, dst : Bool)\n def name : String\n def offset : Int32\n def to_s : String\n end\n def ==(other : Location) : Bool\n def self.fixed(name : String, offset : Int32) : Location\n # An offset of *offset* seconds east of UTC and nothing else, named as\n # the offset is written: `+05:30`. Less than a day either way.\n def self.fixed(offset : Int32) : Location\n # One offset, never changing.\n def fixed? : Bool\n def hash : Int32\n def initialize(name : String, zones : Array(Zone), transitions : Array(Int64), transition_zones : Array(Int32), rule : TzRule | ::Nil)\n def inspect : String\n # The zone the IANA database names *name*: `Europe/Istanbul`,\n # `America/New_York`. `UTC` and the empty name are UTC and `Local` is\n # `Location.local`, without a file. A name that climbs out of the database\n # (`..`, a leading `/`, a `\\`) is refused, and so is one no directory has.\n def self.load(name : String) : Location | LocationError\n # The machine's zone; see the type's comment for where it comes from.\n def self.local : Location\n # The machine's own zone, the one `Location.local` answers.\n def local? : Bool\n # The zone *time* is in here.\n def lookup(time : Time) : Zone\n def lookup(unix_seconds : Int64) : Zone\n def name : String\n # A location from the 172 bytes of a Windows TIME_ZONE_INFORMATION, which\n # is what `Location.local` reads on Windows; it is pure so that every\n # platform can check the decoding with bytes made by hand. The struct is\n # the bias in minutes west of UTC (UTC = local + bias), then the standard\n # name, date and bias, then the daylight ones, all little-endian. The\n # three biases are signed LONGs: a zone east of UTC has a negative Bias\n # (Turkey's is -180) and a summer usually a DaylightBias of -60, so each\n # is read as the 32 bits' two's complement. Read as unsigned and then\n # converted, as it once was, -180 was 4294967116 and the conversion\n # panicked with an arithmetic overflow, issue #133.\n #\n # A date with a year of 0 is a rule - the wDay'th wDayOfWeek of wMonth,\n # 5 the last, at the wall time then in force - which is a POSIX\n # `Mm.w.d/time`; one with a month of 0 is no summer. A date with a year\n # is a single year's, which is not a rule at all, and it is read as no\n # summer rather than as every year's. The names are the offset's, `+03`\n # or `-05`, as tzdata writes a zone it has no letters for: the struct's\n # own are Windows' long names, \"Turkey Standard Time\", which are not\n # abbreviations and are localised.\n def self.read_windows_zone(name : String, data : String) : Location | LocationError\n # A location from the bytes of a TZif file, RFC 8536, named *name*.\n # Anything that is not one is refused with what was wrong and where.\n def self.read_zoneinfo(name : String, data : String) : Location | LocationError\n # The instant a wall clock here reads *wall* (seconds since 1970 as a\n # UTC clock would count them). A wall time a change repeats is the\n # earlier of the two instants; one a change skips is read on the clock\n # from before the change, which lands it past the gap: 02:30 on the\n # morning summer starts in Berlin is 03:30 CEST. Python's `fold=0` and\n # Go read them the same way. `Time.local` and a parse at a location ask\n # this.\n def resolve(wall : Int64) : Int64\n def to_s : String\n def utc? : Bool\nend\n\n# What `Location.load` and `Location.read_zoneinfo` answer when there is no\n# zone by that name, or the bytes are not a zone: a name the program was\n# handed or a file on the machine is not a bug in the program, so it is a\n# value and not a panic.\npub struct LocationError\n def initialize(message : String)\n def to_s : String\nend\n\npub struct Span\n def +(other : Span) : Span\n def -(other : Span) : Span\n def - : Span\n def <(other : Span) : Bool\n def <=(other : Span) : Bool\n def <=>(other : Span) : Int32\n def ==(other : Span) : Bool\n def >(other : Span) : Bool\n def >=(other : Span) : Bool\n # The seconds are an Int64, and a span that leaves it is refused here,\n # by name: `Span.seconds(Int64::MAX) + Span.seconds(1)` panicked with the\n # prelude's \"arithmetic overflow\", a sentence that named no span. The\n # wrapping sum is compared with an addend to see whether it wrapped; the\n # product is bounded before it is taken.\n def self.add_seconds(a : Int64, b : Int64) : Int64\n def days : Int64\n def self.days(n : Int64) : Span\n # Hashing follows `==`, the two parts mixed as a tuple's members are. Without\n # it every span hashed to its type: `Span.seconds(1).hash ==\n # Span.days(9).hash`, and a table of 16,000 spans took 0.95 s to fill where\n # the same pairs as tuples took 1 ms.\n def hash : Int32\n def hours : Int32\n def self.hours(n : Int64) : Span\n def initialize(seconds : Int64 = 0_i64, nanoseconds : Int32 = 0)\n def millisecond : Int32\n def milliseconds : Int32\n def self.milliseconds(n : Int64) : Span\n def minutes : Int32\n def self.minutes(n : Int64) : Span\n def self.mul_seconds(n : Int64, unit : Int64) : Int64\n def nanosecond : Int32\n def nanoseconds : Int32\n def self.nanoseconds(n : Int64) : Span\n def self.new(*, days : Int64 = 0_i64, hours : Int64 = 0_i64, minutes : Int64 = 0_i64, seconds : Int64 = 0_i64, milliseconds : Int64 = 0_i64, nanoseconds : Int64 = 0_i64) : Span\n def seconds : Int32\n def self.seconds(n : Int64) : Span\n def self.sub_seconds(a : Int64, b : Int64) : Int64\n def to_i : Int64\n def to_s : String\n def total_days : Float64\n def total_hours : Float64\n def total_milliseconds : Float64\n def total_minutes : Float64\n def total_nanoseconds : Float64\n def total_seconds : Float64\n def total_seconds_i64 : Int64\n def self.zero : Span\nend\n\npub struct Time\n alias DayOfWeek = Std::Time::DayOfWeek\n # A pattern of Crystal's directives, for writing a `Time` and reading one\n # back. Text that is not a directive is written as it is and must be\n # there, byte for byte, when reading; ASCII whitespace in the pattern is\n # written as it is and reads any run of whitespace, none included.\n #\n # %Y year, four digits or more, year -1 as -0001 %C year // 100\n # %y year % 100 %G %g %V the ISO 8601 week year, its last two digits,\n # and the week 01..53 %m month 01..12 %B January %b %h Jan\n # %d day 01..31 %e day \" 1\"..\"31\" %j day of the year 001..366\n # %H hour 00..23 %k \" 0\"..\"23\" %I 01..12 %l \" 1\"..\"12\" %p am %P AM\n # %M minute %S second %L milliseconds %3N %6N %9N the fraction to\n # 3, 6 and 9 digits %N nanoseconds, any number of digits when read\n # %A Sunday %a Sun %u day of the week, Monday 1..7 %w Sunday 0..6\n # %s seconds since the epoch %z +0530 %:z +05:30 %::z +05:30:00\n # %Z and %^Z: UTC at offset 0 and the offset, +05:30, at any other\n # %F %Y-%m-%d %T %X %H:%M:%S %R %H:%M %D %x %m/%d/%y\n # %r %I:%M:%S %P %c %a %b %e %H:%M:%S %Y %n newline %t tab %% %\n #\n # A number takes a flag between the `%` and its letter: `-` for no\n # padding (`%-d` is 5), `_` for spaces (`%_m` is \" 5\") and `0` for zeros\n # (`%0e` is 05); `^` upcases a name (`%^a` is SUN). The other library knows\n # `%-d`, `%-m`, `%_m` and the `^` names. The same flags on its other numbers\n # are this module's, where that library wrote the `%-` back out as text; a `%`\n # that starts no directive is text here as it is there.\n #\n # Reading takes up to a number's width in digits, fewer when the next byte\n # is not a digit, and a name in any case. `%Y` takes four digits when a\n # directive follows it (`%Y%m%d`), and when text or the end of the\n # pattern does (`%F`), an optional `-` and up to ten, so the years `to_s`\n # writes are the years it reads. A field outside its range, a day the\n # month does not have, a name that is not one and text after the pattern\n # are each a `TimeParseError`, never a panic. A day name is checked to be\n # one and not checked against the date, as Crystal, Go and Python read it.\n struct Format\n # The parts of an instant as they read at an offset, worked out once\n # per `format` rather than once per directive. *zone* is what `%Z`\n # writes, the location's abbreviation; with none it writes `UTC` at\n # offset 0 and the offset at any other.\n struct Fields\n def day : Int32\n def day_of_week : Int32\n def day_of_year : Int32\n def hour : Int32\n def initialize(time : Time, offset : Int32, zone : String | ::Nil)\n def minute : Int32\n def month : Int32\n def nanosecond : Int32\n def offset : Int32\n def second : Int32\n def unix : Int64\n def week : ::Tuple(Int64, Int32)\n def year : Int32\n def zone : String | ::Nil\n end\n # The HTTP date of RFC 9110 section 5.6.7. It is written as the\n # IMF-fixdate, always in GMT, `Sun, 06 Nov 1994 08:49:37 GMT`; it is\n # read in all three of the forms a recipient must accept: that one, the\n # obsolete RFC 850 `Sunday, 06-Nov-94 08:49:37 GMT`, and asctime's\n # `Sun Nov 6 08:49:37 1994`.\n module HTTP_DATE\n def self.format(time : Time) : String\n def self.parse(string : String) : Time | TimeParseError\n end\n # ISO 8601's calendar date, written `2016-02-15` as the date reads at\n # *offset* or in the time's own location; read extended or basic, and\n # as an ordinal or a week date, at *offset* since a date names no zone.\n module ISO_8601_DATE\n def self.format(time : Time, offset : Int32 | ::Nil = nil) : String\n def self.parse(string : String, offset : Int32 = 0) : Time | TimeParseError\n end\n # ISO 8601's date and time, written as RFC 3339 writes it and read with\n # every form of `ISO_8601_DATE` and `ISO_8601_TIME` joined by an\n # optional `T`. The zone is required, as Crystal requires it.\n module ISO_8601_DATE_TIME\n def self.format(time : Time, offset : Int32 | ::Nil = nil) : String\n def self.parse(string : String) : Time | TimeParseError\n end\n # ISO 8601's time of day and its zone, `04:35:50Z`; read as on\n # 0001-01-01, the day Crystal reads it on.\n module ISO_8601_TIME\n def self.format(time : Time, offset : Int32 | ::Nil = nil) : String\n def self.parse(string : String) : Time | TimeParseError\n end\n # Reads a text by a pattern or by one of the named grammars. Every step\n # answers whether it matched; the first that did not leaves its sentence\n # in `@error`, and `finish` answers that, so no text a program is handed\n # ends it in a panic.\n class Parser\n def accept(char : Char) : Bool\n def am_pm : Bool\n def at_end : Bool\n # RFC 5322's CFWS: whitespace and parenthesised comments, which nest\n # and in which `\\` quotes the next byte. Answers whether there was any;\n # a comment left open is the error, and the parse fails on it.\n def cfws : Bool\n def day_name : Bool\n def self.digit?(b : UInt8) : Bool\n # Up to *max* digits and at least one. Nil, with the sentence, when\n # there are none, or when they are past what an Int64 holds.\n def digits(max : Int32, what : String) : Int64 | ::Nil\n def directive(letter : Char, flag : Char, digits : Int32, wide : Bool) : Bool\n # Exactly *count* digits, or nil, reading nothing and saying nothing:\n # the caller names what was missing.\n def exact(count : Int32) : Int32 | ::Nil\n def expect(char : Char) : Bool\n def fail(what : String) : Bool\n # A numeric directive's field, read as its flag and its padding say.\n def field(width : Int32, pad : Char, flag : Char, what : String) : Int32 | ::Nil\n # The instant the fields name, or the first sentence a step left. The\n # fields are checked the way `Time.utc` checks them, with RFC 3339's\n # allowance: `:60` is a leap second, read as the second after `:59`,\n # the instant it names on every clock that has none. A text that\n # names no zone is read at *default_offset*, or failing that on\n # *location*'s wall clock; with a location the time answered is in it.\n def finish(default_offset : Int32 | ::Nil, location : Location | ::Nil = nil) : Time | TimeParseError\n # A fraction of a second: up to *max* digits, scaled to nanoseconds,\n # and for `%N` any digits past the ninth read and dropped.\n def fraction(max : Int32, rest : Bool) : Bool\n # RFC 9110 section 5.6.7's three forms of an HTTP date: the\n # IMF-fixdate `Sun, 06 Nov 1994 08:49:37 GMT`, the obsolete RFC 850\n # `Sunday, 06-Nov-94 08:49:37 GMT`, and asctime's `Sun Nov 6 08:49:37\n # 1994`, which has no zone and is GMT. Crystal's reading: a day name,\n # short or long, in any of the three; the four-digit year IIS writes\n # in the RFC 850 shape; and the zones RFC 2822 names where RFC 9110\n # writes GMT.\n def http_date : Bool\n def initialize(input : String)\n # ISO 8601's dates, extended or basic: 2016-02-15 and 20160215, the\n # ordinal 2016-046 and 2016046, and the week date 2016-W07-1 and\n # 2016W071.\n def iso_date : Bool\n def iso_date_time : Bool\n # ISO 8601's time of day, extended or basic: 04:35:50 and 043550, a\n # fraction of the second after `.` or `,`, or the minutes or the hour\n # alone with a fraction of their own (04:35.5 is 04:35:30).\n def iso_time : Bool\n def self.letter?(b : UInt8) : Bool\n def literal(b : UInt8) : Bool\n def month_name(short : Bool) : Bool\n # A run of ASCII letters and the index in *names* of the name it\n # spells, in any case: for *short*, the first three letters of a name\n # and no more; otherwise the start of a name, three letters or longer,\n # as Crystal reads `%B` and `%A`.\n def name(names : Array(String), short : Bool, what : String) : Int32 | ::Nil\n def need_cfws : Bool\n def number(max : Int32, what : String) : Int32 | ::Nil\n def offset_number(allow_colon : Bool, force_colon : Bool, allow_seconds : Bool) : Bool\n # A number blank padded, as `%e` writes \" 5\": one space stands for a\n # digit.\n def padded_number(max : Int32, what : String) : Int32 | ::Nil\n def pattern(pattern : String) : Bool\n # The byte *ahead* of the current one, or 0 past the end, as Crystal's\n # reader answers '\\0' there.\n def peek(ahead : Int32 = 0) : UInt8\n # RFC 9110's rule for a two-digit year (section 5.6.7): a year that\n # appears to be more than 50 years in the future is the most recent\n # past year with those last two digits. The candidate is taken in this\n # century and moved a century to land in the 100 years ending 50 years\n # from now, so the rule holds in 2090 too. The other library read 00..49 as 20xx\n # and the rest as 19xx, whatever the year it was read in.\n def self.recent_year(two_digits : Int64) : Int64\n # A sentence about fields that were all read, where no one byte is to\n # blame.\n def refuse(what : String) : TimeParseError\n # RFC 5322 section 3.3's date-time, with section 4.3's obsolete\n # two- and three-digit years and zone names, as Crystal's `RFC_2822`\n # reads it: `Mon, 15 Feb 2016 04:35:50 +0000`, the day name and the\n # seconds optional, comments anywhere whitespace goes.\n def rfc_2822 : Bool\n def same_letters?(start : Int32, name : String, size : Int32) : Bool\n def skip_spaces : Bool\n def self.space?(b : UInt8) : Bool\n def text(start : Int32, stop : Int32) : String\n # HH:MM:SS, as both HTTP and RFC 850 write the time of day.\n def time_of_day : Bool\n # One whitespace byte, as the HTTP grammars put between their parts.\n def whitespace : Bool\n # `%Y`: four digits when a directive follows it, and an optional `-`\n # and up to ten when text does, which is every year an Int32 holds.\n def year(wide : Bool) : Int64 | ::Nil\n # Exactly four digits, as the HTTP and ISO 8601 grammars write a year.\n def year4 : Bool\n # `%z`, `%:z` and `%::z` alike, as Crystal reads them: `Z`, `UTC`, or\n # an offset with or without its colons.\n def zone : Bool\n # `%Z`: an offset, or a name read up to the next whitespace. Only the\n # names of UTC itself are read: an abbreviation names no single zone\n # (CST is three of them), so any other is refused by name rather than\n # read as UTC or guessed at. A text whose zone is known is read at\n # that `Location` instead.\n def zone_name : Bool\n # RFC 5322's zone (section 3.3, and 4.3 for the obsolete names): an\n # offset of four digits, or a name. A military letter is read as\n # `-0000`, the offset of a time whose zone is not known, as section\n # 4.3 says to; a name the RFC does not give is refused, where Crystal\n # read it as UTC in silence. `UTC` is not the RFC's, and is read as\n # Crystal reads it.\n def zone_rfc2822 : Bool\n # ISO 8601's zone: `Z` or an offset.\n def zone_z_or_offset : Bool\n end\n # RFC 2822's date and time, `Mon, 15 Feb 2016 04:35:50 +0000`, as\n # Crystal writes it: the day of the month unpadded, the offset at the\n # end, the time's own unless another is given. RFC 2822 writes an offset\n # in whole minutes, so an offset with seconds is refused rather than\n # written as some other instant.\n module RFC_2822\n def self.format(time : Time, offset : Int32 | ::Nil = nil) : String\n def self.parse(string : String) : Time | TimeParseError\n end\n # RFC 3339, the module's own serialisation: `to_rfc3339` and\n # `parse_rfc3339` are this module's `format` and `parse`, and\n # `parse_rfc3339` panics with the sentence `parse` answers. Written at\n # *offset*, or at the time's own when it is whole minutes and in UTC\n # when it is not.\n module RFC_3339\n def self.format(time : Time, fraction_digits : Int32 = 0, offset : Int32 | ::Nil = nil) : String\n def self.parse(str : String) : Time | TimeParseError\n end\n # An offset is less than a day either side of UTC: the widest RFC 3339\n # and RFC 2822 write is 23:59, and a day or more is a date, not a zone.\n # An offset is the program's own, so a wrong one is a panic.\n def self.check_offset(offset : Int32) : Nil\n def format(time : Time, offset : Int32) : String\n def format(time : Time) : String\n # *offset*, seconds east of UTC, is the one a parse reads a text at when\n # the text names no zone, and the one `format` writes at. Nil, as for\n # Crystal's `Format.new(pattern)`, makes a text without a zone an error,\n # and `format` writes a time in its own location.\n def initialize(pattern : String, offset : Int32 | ::Nil = nil)\n # A text that names no zone is read on *location*'s wall clock, and\n # every time is read and written in *location*.\n def initialize(pattern : String, location : Location)\n # The directive at the `%` at byte *i* of *pattern*: the byte after it,\n # its letter, its flag, the colons of `%:z` and `%::z`, and the digits of\n # `%3N`. A `%` that starts no directive answers the letter '\\0' and the\n # byte after the `%`: it is text, and so is what follows it, as Crystal\n # writes `%Q` back out as `%Q`.\n def self.lex(pattern : String, i : Int32) : ::Tuple(Int32, Char, Char, Int32, Int32)\n def location : Location | ::Nil\n def self.name(io : String::Builder, text : String, flag : Char) : Nil\n # A number padded to *width* with *pad*, '\\0' for none, unless a flag\n # says otherwise. The sign of a negative year goes in front of the\n # padding, as `-0001`, the way `to_rfc3339` writes it.\n def self.number(io : String::Builder, value : Int64, width : Int32, pad : Char, flag : Char) : Nil\n def self.numeric?(letter : Char) : Bool\n def offset : Int32 | ::Nil\n # `+hh:mm` or `+hhmm`, and the seconds never (0), when there are any (1)\n # or always (2), the way Crystal's `Zone#format` writes an offset.\n def self.offset_text(offset : Int32, colon : Bool, seconds : Int32) : String\n def parse(string : String, offset : Int32 | ::Nil) : Time | TimeParseError\n def parse(string : String) : Time | TimeParseError\n def pattern : String\n def self.plain?(letter : Char) : Bool\n def self.textual?(letter : Char) : Bool\n def self.twelve(hour : Int32) : Int64\n def self.write(io : String::Builder, pattern : String, f : Fields) : Nil\n def self.write_directive(io : String::Builder, letter : Char, flag : Char, colons : Int32, digits : Int32, f : Fields) : Nil\n end\n struct KernelTimeSpec\n def initialize(tv_sec : Int64, tv_nsec : Int64)\n def tv_nsec : Int64\n def tv_nsec=(value : Int64) : Int64\n def tv_sec : Int64\n def tv_sec=(value : Int64) : Int64\n end\n alias Location = Std::Time::Location\n alias Span = Std::Time::Span\n # The sum is checked before it is taken, so a span too long for the\n # seconds is refused as one; a sum that fits but leaves the years an\n # Int32 names is refused by the constructor. A span is exact: a day\n # added across the night summer begins is 24 hours, and the clock reads\n # an hour later than it did.\n def +(span : Span) : Time\n def -(span : Span) : Time\n def -(other : Time) : Span\n def <(other : Time) : Bool\n def <=(other : Time) : Bool\n def <=>(other : Time) : Int32\n def ==(other : Time) : Bool\n def >(other : Time) : Bool\n def >=(other : Time) : Bool\n # The ISO 8601 week-numbering year and week this day falls in, as\n # Crystal's `calendar_week` answers: 2021-01-01 is in week 53 of 2020.\n def calendar_week : ::Tuple(Int32, Int32)\n # Converts days since 1970-01-01 into {year, month, day}.\n def self.civil_from_days(z : Int64) : ::Tuple(Int32, Int32, Int32)\n def day : Int32\n def day_of_week : DayOfWeek\n def day_of_year : Int32\n def self.days_from_civil(y : Int64, m : Int32, d : Int32) : Int64\n def self.days_in_month(year : Int32, month : Int32) : Int32\n def self.days_in_year(year : Int32) : Int32\n # Number of days between 1970-01-01 and the given civil date.\n # Follows Howard Hinnant's Gregorian calendar algorithm.\n def self.floor_div(a : Int64, b : Int64) : Int64\n def self.floor_mod(a : Int64, b : Int64) : Int64\n def self.from_unix(seconds : Int64, nanoseconds : Int32 = 0) : Time\n def self.from_unix_ms(milliseconds : Int64) : Time\n # Hashing follows `==`, as `Span`'s does. Without it every time hashed to its\n # type: `Time.unix(1).hash == Time.unix(1000000, 5).hash`, and a table of\n # 16,000 times took 1.2 s to fill where the same pairs as tuples took 1 ms.\n def hash : Int32\n def hour : Int32\n # The same instant read in *location*: `Time.utc(2024, 7, 1, 12).in(berlin)`\n # is 14:00 CEST.\n def in(location : Location) : Time\n def initialize(seconds : Int64, nanoseconds : Int32 = 0, location : Location = Location::UTC)\n # As the other library writes it: the date and time, the nanoseconds\n # when there are any, and `Z`. There was no `inspect`, so it was `to_s`,\n # and `Time.utc(2024, 1, 1, 0, 0, 0, nanosecond: 5)` inspected as\n # `2024-01-01 00:00:00 UTC`, the same as `Time.utc(2024, 1, 1)`, which\n # `==` tells apart from it. Out of UTC the offset follows, and the\n # location's name when it is more than an offset:\n # `2016-02-15 11:20:30 +01:00 Europe/Berlin`.\n def inspect : String\n # The ISO 8601 week-numbering year and week of a date, from its year, day\n # of the month, day of the year and day of the week (Monday is 1). This is\n # Crystal's computation: the week is the count of Mondays up to the day,\n # and the first days of January or the last of December can belong to a\n # week of the year next to it. The year is an Int64 because the first days\n # of the smallest Int32 year belong to the year before it.\n def self.iso_week(year : Int64, day : Int32, day_of_year : Int32, day_of_week : Int32) : ::Tuple(Int64, Int32)\n def self.kernel_clock_gettime(clock_id : Int64) : ::Tuple(Int64, Int64)\n def self.leap_year?(year : Int32) : Bool\n # The time a clock in *location* shows as the date and time given, the\n # machine's own zone when none is. Its fields are checked as `utc` checks\n # them. A wall time a change of offset repeats, the hour after summer\n # ends, is the earlier of the two; one a change skips, the hour summer\n # begins with, is read past the gap (see `Location#resolve`).\n def self.local(year : Int32, month : Int32, day : Int32, hour : Int32 = 0, minute : Int32 = 0, second : Int32 = 0, millisecond : Int32 = 0, nanosecond : Int32 = 0, location : Location = Location.local) : Time\n # Now, read in *location*.\n def self.local(location : Location) : Time\n # Now, in the machine's own zone (`Location.local`).\n def self.local : Time\n def local? : Bool\n # The zone the date and clock are read in, and its offset from UTC at\n # this instant in seconds east. `==`, `<=>` and `hash` are the instant's\n # and do not look at either: noon in London and 13:00 in Paris are the\n # same time.\n def location : Location\n def millisecond : Int32\n def milliseconds : Int32\n def minute : Int32\n def self.monotonic : Span\n def self.monotonic_nanoseconds : UInt64\n def month : Int32\n def nanosecond : Int32\n def nanoseconds : Int32\n def self.new(year : Int32, month : Int32, day : Int32, hour : Int32 = 0, minute : Int32 = 0, second : Int32 = 0, millisecond : Int32 = 0, nanosecond : Int32 = 0) : Time\n def offset : Int32\n def self.pad2(n : Int32) : String\n def self.pad3(n : Int32) : String\n # Four digits, and a negative year keeps its sign in front of them rather\n # than inside: written as `n < 10 ? \"000\" + n.to_s`, year -1 printed\n # `000-1-01-01`, which is neither a year nor a date. ISO 8601 spells it\n # `-0001`, and the conversions themselves were right all along - the epoch\n # round-trips through it.\n def self.pad4(n : Int32) : String\n def self.pad6(n : Int32) : String\n def self.pad9(n : Int32) : String\n # Reads *string* by *pattern*'s directives (see `Time::Format`). A text\n # that names no zone is read at *offset* seconds east of UTC, as Crystal's\n # `Time.parse` reads one at the location it is given.\n def self.parse(string : String, pattern : String, offset : Int32) : Time | TimeParseError\n # Reads *string* by *pattern* in *location*: a text that names no zone is\n # the wall clock there, its offset the one the location kept at that date\n # (a wall time a change repeats or skips is read as `Time.local` reads\n # it), and the time answered is in *location* whether the text named a\n # zone or not.\n def self.parse(string : String, pattern : String, location : Location) : Time | TimeParseError\n def self.parse_iso8601(string : String) : Time | TimeParseError\n # `parse` in the machine's own zone.\n def self.parse_local(string : String, pattern : String) : Time | TimeParseError\n # Any of RFC 9110's three HTTP date forms; see `Time::Format::HTTP_DATE`.\n def self.parse_rfc1123(string : String) : Time | TimeParseError\n def self.parse_rfc2822(string : String) : Time | TimeParseError\n # Parses an RFC 3339 / ISO 8601 string into a UTC Time, and panics with the\n # parser's sentence when it is not one. Handles forms like:\n # 2024-02-29T12:30:45Z\n # 2024-02-29T12:30:45.123Z\n # 2024-02-29T12:30:45.123456789Z\n # 2024-02-29 12:30:45Z\n # 2024-02-29T12:30:45+05:00\n # 2024-02-29T12:30:45-08:00\n # -0001-01-01T00:00:00Z and 12345-06-07T08:09:10Z, as `to_rfc3339` writes them\n # `Time::Format::RFC_3339.parse` reads the same grammar and answers a\n # `TimeParseError` instead, for text the program did not write itself.\n def self.parse_rfc3339(str : String) : Time\n # `parse` at UTC when the text names no zone.\n def self.parse_utc(string : String, pattern : String) : Time | TimeParseError\n def second : Int32\n def seconds : Int64\n # Moves the date by calendar years and months, then by weeks and days,\n # then by the smaller units, in that order, as Crystal's `shift` does. A\n # day the month does not have becomes its last: `Time.utc(2024, 1,\n # 31).shift(months: 1)` is 2024-02-29. The date moves on the wall clock\n # of the time's location, so the time of day is kept across a change of\n # offset - a day after 12:00 on the Saturday summer begins is 12:00 on\n # Sunday, 23 hours later - and the hours, minutes, seconds and\n # nanoseconds are exact. A year past an Int32 is refused with the\n # constructor's sentence, and a span the Int64 seconds do not hold with\n # `Span`'s.\n def shift(*, years : Int32 = 0, months : Int32 = 0, weeks : Int64 = 0_i64, days : Int64 = 0_i64, hours : Int64 = 0_i64, minutes : Int64 = 0_i64, seconds : Int64 = 0_i64, nanoseconds : Int64 = 0_i64) : Time\n def to_local : Time\n # RFC 1123's date as HTTP writes it, RFC 9110's IMF-fixdate, always in GMT:\n # `Sun, 06 Nov 1994 08:49:37 GMT`.\n def to_rfc1123 : String\n # RFC 2822's date, `Mon, 15 Feb 2016 04:35:50 +0000`, at *offset*, or at\n # the time's own offset when none is given.\n def to_rfc2822(offset : Int32 | ::Nil = nil) : String\n # RFC 3339 at the time's own offset: `Z` at UTC, `+02:00` in CEST. An\n # offset RFC 3339 cannot write, one with seconds in it as local mean time\n # before standard time had, is written as the same instant in UTC.\n def to_rfc3339(fraction_digits : Int32 = 0) : String\n # The instant written as it reads at *offset* seconds east of UTC:\n # `to_s(\"%F %T %:z\", 19800)` is the wall clock in India.\n def to_s(format : String, offset : Int32) : String\n # The time written by *format*'s directives (see `Time::Format`) as its\n # own location reads it; `%Z` is the zone's abbreviation, `CEST`.\n def to_s(format : String) : String\n # `2016-02-15 10:20:30 UTC`, and in any other location the offset in\n # place of `UTC`: `2016-02-15 11:20:30 +01:00`.\n def to_s : String\n def to_unix : Int64\n def to_unix_f : Float64\n # Refused with the module's sentence past the milliseconds an Int64\n # holds, some 292 million years either side of 1970, where the multiply\n # was the prelude's bare \"arithmetic overflow\" for a year `Time.utc`\n # accepts, 300,000,000. Both edges answer to the last millisecond that\n # fits: the lowest 808 an Int64 holds were refused, so\n # `Time.unix_ms(Int64::MIN).to_unix_ms` panicked. A negative second is\n # taken one up and its milliseconds from 1000 down, so the product fits\n # too.\n def to_unix_ms : Int64\n def to_utc : Time\n def self.unix(seconds : Int64, nanoseconds : Int32 = 0) : Time\n def self.unix_ms(milliseconds : Int64) : Time\n def self.utc(year : Int32, month : Int32, day : Int32, hour : Int32 = 0, minute : Int32 = 0, second : Int32 = 0, millisecond : Int32 = 0, nanosecond : Int32 = 0) : Time\n def self.utc : Time\n def utc? : Bool\n def self.wall_clock_nanoseconds : UInt64\n # The instant of a day of an ISO 8601 week, as Crystal's `week_date` makes\n # it: `Time.week_date(2016, 1, 1)` is Monday 2016-01-04. A week the year\n # does not have and a day past Sunday are refused, where the other library answered\n # a day of some other week.\n def self.week_date(year : Int32, week : Int32, day_of_week : Int32, hour : Int32 = 0, minute : Int32 = 0, second : Int32 = 0, nanosecond : Int32 = 0) : Time\n # Days since 1970-01-01 of a day of an ISO 8601 week. Week 1 is the week\n # holding January 4th, so its Monday is the Monday on or before that day.\n def self.week_date_days(year : Int32, week : Int32, day_of_week : Int32) : Int64\n # A year has 53 ISO 8601 weeks when it starts on a Thursday, or on a\n # Wednesday in a leap year: either way it has 53 Thursdays, and a week\n # belongs to the year that holds its Thursday.\n def self.weeks_in_year(year : Int32) : Int32\n def year : Int32\n # The zone this instant is in at its location: its abbreviation, offset\n # and whether it is summer time.\n def zone : Location::Zone\nend\n\n# What `Time::Format#parse` and the named parsers answer when the text is not\n# a time the pattern describes. Bad input is the caller's to handle, not a\n# panic: a header or a log line from somewhere else is not a bug in the\n# program reading it. `message` is the sentence, naming the byte the parser\n# stood at and the text; `position` is that byte, counted from 0.\npub struct TimeParseError\n def initialize(message : String, input : String, position : Int32)\n def input : String\n def position : Int32\n def to_s : String\nend\n\nimpl Error for TimeParseError\n def message : String\nend\n\nimpl Std::Traits::Comparable for Span\n def <=>(other : self) : Int32\nend\n\nimpl Error for LocationError\n def message : String\nend\n\nimpl Std::Traits::Comparable for Time\n def <=>(other : self) : Int32\nend\n" }, { "name": "std/tls", "path": "src/std/tls.iyi", - "sourceSha256": "2f58e8374471f2f0d7e5d87a6cd69536dfe8c0af325c7a7b37e04faebac72766", - "surface": "module std/tls\n\n# The alerts of RFC 8446 section 6, by the code each is sent as.\npub struct TlsAlert\n def initialize\nend\n\n# A connection to a server, its handshake done.\npub class TlsClient < TlsConnection\n # A connection to *host* on *port*, its handshake done and the server's\n # certificate checked for *host*.\n def self.connect(host : String, port : Int32, config : TlsConfig = TlsConfig.new, timeout_ms : Int32 = -1) : TlsClient | TlsError\n def handshake : TlsError | ::Nil\n def initialize(socket : IyiSocket, host : String, config : TlsConfig)\n # The handshake over a connected *socket*, for *host*, done within\n # *timeout_ms* (none when 0).\n def self.over(socket : IyiSocket, host : String, config : TlsConfig = TlsConfig.new, timeout_ms : Int32 = HANDSHAKE_TIMEOUT_MS) : TlsClient | TlsError\n def server_side? : Bool\nend\n\n# What a connection is checked against and offers.\npub class TlsConfig\n # Protocols offered by ALPN (RFC 7301), most wanted first: `[\"h2\",\n # \"http/1.1\"]`. None offered when empty.\n def alpn : Array(String)\n # Protocols offered by ALPN (RFC 7301), most wanted first: `[\"h2\",\n # \"http/1.1\"]`. None offered when empty.\n def alpn=(value : Array(String)) : Array(String)\n # The certificate and key sent to a server that asks for one (mutual\n # TLS), when the request names its scheme; none sent when nil.\n def identity : TlsIdentity | ::Nil\n # The certificate and key sent to a server that asks for one (mutual\n # TLS), when the request names its scheme; none sent when nil.\n def identity=(value : TlsIdentity | ::Nil) : TlsIdentity | ::Nil\n def initialize\n # The oldest version spoken. TLS 1.3 by default, and then a server that\n # answers in 1.2 is refused as one that does not speak 1.3; `TLS12`\n # offers 1.2 beside it (see the module's header for what it requires).\n def min_version : TlsVersion\n # The oldest version spoken. TLS 1.3 by default, and then a server that\n # answers in 1.2 is refused as one that does not speak 1.3; `TLS12`\n # offers 1.2 beside it (see the module's header for what it requires).\n def min_version=(value : TlsVersion) : TlsVersion\n # The time certificates are checked at; now when nil.\n def now : Time | ::Nil\n # The time certificates are checked at; now when nil.\n def now=(value : Time | ::Nil) : Time | ::Nil\n # The roots a server's chain must reach; the system's when nil, read\n # once for the whole process and kept, since reading them is most of a\n # handshake's own cost.\n def roots : Array(Certificate) | ::Nil\n # The roots a server's chain must reach; the system's when nil, read\n # once for the whole process and kept, since reading them is most of a\n # handshake's own cost.\n def roots=(value : Array(Certificate) | ::Nil) : Array(Certificate) | ::Nil\n def trusted_roots : Array(Certificate) | TlsError\nend\n\n# What either end of a connection does once it has keys: records read and\n# written under them, alerts, KeyUpdate, close_notify. `TlsClient` and\n# `TlsServer` are its two ends; each runs its own half of the handshake.\npub abstract class TlsConnection\n def abort : Nil\n # The protocol chosen by ALPN, if one was.\n def alpn_protocol : String | ::Nil\n def cipher_suite : String\n # close_notify, then the socket closed.\n def close : Nil\n def closed? : Bool\n # *length* bytes bound to this connection, for *label* and *context*\n # (RFC 8446 section 7.5, RFC 5705's interface): the same at both ends and\n # nowhere else - a channel binding, or keys for another protocol riding\n # on this one. No context is the empty one, as TLS 1.3 has it; in TLS\n # 1.2 (RFC 5705 section 4, over the extended master secret) an empty\n # context is none, as OpenSSL's exporter takes it when told of none.\n def export_keying_material(label : String, context : Array(UInt8) = [] of UInt8, length : Int32 = 32) : Array(UInt8)\n # The alert the error names (its last parenthesised word), sent before\n # the socket closes, by either end (RFC 8446 section 6.2): under the keys\n # this side writes with, or in the clear before there are any. None for\n # an alert the peer sent, whose sentence names no alert of this side's.\n # A server then reads and drops what the client goes on sending, until\n # it closes, for at most `LINGER_BYTES` and `LINGER_MS` in all: a close\n # with the client's flight unread is a reset, which can take the alert\n # from the client's buffer before it is read - a client refused for its\n # certificate would read \"reset\", not why.\n protected def fail(error : TlsError) : TlsError\n def self.group_name(group : Int32) : String\n def initialize(socket : IyiSocket, peer : String, place : String)\n # Records one write key carries before the next (RFC 8446 section 5.5:\n # AES-GCM's is 2^24.5 full records; ChaCha20-Poly1305's far more): past\n # it, the next write moves to new keys first - or, in TLS 1.2, which has\n # no KeyUpdate, is refused, and the connection with it. Settable, for a\n # test.\n def key_limit : UInt64\n # Records one write key carries before the next (RFC 8446 section 5.5:\n # AES-GCM's is 2^24.5 full records; ChaCha20-Poly1305's far more): past\n # it, the next write moves to new keys first - or, in TLS 1.2, which has\n # no KeyUpdate, is refused, and the connection with it. Settable, for a\n # test.\n def key_limit=(value : UInt64) : UInt64\n # Moves this side's writes to new keys (section 4.6.3), asking the peer\n # to move its own when *request*: what `write` does by itself at\n # `key_limit`, for a program that wants it sooner. TLS 1.2 has no\n # KeyUpdate: there it is a `TlsError`, and the connection stays open.\n def key_update(request : Bool = false) : TlsError | ::Nil\n # The chain the peer's certificate was checked through, leaf first: the\n # server's, for a client; the client's, for a server that asked for one.\n def peer_certificates : Array(Certificate)\n # Up to *max* bytes the peer sent: \"\" once it has closed with\n # close_notify. The socket's read timeout bounds the whole call.\n def read(max : Int32 = 16384) : String | TlsError\n # How long a read or a write of the connection under it may wait.\n def read_timeout_ms=(ms : Int32 | ::Nil) : Int32 | ::Nil\n # Whether this is the server's end.\n abstract def server_side? : Bool\n # The version negotiated: \"TLSv1.3\", or \"TLSv1.2\" for a client whose\n # server chose it.\n def version : String\n # *block* under a deadline *ms* from now (none when 0), cleared after.\n protected def within(ms : Int32, &block : (-> T)) : T forall T\n # Sends *data*, in records of at most 2^14 bytes; answers its size.\n def write(data : String | Array(UInt8)) : Int32 | TlsError\n def write_timeout_ms=(ms : Int32 | ::Nil) : Int32 | ::Nil\nend\n\n# What a connection answers when it cannot be made or kept, or a read that\n# came back with nothing yet.\npub struct TlsError\n # The alert this refusal sends the peer (`TlsAlert`), or nil: none for a\n # failure of the socket, or for an alert the peer sent.\n def alert : UInt8 | ::Nil\n def cancelled? : Bool\n # *message*, the alert's name after it when there is one: the sentence\n # shows the alert, and the alert is the field, not the sentence.\n def initialize(message : String, alert : UInt8 | ::Nil = nil, timed_out : Bool = false, cancelled : Bool = false)\n # A read that waited past its timeout, or that was cancelled: nothing was\n # lost and the connection is open - read again. Any other error ended it.\n def timed_out? : Bool\n def to_s : String\nend\n\n# A certificate chain, leaf first, and the key that signs for it -\n# Ed25519, ECDSA on P-256 (std/p256) or RSA (std/rsa), each in constant\n# time: what a server presents, and what a client presents when a server\n# asks.\npub class TlsIdentity\n # The ClientCertificateType a TLS 1.2 CertificateRequest must list for\n # this key: rsa_sign (1), or ecdsa_sign (64) for P-256 and, by RFC 8422\n # section 5.5, Ed25519.\n def certificate_type : UInt8\n # The chain as sent, leaf first, each certificate's DER.\n def chain : Array(Array(UInt8))\n # *chain*'s certificates, leaf first, and the 32-byte Ed25519 *seed*\n # that is the leaf's private key.\n def self.from_der(chain : Array(Array(UInt8)), seed : Array(UInt8)) : TlsIdentity | TlsError\n # *chain*'s certificates, leaf first, and the P-256 *key* that is the\n # leaf's.\n def self.from_der(chain : Array(Array(UInt8)), key : P256PrivateKey) : TlsIdentity | TlsError\n # *chain*'s certificates, leaf first, and the RSA *key* that is the\n # leaf's (2048 bits or more, std/rsa's floor for signing).\n def self.from_der(chain : Array(Array(UInt8)), key : RsaPrivateKey) : TlsIdentity | TlsError\n # The chain in *certificates*' CERTIFICATE blocks, leaf first, and the\n # leaf's private key in *private_key*: a PRIVATE KEY block (PKCS #8, an\n # Ed25519 key as RFC 8410 section 7 writes it, a P-256 one as RFC 5915\n # does, or an RSA one), an EC PRIVATE KEY block (SEC 1) or an RSA\n # PRIVATE KEY block (PKCS #1) - or why they are not a certificate and\n # key.\n def self.from_pem(certificates : String, private_key : String) : TlsIdentity | TlsError\n def initialize(chain : Array(Array(UInt8)), leaf : Certificate, schemes : Array(Int32), seed : Array(UInt8) | ::Nil, p256 : P256PrivateKey | ::Nil, rsa : RsaPrivateKey | ::Nil)\n def leaf : Certificate\n # The scheme to sign under for a peer that takes *offered* (its\n # signature_algorithms, in its order): the first of them this key makes,\n # or nil when it makes none.\n def scheme_for(offered : Array(Int32)) : Int32 | ::Nil\n # A scheme by the name RFC 8446 gives it.\n def self.scheme_name(scheme : Int32) : String\n # Schemes by name, for a sentence: \"a, b or c\".\n def self.scheme_names(schemes : Array(Int32)) : String\n # The schemes CertificateVerify can be signed under, by the key's kind:\n # ed25519 (0x0807), ecdsa_secp256r1_sha256 (0x0403), or for an RSA key\n # rsa_pss_rsae_sha256, -384 and -512 (0x0804 to 0x0806). PKCS #1 v1.5\n # is never one: RFC 8446 section 4.2.3 keeps it out of CertificateVerify.\n def schemes : Array(Int32)\n # The leaf key's signature of *content* under *scheme*, one of\n # `schemes`: what CertificateVerify carries.\n def sign(scheme : Int32, content : Array(UInt8)) : Array(UInt8)\nend\n\n# The key schedule of one connection (RFC 8446 section 7.1), over the\n# cipher suite's hash: SHA-384 for TLS_AES_256_GCM_SHA384, SHA-256 for the\n# other two.\npub class TlsKeySchedule\n # Derive-Secret over the messages so far.\n def derive_secret(secret : Array(UInt8), label : String, transcript : Array(UInt8)) : Array(UInt8)\n # The early secret with no PSK, and the \"derived\" salt for the next stage.\n def early_secret : Array(UInt8)\n # HKDF-Expand-Label: the label prefixed \"tls13 \", and the context, in an\n # HkdfLabel.\n def expand_label(secret : Array(UInt8), label : String, context : Array(UInt8), length : Int32) : Array(UInt8)\n def extract(salt : Array(UInt8), ikm : Array(UInt8)) : Array(UInt8)\n # A Finished message's verify_data under *secret* (section 4.4.4).\n def finished(secret : Array(UInt8), transcript : Array(UInt8)) : Array(UInt8)\n def handshake_secret(shared : Array(UInt8)) : Array(UInt8)\n def hash(data : Array(UInt8)) : Array(UInt8)\n def hash_size : Int32\n def hmac(key : Array(UInt8), data : Array(UInt8)) : Array(UInt8)\n def initialize(sha384 : Bool)\n def master_secret(handshake_secret : Array(UInt8)) : Array(UInt8)\n # The next generation of a traffic secret (section 7.2).\n def next_secret(secret : Array(UInt8)) : Array(UInt8)\n # TLS 1.2's PRF (RFC 5246 section 5): P_hash over this schedule's hash -\n # SHA-256, or SHA-384 for a suite that names it - keyed by *secret*, over\n # *label* and *seed*, *length* bytes of it.\n def prf(secret : Array(UInt8), label : String, seed : Array(UInt8), length : Int32) : Array(UInt8)\n def zeros : Array(UInt8)\nend\n\n# One direction's record protection (section 5.2): the AEAD keyed from a\n# traffic secret, and the record sequence number its nonces are made of -\n# or TLS 1.2's, keyed from its key block.\npub class TlsRecordCipher\n # TLS_AES_128_GCM_SHA256, TLS_AES_256_GCM_SHA384, TLS_CHACHA20_POLY1305_SHA256.\n def initialize(suite : Int32, schedule : TlsKeySchedule, secret : Array(UInt8))\n # TLS 1.2's (RFC 5246 section 6.2.3.3) for one of its AEAD suites, *key*\n # and *iv* from the key block: AES-GCM's four-byte salt, to which each\n # record's eight-byte explicit nonce is added (RFC 5288 section 3), or\n # ChaCha20-Poly1305's twelve bytes, XORed with the sequence number as TLS\n # 1.3 does it (RFC 7905 section 2).\n def initialize(suite : Int32, key : Array(UInt8), iv : Array(UInt8))\n def key_iv : Array(UInt8)\n # The type and content of a protected record whose 5-byte header is\n # *header* and body *body*.\n def open(header : Array(UInt8), body : Array(UInt8)) : ::Tuple(UInt8, Array(UInt8)) | TlsError\n # The whole record that carries *content* of *type*, protected.\n def seal(type : UInt8, content : Array(UInt8)) : Array(UInt8)\n def sequence : UInt64\nend\n\n# A connection from a client, its handshake done: TLS 1.3 as a server,\n# its certificate's key (Ed25519 or P-256) signing for it.\npub class TlsServer < TlsConnection\n # The handshake, or why it failed - the client sent that alert first.\n def handshake : TlsError | ::Nil\n # The certificate and key this connection was shown under: the config's\n # `identity`, or one of its `others` the client asked for by name.\n def identity : TlsIdentity\n def initialize(socket : IyiSocket, config : TlsServerConfig)\n # The handshake with the client on *socket*. A handshake that fails\n # sends the client the alert its error names, and the socket is closed.\n def self.over(socket : IyiSocket, config : TlsServerConfig, timeout_ms : Int32 = HANDSHAKE_TIMEOUT_MS) : TlsServer | TlsError\n # The host the client named (server_name, RFC 6066), if it named one.\n def server_name : String | ::Nil\n def server_side? : Bool\nend\n\n# What a server presents and asks: its identity, the protocols it speaks\n# by ALPN, and - for mutual TLS - the roots a client's certificate must\n# chain to.\npub class TlsServerConfig\n # *identity* shown to a client asking for a host its certificate names.\n def add_identity(identity : TlsIdentity) : TlsServerConfig\n # Protocols this server speaks by ALPN (RFC 7301), most wanted first; a\n # client that offers some and none of these is refused. None when empty.\n def alpn : Array(String)\n # Protocols this server speaks by ALPN (RFC 7301), most wanted first; a\n # client that offers some and none of these is refused. None when empty.\n def alpn=(value : Array(String)) : Array(String)\n def chain : Array(Array(UInt8))\n def client_required : Bool\n def client_required=(value : Bool) : Bool\n # When set, the server asks for a client's certificate (a\n # CertificateRequest) and checks it as std/x509 checks a client's\n # (clientAuth) against these roots, then its CertificateVerify; a client\n # that sends none is refused (certificate_required) while\n # `client_required`. Not asked when nil.\n def client_roots : Array(Certificate) | ::Nil\n # When set, the server asks for a client's certificate (a\n # CertificateRequest) and checks it as std/x509 checks a client's\n # (clientAuth) against these roots, then its CertificateVerify; a client\n # that sends none is refused (certificate_required) while\n # `client_required`. Not asked when nil.\n def client_roots=(value : Array(Certificate) | ::Nil) : Array(Certificate) | ::Nil\n def self.from_der(chain : Array(Array(UInt8)), seed : Array(UInt8)) : TlsServerConfig | TlsError\n def self.from_der(chain : Array(Array(UInt8)), key : P256PrivateKey) : TlsServerConfig | TlsError\n def self.from_der(chain : Array(Array(UInt8)), key : RsaPrivateKey) : TlsServerConfig | TlsError\n # `TlsIdentity.from_pem`'s identity, as a server's.\n def self.from_pem(certificates : String, private_key : String) : TlsServerConfig | TlsError\n def identity : TlsIdentity\n # The identity a client asking for *name*, taking signatures under\n # *schemes*, is shown: the first of `others` that names the host and\n # signs under a scheme the client takes, else `identity` if it does; nil\n # when none of them does.\n def identity_for(name : String | ::Nil, schemes : Array(Int32)) : TlsIdentity | ::Nil\n def initialize(identity : TlsIdentity)\n def leaf : Certificate\n # The time a client's certificate is checked at; now when nil.\n def now : Time | ::Nil\n # The time a client's certificate is checked at; now when nil.\n def now=(value : Time | ::Nil) : Time | ::Nil\n # More identities, each shown to a client that asks by server_name (RFC\n # 6066) for a host its certificate names; `identity` to any other.\n def others : Array(TlsIdentity)\n def schemes : Array(Int32)\nend\n\n# The versions a client may speak: TLS 1.3, or TLS 1.2 as well (RFC 5246),\n# for a server that never moved past it.\npub enum TlsVersion : Int32\n TLS12 = 0\n TLS13 = 1\nend\n\nimpl Error for TlsError\n def message : String\nend\n" + "sourceSha256": "6e485b1800591b3613e9bcb9b494f71ae0dbe9ecbeceafcc509475da662f98a2", + "surface": "module std/tls\n\n# The alerts of RFC 8446 section 6, by the code each is sent as.\npub struct TlsAlert\n def initialize\nend\n\n# A connection to a server, its handshake done.\npub class TlsClient < TlsConnection\n # A CertificateStatus's body (RFC 6066 section 8): status_type ocsp (1),\n # then the OCSPResponse's DER, which is not empty.\n def self.certificate_status(data : Array(UInt8)) : Array(UInt8) | TlsError\n # A connection to *host* on *port*, its handshake done and the server's\n # certificate checked for *host* - or, with a *session* that holds a\n # ticket for *host* and *port* under *config* (`TlsSession` says which\n # fit), resumed, and the tickets the server sends kept there.\n # *early_data* goes with the ClientHello (0-RTT, RFC 8446 section 2.3)\n # when the ticket taken allows that much, and after the handshake when it\n # did not, or the server refused it - unless the server then chose\n # another protocol by ALPN than the ticket's, which section 4.2.10 says\n # it must not be resent for; `early_data` says which. Early data can be\n # replayed by whoever sees it (section 8): send nothing early that is not\n # safe to run twice.\n def self.connect(host : String, port : Int32, config : TlsConfig = TlsConfig.new, timeout_ms : Int32 = -1, session : TlsSession | ::Nil = nil, early_data : String | Array(UInt8) | Nil = nil) : TlsClient | TlsError\n protected def early_bytes=(bytes : Array(UInt8) | ::Nil) : Array(UInt8) | ::Nil\n # What became of the early data given to `connect` or `over`.\n def early_data : TlsEarlyData\n def handshake : TlsError | ::Nil\n def initialize(socket : IyiSocket, host : String, config : TlsConfig, session : TlsSession | ::Nil = nil)\n # The handshake over a connected *socket*, for *host*, done within\n # *timeout_ms* (none when 0); *session* and *early_data* as for\n # `connect`.\n def self.over(socket : IyiSocket, host : String, config : TlsConfig = TlsConfig.new, timeout_ms : Int32 = HANDSHAKE_TIMEOUT_MS, session : TlsSession | ::Nil = nil, early_data : String | Array(UInt8) | Nil = nil) : TlsClient | TlsError\n # *host* in the form RFC 6066 section 3 gives server_name: \"the\n # fully qualified DNS hostname\", ASCII, \"without a trailing dot\" - a\n # final dot dropped and a name in Unicode written as its A-labels by\n # IDNA, which is also the form `X509` matches a certificate's names in.\n # Before, `bücher.example.` went out as its UTF-8 bytes and its dot, and\n # a server that holds names to the RFC refused it (OpenSSL's s_server\n # with `-servername_fatal`: alert unrecognized_name). An ASCII name keeps\n # its case, as DNS ignores it. A name IDNA refuses, or nothing but a dot,\n # is an error before anything is sent.\n def self.server_name_for(host : String) : String | TlsError\n def server_side? : Bool\nend\n\n# What a connection is checked against and offers.\npub class TlsConfig\n # Protocols offered by ALPN (RFC 7301), most wanted first: `[\"h2\",\n # \"http/1.1\"]`. None offered when empty.\n def alpn : Array(String)\n # Protocols offered by ALPN (RFC 7301), most wanted first: `[\"h2\",\n # \"http/1.1\"]`. None offered when empty.\n def alpn=(value : Array(String)) : Array(String)\n # A new configuration holding what this one holds - the same roots and\n # identity objects, a copy of `alpn` - for a part to be changed in it\n # and not here: std/http's client makes the configuration an HTTPS\n # record's `ech` and protocols ask for so. It is another object, and\n # what was made under this one (`TlsMadeUnder`) is not carried under it.\n def dup : TlsConfig\n # An ECHConfigList (RFC 9849 section 4) - a DNS HTTPS record's `ech`\n # value, or a refusal's `TlsError#retry_configs` - to encrypt the\n # ClientHello under: the name connected to, ALPN and the ticket go in\n # the encrypted ClientHelloInner, and the ClientHelloOuter around it\n # names the config's public_name. The handshake holds only where the\n # server took it; one that did not is refused with ech_required (the\n # module's header). The first ECHConfig whose version, KEM and a suite\n # std/hpke has, and whose public_name is a host name, is taken; one list\n # holding none is refused before anything is sent, as is TLS 1.2 beside\n # it (`min_version`). A config is one server's: none when nil.\n def ech_configs : Array(UInt8) | ::Nil\n # An ECHConfigList (RFC 9849 section 4) - a DNS HTTPS record's `ech`\n # value, or a refusal's `TlsError#retry_configs` - to encrypt the\n # ClientHello under: the name connected to, ALPN and the ticket go in\n # the encrypted ClientHelloInner, and the ClientHelloOuter around it\n # names the config's public_name. The handshake holds only where the\n # server took it; one that did not is refused with ech_required (the\n # module's header). The first ECHConfig whose version, KEM and a suite\n # std/hpke has, and whose public_name is a host name, is taken; one list\n # holding none is refused before anything is sent, as is TLS 1.2 beside\n # it (`min_version`). A config is one server's: none when nil.\n def ech_configs=(value : Array(UInt8) | ::Nil) : Array(UInt8) | ::Nil\n # Whether a ClientHello without `ech_configs` carries a GREASE\n # encrypted_client_hello (RFC 9849 section 6.2): random bytes of an\n # encrypted one's shape, so that one that is real does not stand out.\n # On by default, as Chrome and Firefox send it.\n def ech_grease : Bool\n # Whether a ClientHello without `ech_configs` carries a GREASE\n # encrypted_client_hello (RFC 9849 section 6.2): random bytes of an\n # encrypted one's shape, so that one that is real does not stand out.\n # On by default, as Chrome and Firefox send it.\n def ech_grease=(value : Bool) : Bool\n # The certificate and key sent to a server that asks for one (mutual\n # TLS), when the request names its scheme; none sent when nil.\n def identity : TlsIdentity | ::Nil\n # The certificate and key sent to a server that asks for one (mutual\n # TLS), when the request names its scheme; none sent when nil.\n def identity=(value : TlsIdentity | ::Nil) : TlsIdentity | ::Nil\n def initialize\n # The oldest version spoken. TLS 1.3 by default, and then a server that\n # answers in 1.2 is refused as one that does not speak 1.3; `TLS12`\n # offers 1.2 beside it (see the module's header for what it requires).\n def min_version : TlsVersion\n # The oldest version spoken. TLS 1.3 by default, and then a server that\n # answers in 1.2 is refused as one that does not speak 1.3; `TLS12`\n # offers 1.2 beside it (see the module's header for what it requires).\n def min_version=(value : TlsVersion) : TlsVersion\n # The time certificates are checked at; now when nil.\n def now : Time | ::Nil\n # The time certificates are checked at; now when nil.\n def now=(value : Time | ::Nil) : Time | ::Nil\n # Whether X25519MLKEM768 is offered, its share sent beside X25519's (the\n # module's header has what it costs). On by default, as OpenSSL 3.5,\n # Chrome and Firefox have it; off, the ClientHello offers X25519 and\n # secp256r1 alone.\n def post_quantum : Bool\n # Whether X25519MLKEM768 is offered, its share sent beside X25519's (the\n # module's header has what it costs). On by default, as OpenSSL 3.5,\n # Chrome and Firefox have it; off, the ClientHello offers X25519 and\n # secp256r1 alone.\n def post_quantum=(value : Bool) : Bool\n # Whether a server's certificate must come with a stapled OCSP response\n # (RFC 6066's status_request, asked for by every ClientHello): with it,\n # a server that staples none is refused (bad_certificate_status_response),\n # as one whose certificate carries the TLS Feature extension's\n # status_request (RFC 7633, \"must staple\") always is. Off by default: a\n # staple that comes is checked either way (the module's header).\n def require_staple : Bool\n # Whether a server's certificate must come with a stapled OCSP response\n # (RFC 6066's status_request, asked for by every ClientHello): with it,\n # a server that staples none is refused (bad_certificate_status_response),\n # as one whose certificate carries the TLS Feature extension's\n # status_request (RFC 7633, \"must staple\") always is. Off by default: a\n # staple that comes is checked either way (the module's header).\n def require_staple=(value : Bool) : Bool\n # The roots a server's chain must reach; the system's when nil, read\n # once for the whole process and kept, since reading them is most of a\n # handshake's own cost.\n def roots : Array(Certificate) | ::Nil\n # The roots a server's chain must reach; the system's when nil, read\n # once for the whole process and kept, since reading them is most of a\n # handshake's own cost.\n def roots=(value : Array(Certificate) | ::Nil) : Array(Certificate) | ::Nil\n def trusted_roots : Array(Certificate) | TlsError\nend\n\n# What either end of a connection does once it has keys: records read and\n# written under them, alerts, KeyUpdate, close_notify. `TlsClient` and\n# `TlsServer` are its two ends; each runs its own half of the handshake.\npub abstract class TlsConnection\n # Closes the socket at once: no close_notify, and nothing read past.\n def abort : Nil\n # The protocol chosen by ALPN, if one was.\n def alpn_protocol : String | ::Nil\n def cipher_suite : String\n # The connection ended: `close_write` - close_notify, then the sending\n # half shut - and what the peer still sends read and dropped, until its\n # close_notify or the socket's end, as long as it keeps coming\n # (`DRAIN_GAP_MS`), `DRAIN_MS` and `DRAIN_BYTES` at most; then the\n # socket closed. A socket closed with bytes unread in it is reset rather\n # than ended, and the reset takes from the\n # peer what it had received and not yet read: closed at once on a\n # request body it had not read, an HTTPS server lost its whole answer to\n # Python's http.client in each of 50 runs, and curl the end of it in\n # each of 50 (bench/std_http_exercise.sh, \"a close while the client\n # still sends\"). Nothing is waited for once the peer's close_notify has\n # been read: nothing comes after it. A socket already closed under the\n # connection leaves only the close: no alert, and nothing read. `abort`\n # is the close without any of this.\n def close : Nil\n # RFC 8446 section 6.1's end of this side's writing: close_notify, then\n # the socket's sending half shut (`IyiSocket#close_write`), so the peer\n # reads the alert and then the end of the stream. The reading half\n # stays: `read` goes on answering what the peer sends, until its own\n # close_notify (\"\") or the socket's end. `write` and `key_update` are\n # refused after it, and `close` or `abort` still gives the socket back.\n # TLS 1.2 has no such half: RFC 5246 section 7.2.1 has a peer answer a\n # close_notify with its own and close at once, discarding what it had\n # yet to write, so after this a 1.2 connection reads what was already\n # on its way, then the peer's close_notify. An error when the alert or\n # the shutdown could not be made, or when the socket was already closed\n # under the connection; the connection is still to be closed. A flight\n # still held (`hold`) is a handshake cut short, and is dropped, as\n # `fail` drops it: the close_notify goes alone.\n def close_write : TlsError | ::Nil\n # Whether the connection is over: closed, or its socket closed under\n # it - std/http's server closes the sockets of the connections it waits\n # on when it stops, a connection handed over by an upgrade among them -\n # after which a read or a write answers that it is closed rather than\n # reaching the socket, whose own read and write refuse a closed socket\n # by panicking.\n def closed? : Bool\n # Whether the handshake ran on the ClientHelloInner an encrypted\n # ClientHello carried (RFC 9849): the client's ECH taken - so the name,\n # the protocols and the ticket it asked with went encrypted, and the\n # server read them, not the ClientHelloOuter's.\n def ech_accepted? : Bool\n # *length* bytes bound to this connection, for *label* and *context*\n # (RFC 8446 section 7.5, RFC 5705's interface): the same at both ends and\n # nowhere else - a channel binding, or keys for another protocol riding\n # on this one. No context is the empty one, as TLS 1.3 has it; in TLS\n # 1.2 (RFC 5705 section 4, over the extended master secret) an empty\n # context is none, as OpenSSL's exporter takes it when told of none.\n def export_keying_material(label : String, context : Array(UInt8) = [] of UInt8, length : Int32 = 32) : Array(UInt8)\n # The alert the error names (its last parenthesised word), sent before\n # the socket closes, by either end (RFC 8446 section 6.2): under the keys\n # this side writes with, or in the clear before there are any. None for\n # an alert the peer sent, whose sentence names no alert of this side's.\n # no_renegotiation goes as the warning it always is (RFC 5246 section\n # 7.2.2); every other, fatal.\n # Then either end shuts its sending half, so the peer reads the alert\n # and then the end of the stream, and reads and drops what the peer\n # sent or goes on sending until it closes, `LINGER_BYTES` and\n # `LINGER_MS` at most. A close with bytes unread, or one that bytes\n # still on their way reach, is a reset, and Windows throws away what a\n # reset connection received and had not read, the alert with it: a\n # client refused for its certificate read \"reset\", not why, and the\n # server lost a client's ech_required in 18 and 15 of 20 runs\n # (bench/std_tls_ech_oracle.go). A client closed at once on a server's\n # 0.5-RTT records reset the connection in each of 100 refusals on Linux\n # and on darwin (bench/std_tls_server.py's untrusted-late), where the\n # server still read the alert, even read 300 ms after the reset; shut\n # and lingering, the alert and then the end of the stream in each of\n # 100. A peer that closes once it has the alert ends the linger then -\n # OpenSSL's s_server 0.2 ms after it, on darwin - and one that goes on\n # sending and never closes holds a refusal for the second\n # (untrusted-hold: 1000 to 1001 ms on Linux, 1001 to 1005 on darwin).\n protected def fail(error : TlsError) : TlsError\n def self.group_name(group : Int32) : String\n def initialize(socket : IyiSocket, peer : String, place : String)\n # Records one write key carries before the next (RFC 8446 section 5.5:\n # AES-GCM's is 2^24.5 full records; ChaCha20-Poly1305's far more): past\n # it, the next write moves to new keys first - or, in TLS 1.2, which has\n # no KeyUpdate, is refused, and the connection with it. Settable, for a\n # test.\n def key_limit : UInt64\n # Records one write key carries before the next (RFC 8446 section 5.5:\n # AES-GCM's is 2^24.5 full records; ChaCha20-Poly1305's far more): past\n # it, the next write moves to new keys first - or, in TLS 1.2, which has\n # no KeyUpdate, is refused, and the connection with it. Settable, for a\n # test.\n def key_limit=(value : UInt64) : UInt64\n # Moves this side's writes to new keys (section 4.6.3), asking the peer\n # to move its own when *request*: what `write` does by itself at\n # `key_limit`, for a program that wants it sooner. TLS 1.2 has no\n # KeyUpdate: there it is a `TlsError`, and the connection stays open.\n def key_update(request : Bool = false) : TlsError | ::Nil\n # The milliseconds left of the deadline `within` set, 0 once it has\n # passed; nil when there is none.\n protected def left_ms : Int32 | ::Nil\n # The key exchange group the handshake agreed on: \"X25519MLKEM768\",\n # \"X25519\", \"secp256r1\" or \"secp384r1\". One name for it, the one RFC\n # 8446 gives the field (NamedGroup); `key_exchange`, which the P-384 work\n # first called it, is KeyShareEntry's name for the share's bytes.\n def named_group : String\n # The OCSP response stapled to the server's certificate (RFC 6066, RFC\n # 8446 section 4.4.2.1) and the status it gives - for a client, checked\n # (std/ocsp); for a server, the one it sent. Nil when none was.\n def ocsp_response : OcspResponse | ::Nil\n def ocsp_status : OcspCertStatus | ::Nil\n # The chain the peer's certificate was checked through, leaf first: the\n # server's, for a client; the client's, for a server that asked for one.\n def peer_certificates : Array(Certificate)\n # Up to *max* bytes the peer sent: \"\" once it has closed with\n # close_notify. The socket's read timeout bounds the whole call.\n def read(max : Int32 = 16384) : String | TlsError\n # How long a read or a write of the connection under it may wait.\n def read_timeout_ms=(ms : Int32 | ::Nil) : Int32 | ::Nil\n # Whether the handshake resumed a session (see `TlsSession`).\n def resumed? : Bool\n # Whether this is the server's end.\n abstract def server_side? : Bool\n # The version negotiated: \"TLSv1.3\", or \"TLSv1.2\" where one end asked\n # for it and the other spoke nothing newer.\n def version : String\n # *block* under a deadline *ms* from now (none when 0), cleared after.\n protected def within(ms : Int32, &block : (-> T)) : T forall T\n # Sends *data*, in records of at most 2^14 bytes; answers its size.\n # Refused once `close_write` has sent this side's close_notify, and in\n # TLS 1.2 once the peer's has been read (see `read_now`).\n def write(data : String | Array(UInt8)) : Int32 | TlsError\n def write_timeout_ms=(ms : Int32 | ::Nil) : Int32 | ::Nil\nend\n\n# What became of the early data a client was given (`TlsClient.connect`'s\n# *early_data*).\npub enum TlsEarlyData : Int32\n Unused = 0\n Accepted = 1\n Resent = 2\n Late = 3\n Withheld = 4\nend\n\n# One ECHConfig (RFC 9849 section 4), of version 0xfe0d, as read from an\n# ECHConfigList: what a client encrypts its ClientHello under, and what a\n# server's `TlsEchKey` publishes.\npub class TlsEchConfig\n def config_id : Int32\n # Its extensions (section 4.2), each its type and data.\n def extensions : Array(::Tuple(Int32, Array(UInt8)))\n # The suite a client seals under: the first of `suites` std/hpke has (the\n # export-only AEAD seals nothing), under the config's KEM - or nil for a\n # config this client passes over: a KEM std/hpke does not have, a\n # public_name that is not a host name (section 6.1.7), an extension\n # twice, or a mandatory one - its type's high bit set - which this does\n # not know (section 4.2; none is defined yet).\n def hpke_suite : HpkeSuite | ::Nil\n def initialize(raw : Array(UInt8), config_id : Int32, kem_id : Int32, public_key : Array(UInt8), suites : Array(::Tuple(Int32, Int32)), maximum_name_length : Int32, public_name : String, extensions : Array(::Tuple(Int32, Array(UInt8))))\n def kem_id : Int32\n def maximum_name_length : Int32\n # The ECHConfigs of version 0xfe0d an ECHConfigList holds, in its order -\n # one of another version passed over by its length, as section 4 says -\n # or a decode_error naming what does not read: a list cut short or with\n # bytes after it, an empty one, or a config of this version whose fields\n # break their bounds.\n def self.parse_list(list : Array(UInt8)) : Array(TlsEchConfig) | TlsError\n def public_key : Array(UInt8)\n def public_name : String\n # Whether *name* is a public_name a client takes (section 6.1.7): LDH\n # labels (RFC 5890 section 2.3.1) of 1 to 63 bytes, no hyphen at either\n # end of one, joined by dots, 255 bytes at most - and its last label\n # neither all digits nor \"0x\" and hexadecimal digits, which a URL parser\n # reads as an IPv4 address.\n def self.public_name?(name : String) : Bool\n # The whole ECHConfig - version, length and contents - as it came: what\n # the HPKE info is made of (section 6.1), and a list of them.\n def raw : Array(UInt8)\n # `parse_list`'s answer, its refusal a sentence.\n def self.read_list(list : Array(UInt8)) : Array(TlsEchConfig) | String\n # The HPKE KDF and AEAD a client may seal under, by their code points.\n def suites : Array(::Tuple(Int32, Int32))\nend\n\n# An ECH key a server holds (RFC 9849 section 7.1): an ECHConfig and the\n# HPKE private key for the public key in it. `TlsServerConfig#ech_keys`\n# holds several: the current one and the ones before it that clients may\n# still hold from DNS, each with a config_id of its own (section 4.1), so\n# that a ClientHello names the one to open it with.\npub class TlsEchKey\n def config : TlsEchConfig\n # The ECHConfigList of *keys*' configs, in their order: what a DNS HTTPS\n # record's `ech` carries (RFC 9848), and a client's `ech_configs`.\n def self.config_list(keys : Array(TlsEchKey)) : Array(UInt8)\n # The key a server kept as its `config.raw` and `private_key.bytes`: one\n # ECHConfig, not a list, of version 0xfe0d and a KEM std/hpke has, that\n # a client may use; and the KEM's private key (RFC 9180 section 7.1.2)\n # for the public key in it - or why not.\n def self.from_bytes(config : Array(UInt8), private_key : Array(UInt8)) : TlsEchKey | TlsError\n # A new key and its ECHConfig: *public_name* the name the server\n # answers for in the clear and has a certificate for (section 6.1.7\n # holds it to a host name); *config_id* random unless given - one the\n # server's other keys do not have (section 4.1); the KEM's key pair from\n # `Random::Secure`; the KDF and AEAD pairs a client may choose among, in\n # the server's order - HKDF-SHA256 with AES-128-GCM, then with\n # ChaCha20-Poly1305, unless given; and *maximum_name_length*, the\n # longest name it serves, which clients pad the name they ask for to\n # (section 6.1.3; 0 when not known). Its `config.raw` and\n # `private_key.bytes` are what `from_bytes` reads back.\n def self.generate(public_name : String, config_id : Int32 | ::Nil = nil, kem : HpkeKem = HpkeKem::X25519Sha256, suites : Array(::Tuple(HpkeKdf, HpkeAead)) = [{HpkeKdf::HkdfSha256, HpkeAead::Aes128Gcm}, {HpkeKdf::HkdfSha256, HpkeAead::ChaCha20Poly1305}], maximum_name_length : Int32 = 0) : TlsEchKey | TlsError\n def initialize(config : TlsEchConfig, private_key : HpkePrivateKey)\n def private_key : HpkePrivateKey\n # Whether the config goes in retry_configs, to a client whose encrypted\n # ClientHello this server turns down (section 7.1): true unless set; a\n # key kept only to open what holders of its old config still send is\n # set false, so that no client is told to retry with it.\n def retry : Bool\n # Whether the config goes in retry_configs, to a client whose encrypted\n # ClientHello this server turns down (section 7.1): true unless set; a\n # key kept only to open what holders of its old config still send is\n # set false, so that no client is told to retry with it.\n def retry=(value : Bool) : Bool\nend\n\n# What a connection answers when it cannot be made or kept, or a read that\n# came back with nothing yet.\npub struct TlsError\n # The alert this refusal sends the peer (`TlsAlert`), or nil: none for a\n # failure of the socket, or for an alert the peer sent.\n def alert : UInt8 | ::Nil\n def cancelled? : Bool\n # *message*, the alert's name after it when there is one: the sentence\n # shows the alert, and the alert is the field, not the sentence.\n def initialize(message : String, alert : UInt8 | ::Nil = nil, timed_out : Bool = false, cancelled : Bool = false, retry_configs : Array(UInt8) | ::Nil = nil)\n # The ECHConfigList a server that turned down this client's encrypted\n # ClientHello sent to retry with (RFC 9849 section 6.1.6), once its\n # certificate was checked for the config's public_name: on an\n # ech_required refusal, and nil on any other - and on an ech_required\n # refusal whose server sent none, which turned ECH off for it.\n def retry_configs : Array(UInt8) | ::Nil\n # A read that waited past its timeout, or that was cancelled: nothing was\n # lost and the connection is open - read again. Any other error ended it.\n def timed_out? : Bool\n def to_s : String\nend\n\n# A `TlsServerConfig` frozen (`TlsServerConfig#frozen`): what a server\n# whose connections run on several threads at once - std/http's\n# `Server.serve(tls:)` - reads on every worker. It is `Share`\n# (SPEC.md III.4.4), trusted rather than derived, and this is why it may\n# be. It holds a copy of the config it was made from (`dup`), which\n# nothing else holds and nothing writes after the constructor made it:\n# no method here assigns it or calls a setter on it, and it leaves only\n# for the `TlsServer` a handshake runs (`server`), which reads it and\n# has no getter for it. What the copy holds is `Share` itself or read\n# alone: its identities are `Share`, its ECH keys copied with it, its\n# arrays its own; the ticket keys and the replay guard it shares with\n# the config it was made from are `Share` by their fields, a `Mutex`\n# each, so a ticket one worker seals another opens and a replay one\n# refuses all refuse. Its identity source is a `SharedProc`, whose\n# block the compiler checked where it was written. The readers below\n# answer copies, a `List` or a new array, never the copy's own. What\n# changes while a server runs: an OCSP staple, through `staple`; the\n# ticket key, as it turns over; and whatever the identity source\n# answers, a certificate renewed (std/autocert). The rest - the\n# identities, the protocols, the ECH keys - is the server's for its\n# life: another set is another frozen config, served by another\n# `Server.serve`.\npub class TlsFrozenServerConfig\n def alpn : List(String)\n # `TlsServerConfig#ech_config_list`'s, of the keys frozen with it.\n def ech_config_list : Array(UInt8) | ::Nil\n def identity : TlsIdentity\n # *config* copied, its `identity_source` replaced by *source*. A config\n # with an `identity_source` and no *source* is refused by panicking, as\n # `TlsServerConfig#frozen` says.\n def initialize(config : TlsServerConfig, source : SharedProc(::Tuple(String | ::Nil, Array(String) | ::Nil, Int32 | ::Nil), TlsIdentity | TlsError | Nil) | ::Nil)\n def others : List(TlsIdentity)\n def replay_guard : TlsReplayGuard\n # The server's half of a connection on *socket* under this config, for\n # `TlsServer.over` to run the handshake of.\n def server(socket : IyiSocket) : TlsServer\n # *der* stapled for *identity*, as `TlsServerConfig#staple` does, from\n # any thread: the handshakes after it, on every worker, staple it.\n def staple(der : Array(UInt8), identity : TlsIdentity = @settings.identity) : TlsError | ::Nil\n def ticket_keys : TlsTicketKeys\nend\n\n# One ticket a client holds: the server's bytes, and the PSK, suite,\n# arrival (monotonic ms), lifetime, age_add, host, port, configuration,\n# protocol and certificates of the connection it came on, when the full\n# handshake that checked those certificates was made (monotonic ms; a\n# resumption's tickets carry the first one's), and the most early data it\n# allows (0 for none).\npub class TlsHeldTicket\n def age_add : Int64\n def alpn : String | ::Nil\n def authenticated_ms : Int64\n def host : String\n def initialize(ticket : Array(UInt8), psk : Array(UInt8), suite : Int32, received_ms : Int64, lifetime_ms : Int64, age_add : Int64, host : String, port : Int32, under : TlsMadeUnder, alpn : String | ::Nil, peer_certificates : Array(Certificate), authenticated_ms : Int64, max_early_data : Int64 = 0_i64)\n def lifetime_ms : Int64\n def max_early_data : Int64\n def peer_certificates : Array(Certificate)\n def port : Int32\n def psk : Array(UInt8)\n def received_ms : Int64\n def suite : Int32\n def ticket : Array(UInt8)\n def under : TlsMadeUnder\nend\n\n# A certificate chain, leaf first, and the key that signs for it -\n# Ed25519, ECDSA on P-256 or P-384 (std/p256, std/p384) or RSA (std/rsa),\n# each in constant time: what a server presents, and what a client\n# presents when a server asks.\n#\n# `Share` (SPEC.md III.4.4), trusted rather than derived: a server's\n# workers sign with one identity at once, and an `identity_source` that\n# runs on every worker answers identities it keeps. What the structural\n# rule cannot see is that nothing writes one after it is made: no method\n# here assigns a field, and none of std/x509's `Certificate`, std/p256's,\n# std/p384's and std/rsa's private keys does - a signature is computed\n# into new values, nothing is cached on the key - so what fails the rule\n# is only that the chain and the certificate are held in `Array`s. The\n# constructor copies the arrays it is given, so a caller that keeps them\n# writes its own. The one part that changes while a server runs, the OCSP\n# response it staples, is behind a `Mutex` (`staple`), which every\n# worker reads through. The edge is the one `List` closes by never\n# lending its array and this cannot: `chain`, `schemes` and the leaf's\n# fields are lent as arrays, read by every method of std, and a program\n# that writes into one writes what other threads read.\npub class TlsIdentity\n # The ClientCertificateType a TLS 1.2 CertificateRequest must list for\n # this key: rsa_sign (1), or ecdsa_sign (64) for P-256, P-384 and, by RFC\n # 8422 section 5.5, Ed25519.\n def certificate_type : UInt8\n # The chain as sent, leaf first, each certificate's DER.\n def chain : Array(Array(UInt8))\n # *chain*'s certificates, leaf first, and the 32-byte Ed25519 *seed*\n # that is the leaf's private key.\n def self.from_der(chain : Array(Array(UInt8)), seed : Array(UInt8)) : TlsIdentity | TlsError\n # *chain*'s certificates, leaf first, and the P-256 *key* that is the\n # leaf's.\n def self.from_der(chain : Array(Array(UInt8)), key : P256PrivateKey) : TlsIdentity | TlsError\n # *chain*'s certificates, leaf first, and the P-384 *key* that is the\n # leaf's.\n def self.from_der(chain : Array(Array(UInt8)), key : P384PrivateKey) : TlsIdentity | TlsError\n # *chain*'s certificates, leaf first, and the RSA *key* that is the\n # leaf's (2048 bits or more, std/rsa's floor for signing).\n def self.from_der(chain : Array(Array(UInt8)), key : RsaPrivateKey) : TlsIdentity | TlsError\n # The chain in *certificates*' CERTIFICATE blocks, leaf first, and the\n # leaf's private key in *private_key*: a PRIVATE KEY block (PKCS #8, an\n # Ed25519 key as RFC 8410 section 7 writes it, a P-256 or P-384 one as\n # RFC 5915 does, or an RSA one), an EC PRIVATE KEY block (SEC 1) or an\n # RSA PRIVATE KEY block (PKCS #1) - or why they are not a certificate\n # and key.\n def self.from_pem(certificates : String, private_key : String) : TlsIdentity | TlsError\n def initialize(chain : Array(Array(UInt8)), leaf : Certificate, schemes : Array(Int32), seed : Array(UInt8) | ::Nil, p256 : P256PrivateKey | ::Nil, p384 : P384PrivateKey | ::Nil, rsa : RsaPrivateKey | ::Nil)\n def leaf : Certificate\n # The OCSP response kept for this chain (`staple`), its DER; nil when\n # none is.\n def ocsp_staple : Array(UInt8) | ::Nil\n # Whether the key is RSA's: a TLS 1.2 server's ECDHE_RSA suites, and not\n # ECDHE_ECDSA's.\n def rsa? : Bool\n # The scheme a TLS 1.2 ServerKeyExchange is signed under for a client\n # that takes *offered*: `scheme_for`'s - for an RSA key, RSA-PSS by the\n # client's order - and for an RSA key whose client takes no RSA-PSS,\n # PKCS #1 v1.5 by its order, which 1.2 permits and which the clients that\n # never moved past it may take alone; nil when the key makes none.\n def scheme12_for(offered : Array(Int32)) : Int32 | ::Nil\n # The scheme to sign under for a peer that takes *offered* (its\n # signature_algorithms, in its order): the first of them this key makes,\n # or nil when it makes none.\n def scheme_for(offered : Array(Int32)) : Int32 | ::Nil\n # A scheme by the name RFC 8446 gives it.\n def self.scheme_name(scheme : Int32) : String\n # Schemes by name, for a sentence: \"a, b or c\".\n def self.scheme_names(schemes : Array(Int32)) : String\n # The schemes CertificateVerify can be signed under, by the key's kind:\n # ed25519 (0x0807), ecdsa_secp256r1_sha256 (0x0403),\n # ecdsa_secp384r1_sha384 (0x0503), or for an RSA key rsa_pss_rsae_sha256,\n # -384 and -512 (0x0804 to 0x0806). PKCS #1 v1.5 is never one: RFC 8446\n # section 4.2.3 keeps it out of CertificateVerify.\n def schemes : Array(Int32)\n # The leaf key's signature of *content* under *scheme*, one of\n # `schemes` - or for an RSA key in TLS 1.2, PKCS #1 v1.5's: what\n # CertificateVerify and a ServerKeyExchange carry.\n def sign(scheme : Int32, content : Array(UInt8)) : Array(UInt8)\n # *der* kept as this chain's OCSP response, to be stapled for a client\n # that asks: refused unless it is an OCSPResponse std/ocsp reads, with a\n # SingleResponse for the leaf - its serial number and its issuer name's\n # hash. Its signature and times are the client's to check; this server\n # only leaves one past its nextUpdate unsent. A later call replaces it,\n # from any thread, and a handshake on any worker staples the one held\n # when it asks.\n def staple(der : Array(UInt8)) : TlsError | ::Nil\n # The response to staple at *now*, with what it says; nil when there is\n # none, or it is past its nextUpdate.\n def staple_at(now : Time) : ::Tuple(Array(UInt8), OcspResponse, OcspSingleResponse) | ::Nil\nend\n\n# The key schedule of one connection (RFC 8446 section 7.1), over the\n# cipher suite's hash: SHA-384 for TLS_AES_256_GCM_SHA384, SHA-256 for the\n# other two.\npub class TlsKeySchedule\n # A PSK binder (section 4.2.11.2): a Finished keyed by the resumption's\n # binder key, over *transcript* - the messages before the ClientHello and\n # the ClientHello up to its binders.\n def binder(psk : Array(UInt8), transcript : Array(UInt8)) : Array(UInt8)\n # Derive-Secret over the messages so far.\n def derive_secret(secret : Array(UInt8), label : String, transcript : Array(UInt8)) : Array(UInt8)\n # The early secret of a resumption, from its PSK.\n def early_secret(psk : Array(UInt8)) : Array(UInt8)\n # The early secret with no PSK, and the \"derived\" salt for the next stage.\n def early_secret : Array(UInt8)\n # The client's early traffic secret (section 7.1), over the ClientHello\n # alone: what 0-RTT data and EndOfEarlyData go under.\n def early_traffic(psk : Array(UInt8), hello : Array(UInt8)) : Array(UInt8)\n # HKDF-Expand-Label: the label prefixed \"tls13 \", and the context, in an\n # HkdfLabel.\n def expand_label(secret : Array(UInt8), label : String, context : Array(UInt8), length : Int32) : Array(UInt8)\n def extract(salt : Array(UInt8), ikm : Array(UInt8)) : Array(UInt8)\n # A Finished message's verify_data under *secret* (section 4.4.4).\n def finished(secret : Array(UInt8), transcript : Array(UInt8)) : Array(UInt8)\n # The handshake secret over the key exchange's *shared* secret, and over\n # *psk* in a resumption.\n def handshake_secret(shared : Array(UInt8), psk : Array(UInt8) | ::Nil = nil) : Array(UInt8)\n def hash(data : Array(UInt8)) : Array(UInt8)\n def hash_size : Int32\n def hmac(key : Array(UInt8), data : Array(UInt8)) : Array(UInt8)\n def initialize(sha384 : Bool)\n def master_secret(handshake_secret : Array(UInt8)) : Array(UInt8)\n # The next generation of a traffic secret (section 7.2).\n def next_secret(secret : Array(UInt8)) : Array(UInt8)\n # TLS 1.2's PRF (RFC 5246 section 5): P_hash over this schedule's hash -\n # SHA-256, or SHA-384 for a suite that names it - keyed by *secret*, over\n # *label* and *seed*, *length* bytes of it.\n def prf(secret : Array(UInt8), label : String, seed : Array(UInt8), length : Int32) : Array(UInt8)\n # The PSK a NewSessionTicket's *nonce* makes of the resumption master\n # secret (section 4.6.1): one ticket's, and no other's.\n def resumption_psk(secret : Array(UInt8), nonce : Array(UInt8)) : Array(UInt8)\n def zeros : Array(UInt8)\nend\n\n# The `TlsConfig` a client connection was made under, and the parts of it\n# that decide whom the connection trusts, what it presented and whether\n# it named its server in the clear: the roots, the identity, the time\n# certificates were checked at, the oldest version spoken, whether an\n# OCSP staple was required, and the ECHConfigList it was encrypted under.\n# Whatever was made under it - a `TlsSession`'s ticket, std/http's kept\n# connection - is used again only under a configuration that is the same\n# object holding the same ones, so what one trust store, identity or\n# staple rule checked is never carried under another: set by assigning a\n# new configuration, or by assigning `roots`, `identity`, `now`,\n# `min_version`, `require_staple` or `ech_configs` on it in place. Objects\n# are told apart by `object_id`, and the references are held, so an\n# address freed and handed to a new configuration is never taken for the\n# old one. Certificates added to the same roots array in place are not\n# seen: such an array is still the same object. `ech_configs` is held to\n# its bytes, kept as they were: a connection made in the clear is not\n# handed a request made under a configuration that asks for ECH, nor its\n# ticket offered inside one, and a ticket that came inside one is not\n# offered in a ClientHello that names the server in the clear, where it\n# would tie the two connections together for anyone watching (RFC 9849\n# section 6.1.8 keeps ECH state to the source it came from). One\n# definition serves std/tls and std/http, so the two cannot come to\n# compare different parts.\npub class TlsMadeUnder\n def initialize(config : TlsConfig)\n def same?(config : TlsConfig) : Bool\nend\n\n# One direction's record protection (section 5.2): the AEAD keyed from a\n# traffic secret, and the record sequence number its nonces are made of -\n# or TLS 1.2's, keyed from its key block.\npub class TlsRecordCipher\n # TLS_AES_128_GCM_SHA256, TLS_AES_256_GCM_SHA384, TLS_CHACHA20_POLY1305_SHA256.\n def initialize(suite : Int32, schedule : TlsKeySchedule, secret : Array(UInt8))\n # TLS 1.2's (RFC 5246 section 6.2.3.3) for one of its AEAD suites, *key*\n # and *iv* from the key block: AES-GCM's four-byte salt, to which each\n # record's eight-byte explicit nonce is added (RFC 5288 section 3), or\n # ChaCha20-Poly1305's twelve bytes, XORed with the sequence number as TLS\n # 1.3 does it (RFC 7905 section 2).\n def initialize(suite : Int32, key : Array(UInt8), iv : Array(UInt8))\n def key_iv : Array(UInt8)\n # The type and content of a protected record whose 5-byte header is\n # *header* and body *body*.\n def open(header : Array(UInt8), body : Array(UInt8)) : ::Tuple(UInt8, Array(UInt8)) | TlsError\n # The whole record that carries *content* of *type*, protected.\n def seal(type : UInt8, content : Array(UInt8)) : Array(UInt8)\n def sequence : UInt64\nend\n\n# What keeps a server from taking the same early data twice (RFC 8446\n# sections 8.2 and 8.3). A ClientHello's early data is taken only if it is\n# fresh - the ticket age the client gives is within `WINDOW_MS` of the\n# time this server counts since it issued the ticket - and only once:\n# each ClientHello whose early data is taken is recorded by its PSK\n# binder, which nobody without the ticket's PSK can make for another\n# ClientHello, and a ClientHello whose binder is recorded has its early\n# data refused (its handshake goes on, the data then sent after it). A\n# replay that is still fresh comes within two windows of its original, so\n# a binder is held that long and then dropped; with `capacity` held, early\n# data is refused until some are - the guard fails closed. A refusal costs\n# the client a round trip, never its request.\n#\n# What it does not do. It holds in this process, as the ticket keys do, so\n# a ticket - and the early data under it - is taken by no other server\n# and by no later run of this one; servers that shared ticket keys would\n# need to share this too, and neither is offered. It cannot stop a client\n# from sending the same request again after a connection whose early data\n# was taken broke before the answer came (appendix E.5), so what comes\n# early must be safe to run twice; and taking early data at all lets\n# whoever recorded the ClientHello replay it within the window to a server\n# that has not seen it - none, here.\n#\n# The binders are behind a `Mutex`, as the ticket keys are, so every\n# worker of a `TlsFrozenServerConfig`'s server records into one guard and\n# a replay sent to another worker is refused there too.\npub class TlsReplayGuard\n # Whether early data may be taken, at *now_ms* (monotonic), for a\n # ClientHello whose PSK binder is *binder*: not one held already, and not\n # past `capacity`. It is recorded when it may; a task cancelled while it\n # waits for the guard is refused.\n def admit(binder : Array(UInt8), now_ms : Int64) : Bool\n def capacity : Int32\n # Whether a ticket age the client gives, *client_ms*, and this server's\n # count since it issued the ticket, *server_ms*, are within the window.\n def self.fresh?(client_ms : Int64, server_ms : Int64) : Bool\n def initialize(capacity : Int32 = 65536)\n # How many binders are held.\n def size : Int32\nend\n\n# A connection from a client, its handshake done: TLS 1.3 as a server -\n# or 1.2, when its config's `min_version` asks and the client speaks\n# nothing newer - its certificate's key (Ed25519, P-256, P-384 or RSA)\n# signing for it.\npub class TlsServer < TlsConnection\n # Whether the client's early data was taken (0-RTT): `read_early` reads\n # it, and `read` never does.\n def early_data? : Bool\n # The rest of a handshake whose early data was taken: the early data not\n # yet read, kept for `read_early`, then EndOfEarlyData and the client's\n # Finished. Nil once the handshake is done, at once when nothing was\n # early. `read` calls it first; a server that answers early data before\n # the client's Finished calls it before it closes.\n def finish : TlsError | ::Nil\n # The handshake, or why it failed - the client sent that alert first.\n def handshake : TlsError | ::Nil\n # The certificate and key this connection was shown under: the config's\n # `identity`, or one of its `others` the client asked for by name.\n def identity : TlsIdentity\n def initialize(socket : IyiSocket, config : TlsServerConfig, shared_source : SharedProc(::Tuple(String | ::Nil, Array(String) | ::Nil, Int32 | ::Nil), TlsIdentity | TlsError | Nil) | ::Nil = nil)\n # The ClientHelloOuter's server_name when its encrypted ClientHelloInner\n # was taken: the public_name the client named in the clear, where\n # `server_name` is the name it asked for inside. Nil otherwise.\n def outer_server_name : String | ::Nil\n # The handshake with the client on *socket*. A handshake that fails\n # sends the client the alert its error names, and the socket is closed.\n # Where the config allows early data (`max_early_data`) and *early_data*\n # is true, a ClientHello's early data may be taken: then the handshake\n # answers once this side's Finished is sent, `read_early` reads the\n # early data, a write goes at once (0.5-RTT), and `finish` - which\n # `read` calls - reads the client's Finished. Under a frozen config\n # (`TlsFrozenServerConfig`) the handshake may run on any thread, as many\n # at once as there are.\n def self.over(socket : IyiSocket, config : TlsServerConfig | TlsFrozenServerConfig, timeout_ms : Int32 = HANDSHAKE_TIMEOUT_MS, early_data : Bool = true) : TlsServer | TlsError\n # Up to *max* bytes the client sent after the handshake - never its early\n # data, which `read_early` reads - the handshake finished first.\n def read(max : Int32 = 16384) : String | TlsError\n # Up to *max* bytes of the early data the client sent with its\n # ClientHello, \"\" once it has all been read, or when none was taken.\n # Early data may be a replay (RFC 8446 section 8; `TlsReplayGuard` says\n # what this server refuses and what it cannot), which is why it is read\n # here and never by `read`: a program can tell it from what came after\n # the handshake, and act on it only where twice is safe.\n def read_early(max : Int32 = 16384) : String | TlsError\n # The host the client named (server_name, RFC 6066), if it named one.\n def server_name : String | ::Nil\n def server_side? : Bool\n protected def takes_early=(takes : Bool) : Bool\nend\n\n# What a server presents and asks: its identity, the protocols it speaks\n# by ALPN, the oldest version it speaks, and - for mutual TLS - the roots\n# a client's certificate must chain to.\n#\n# A config is written as a server runs - its properties are assigned, an\n# identity is added - and its `identity_source` is a `Proc`, which may\n# have captured anything; so it is not `Share` (SPEC.md III.4.4), and a\n# server whose connections run on several threads at once (std/http's\n# `Server.serve`) takes `frozen` instead: a copy no property of\n# which changes, that every worker reads at once. What must change while\n# such a server runs is shared rather than copied, and synchronised: the\n# ticket keys and the replay guard, whose state is behind a `Mutex`, so\n# a ticket one worker seals another opens; and each identity's OCSP\n# staple (`staple`), which a fresh response replaces from any thread.\npub class TlsServerConfig\n # *identity* shown to a client asking for a host its certificate names.\n def add_identity(identity : TlsIdentity) : TlsServerConfig\n # Protocols this server speaks by ALPN (RFC 7301), most wanted first; a\n # client that offers some and none of these is refused. None when empty.\n def alpn : Array(String)\n # Protocols this server speaks by ALPN (RFC 7301), most wanted first; a\n # client that offers some and none of these is refused. None when empty.\n def alpn=(value : Array(String)) : Array(String)\n def chain : Array(Array(UInt8))\n def client_required : Bool\n def client_required=(value : Bool) : Bool\n # When set, the server asks for a client's certificate (a\n # CertificateRequest) and checks it as std/x509 checks a client's\n # (clientAuth) against these roots, then its CertificateVerify; a client\n # that sends none is refused (certificate_required; in TLS 1.2,\n # handshake_failure) while `client_required`. Not asked when nil.\n def client_roots : Array(Certificate) | ::Nil\n # When set, the server asks for a client's certificate (a\n # CertificateRequest) and checks it as std/x509 checks a client's\n # (clientAuth) against these roots, then its CertificateVerify; a client\n # that sends none is refused (certificate_required; in TLS 1.2,\n # handshake_failure) while `client_required`. Not asked when nil.\n def client_roots=(value : Array(Certificate) | ::Nil) : Array(Certificate) | ::Nil\n # A copy, to be written apart from this one: the arrays copied - the\n # protocols, roots, identities, groups, and each ECH key, whose `retry`\n # is its own - and the ticket keys and the replay guard shared, so that\n # a ticket either seals the other opens, and early data either took\n # the other refuses.\n def dup : TlsServerConfig\n # `max_early_data`, held to 0 .. `MAX_EARLY_DATA`.\n def early_limit : Int64\n # The ECHConfigList of the `ech_keys` whose `retry` is set, in their\n # order: what this server publishes for clients (a DNS HTTPS record's\n # `ech`) and sends as retry_configs; nil when there are none.\n def ech_config_list : Array(UInt8) | ::Nil\n # The keys an encrypted ClientHello (RFC 9849) is opened with, as a\n # client-facing server in shared mode, which is its own backend: one\n # whose ECHClientHello names a key's config_id and suite and opens under\n # it is answered on its ClientHelloInner; one none opens, on the\n # ClientHelloOuter, for the public_name, with `ech_config_list` as\n # retry_configs. Several for rotation (`TlsEchKey`). None when empty: an\n # encrypted_client_hello is then passed over, unread past its type.\n def ech_keys : Array(TlsEchKey)\n # The keys an encrypted ClientHello (RFC 9849) is opened with, as a\n # client-facing server in shared mode, which is its own backend: one\n # whose ECHClientHello names a key's config_id and suite and opens under\n # it is answered on its ClientHelloInner; one none opens, on the\n # ClientHelloOuter, for the public_name, with `ech_config_list` as\n # retry_configs. Several for rotation (`TlsEchKey`). None when empty: an\n # encrypted_client_hello is then passed over, unread past its type.\n def ech_keys=(value : Array(TlsEchKey)) : Array(TlsEchKey)\n def self.from_der(chain : Array(Array(UInt8)), seed : Array(UInt8)) : TlsServerConfig | TlsError\n def self.from_der(chain : Array(Array(UInt8)), key : P256PrivateKey) : TlsServerConfig | TlsError\n def self.from_der(chain : Array(Array(UInt8)), key : P384PrivateKey) : TlsServerConfig | TlsError\n def self.from_der(chain : Array(Array(UInt8)), key : RsaPrivateKey) : TlsServerConfig | TlsError\n # `TlsIdentity.from_pem`'s identity, as a server's.\n def self.from_pem(certificates : String, private_key : String) : TlsServerConfig | TlsError\n # This config as it is now, for a server whose connections run on\n # several threads at once (`TlsFrozenServerConfig`). One with an\n # `identity_source` is refused by panicking: a `Proc` may have captured\n # anything, and nothing checked it - the source goes to the block form\n # below instead, where the compiler checks it.\n def frozen : TlsFrozenServerConfig\n # The same, with the block as its `identity_source`, asked with the\n # host, the protocols and the milliseconds left as that is. The def is\n # `@[Share]`, so the block is checked where it is written as a parallel\n # task's is (SPEC.md III.4.4, III.4.13): every value it captures must be\n # `Share` - identities, which are, a `Mutex` around a table of them, a\n # `Channel` to the thread that keeps them - every captured local\n # assigned once, and the constants and class variables it names\n # `Share`. It is called on whichever worker the handshake runs on,\n # several at once. `identity_source`, if set, is not asked.\n def frozen(&source : (String | ::Nil, Array(String) | ::Nil, Int32 | ::Nil -> TlsIdentity | TlsError | Nil)) : TlsFrozenServerConfig\n # `groups`' code points, those this module has, once each.\n def group_codes : Array(Int32)\n # The key exchange groups a TLS 1.3 handshake takes, by the names\n # `named_group` gives them, most wanted first: X25519MLKEM768, X25519,\n # secp256r1 and secp384r1 unless set. The first of them a client lists is\n # taken where it sent a share in it, or is X25519MLKEM768 - for which a\n # client that sent no share is asked by HelloRetryRequest - and the next\n # otherwise; a client that sent a share in none of them it lists is asked\n # for the first it lists. A name this module has no group of is passed\n # over. TLS 1.2's groups are its own, as the module's header says.\n def groups : Array(String)\n # The key exchange groups a TLS 1.3 handshake takes, by the names\n # `named_group` gives them, most wanted first: X25519MLKEM768, X25519,\n # secp256r1 and secp384r1 unless set. The first of them a client lists is\n # taken where it sent a share in it, or is X25519MLKEM768 - for which a\n # client that sent no share is asked by HelloRetryRequest - and the next\n # otherwise; a client that sent a share in none of them it lists is asked\n # for the first it lists. A name this module has no group of is passed\n # over. TLS 1.2's groups are its own, as the module's header says.\n def groups=(value : Array(String)) : Array(String)\n def identity : TlsIdentity\n # The identity at *index*, as `identity_index` counts; nil past them.\n def identity_at(index : Int32) : TlsIdentity | ::Nil\n # The identity a client asking for *name*, taking signatures under\n # *schemes*, is shown: the first of `others` that names the host and\n # signs under a scheme the client takes, else `identity` if it does; nil\n # when none of them does.\n def identity_for(name : String | ::Nil, schemes : Array(Int32)) : TlsIdentity | ::Nil\n # The place of *identity* among this server's, which a ticket carries:\n # 0 for `identity`, then `others` in order.\n def identity_index(identity : TlsIdentity) : Int32\n # Asked first, in TLS 1.3 and 1.2, for the identity a client is shown:\n # given the host the client named by server_name (nil when it named\n # none), the protocols its ALPN offered (nil when it offered none), and\n # the milliseconds left of the handshake's deadline (0 once it has\n # passed, nil when the handshake has none). An identity it answers is\n # shown where one of `others` would have been - so a scheme of its key\n # the client takes, and in 1.2 a suite and a curve for it, or the client\n # is refused as for `identity`; nil leaves the choice to `others` and\n # `identity` as without it; an error refuses the handshake, the client\n # sent the alert that error names. Asked of each ClientHello that lists\n # signature_algorithms - a second one after a HelloRetryRequest too, and\n # one offering a ticket, which may yet come to a full handshake; a\n # resumption shows no certificate, and its ticket counts the session as\n # `identity`'s (`identity_index`). The handshake waits for it, and its\n # deadline cuts only the reads after it: a source that may wait - for a\n # CA, say - keeps its waits within the time it is given, or holds the\n # connection past the deadline. Not asked when nil.\n def identity_source : Proc(String | ::Nil, Array(String) | ::Nil, Int32 | ::Nil, TlsIdentity | TlsError | Nil) | ::Nil\n # Asked first, in TLS 1.3 and 1.2, for the identity a client is shown:\n # given the host the client named by server_name (nil when it named\n # none), the protocols its ALPN offered (nil when it offered none), and\n # the milliseconds left of the handshake's deadline (0 once it has\n # passed, nil when the handshake has none). An identity it answers is\n # shown where one of `others` would have been - so a scheme of its key\n # the client takes, and in 1.2 a suite and a curve for it, or the client\n # is refused as for `identity`; nil leaves the choice to `others` and\n # `identity` as without it; an error refuses the handshake, the client\n # sent the alert that error names. Asked of each ClientHello that lists\n # signature_algorithms - a second one after a HelloRetryRequest too, and\n # one offering a ticket, which may yet come to a full handshake; a\n # resumption shows no certificate, and its ticket counts the session as\n # `identity`'s (`identity_index`). The handshake waits for it, and its\n # deadline cuts only the reads after it: a source that may wait - for a\n # CA, say - keeps its waits within the time it is given, or holds the\n # connection past the deadline. Not asked when nil.\n def identity_source=(value : Proc(String | ::Nil, Array(String) | ::Nil, Int32 | ::Nil, TlsIdentity | TlsError | Nil) | ::Nil) : Proc(String | ::Nil, Array(String) | ::Nil, Int32 | ::Nil, TlsIdentity | TlsError | Nil) | ::Nil\n def initialize(identity : TlsIdentity)\n def leaf : Certificate\n # The ticket lifetime in milliseconds, held to 1 s .. seven days.\n def lifetime_ms : Int64\n # The most early data (0-RTT, RFC 8446 section 2.3) a ticket lets a\n # client send with its ClientHello, which `TlsServer#read_early` reads\n # apart from what `read` does: none when 0, as unless set, and at most\n # `MAX_EARLY_DATA`. Early data can be replayed: `replay_guard` refuses\n # what it can (see `TlsReplayGuard` for what it does not), and what\n # comes early must still be safe to act on twice.\n def max_early_data : Int32\n # The most early data (0-RTT, RFC 8446 section 2.3) a ticket lets a\n # client send with its ClientHello, which `TlsServer#read_early` reads\n # apart from what `read` does: none when 0, as unless set, and at most\n # `MAX_EARLY_DATA`. Early data can be replayed: `replay_guard` refuses\n # what it can (see `TlsReplayGuard` for what it does not), and what\n # comes early must still be safe to act on twice.\n def max_early_data=(value : Int32) : Int32\n # The oldest version this server speaks: TLS 1.3 by default, and then a\n # client that does not offer it is refused (protocol_version); `TLS12`\n # answers a client that offers 1.2 and not 1.3 in 1.2, held to what the\n # module's header says. A client that offers 1.3 is answered in it\n # either way.\n def min_version : TlsVersion\n # The oldest version this server speaks: TLS 1.3 by default, and then a\n # client that does not offer it is refused (protocol_version); `TLS12`\n # answers a client that offers 1.2 and not 1.3 in 1.2, held to what the\n # module's header says. A client that offers 1.3 is answered in it\n # either way.\n def min_version=(value : TlsVersion) : TlsVersion\n # The time a client's certificate is checked at; now when nil.\n def now : Time | ::Nil\n # The time a client's certificate is checked at; now when nil.\n def now=(value : Time | ::Nil) : Time | ::Nil\n # More identities, each shown to a client that asks by server_name (RFC\n # 6066) for a host its certificate names; `identity` to any other.\n def others : Array(TlsIdentity)\n # What refuses early data a server has taken before (RFC 8446 section 8).\n def replay_guard : TlsReplayGuard\n def schemes : Array(Int32)\n protected def share_state(keys : TlsTicketKeys, guard : TlsReplayGuard) : Nil\n # *der*, an OCSP response for *identity*'s leaf, stapled to its\n # certificate for a client that asks (RFC 6066's status_request; in TLS\n # 1.3 the leaf's CertificateEntry carries it, in 1.2 a CertificateStatus):\n # see `TlsIdentity#staple` for what is refused. A later call replaces it,\n # as a server fetching fresh responses would.\n def staple(der : Array(UInt8), identity : TlsIdentity = @identity) : TlsError | ::Nil\n # The keys this server's tickets are sealed under.\n def ticket_keys : TlsTicketKeys\n # How long a ticket may be resumed by, in seconds, from 1 to seven days\n # (604800, section 4.6.1's most); the period the ticket key turns over\n # in, too (`TlsTicketKeys`).\n def ticket_lifetime : Int32\n # How long a ticket may be resumed by, in seconds, from 1 to seven days\n # (604800, section 4.6.1's most); the period the ticket key turns over\n # in, too (`TlsTicketKeys`).\n def ticket_lifetime=(value : Int32) : Int32\n # NewSessionTickets sent after each handshake, for a client to resume\n # by (RFC 8446 section 4.6.1); none when 0, and at most `MAX_TICKETS`.\n def tickets : Int32\n # NewSessionTickets sent after each handshake, for a client to resume\n # by (RFC 8446 section 4.6.1); none when 0, and at most `MAX_TICKETS`.\n def tickets=(value : Int32) : Int32\nend\n\n# What a client keeps to resume a server's sessions (RFC 8446 section\n# 2.2): the tickets its NewSessionTickets carry, each with the PSK its\n# nonce makes. The caller holds it and hands it to `TlsClient.connect` or\n# `over`; there is no store of the process's own. A connection offers the\n# newest ticket that fits it, and takes it out, for a ticket goes out once\n# (appendix C.4): two resumptions are not tied together by it. A resumed\n# handshake checks no certificate - the ticket stands for the check the\n# first one made, and its chain is the resumed connection's\n# `peer_certificates` - so a ticket fits only a connection that check\n# would stand for:\n# - to the host and port it came from: section 4.6.1 has a client resume\n# only for a name the first handshake's certificate was checked for, and\n# a ticket offered to another port names the client to whatever server\n# listens there;\n# - under the configuration it came under (`TlsMadeUnder`): one session\n# shared by two configurations resumed the first one's ticket under the\n# second, its roots, `now` and `require_staple` never applied, and with\n# mutual TLS the server took the ticket's client certificate for the\n# connection's, so a connection made under identity B was identity A's;\n# - while the server's certificate is valid at the configuration's `now`\n# (the clock's when nil), as Go's client has it: a session past its\n# leaf's notAfter is a full handshake, which refuses it;\n# - within its lifetime, and within seven days (`MAX_LIFETIME`, section\n# 4.6.1's most) of the full handshake that checked those certificates,\n# however many resumptions came between: a server that sent fresh\n# tickets on every resumed connection otherwise kept the session alive\n# for as long as the client came back.\npub class TlsSession\n # A session holding at most *limit* tickets, held to 0 ..\n # `MAX_TICKETS`: std/http's `HTTPClient` keeps fewer for each origin.\n def initialize(limit : Int32 = MAX_TICKETS)\n # *ticket* held, the oldest gone past the session's limit.\n def keep(ticket : TlsHeldTicket) : Nil\n # How many tickets are held.\n def size : Int32\n # The newest ticket for *host* and *port* under *config* (the class's\n # header says which fit), taken out, at *now_ms* by the monotonic clock.\n # Those past their lifetimes or seven days from their full handshake go\n # too, and so does one that fits but whose server certificate has\n # expired.\n def take(host : String, port : Int32, config : TlsConfig, now_ms : Int64) : TlsHeldTicket | ::Nil\nend\n\n# The session a server's ticket seals, for a resumption to take up: the\n# suite, when it was issued (monotonic ms) and for how long (seconds),\n# its age_add, the PSK, the name the client asked for, the protocol\n# chosen, the identity shown (`TlsServerConfig#identity_index`), the\n# client's certificates (DER, leaf first), and when the first handshake\n# checked the certificates the session rests on (monotonic ms). The name's\n# length is two bytes and the identity's place four: in version 1 each\n# was one, and a name past 255 bytes, which the ClientHello then let\n# through, sealed a ticket that never opened, and a place past 255 among\n# `others` wrapped round. The PSK (48 bytes at most), the protocol (one\n# byte long in ALPN itself) and the chain's count - a chain of 256\n# certificates is far past `TlsServerConfig::MAX_TICKET`, which no ticket\n# is sent beyond - keep one byte.\npub class TlsTicket\n def age_add : Int64\n def alpn : String | ::Nil\n def authenticated_ms : Int64\n def chain : Array(Array(UInt8))\n # The state *bytes* hold, or nil when they are not one this encodes.\n def self.decode(bytes : Array(UInt8)) : TlsTicket | ::Nil\n def encode : Array(UInt8)\n def identity : Int32\n def initialize(suite : Int32, issued_ms : Int64, lifetime : Int64, age_add : Int64, psk : Array(UInt8), server_name : String | ::Nil, alpn : String | ::Nil, identity : Int32, chain : Array(Array(UInt8)), authenticated_ms : Int64, max_early_data : Int64 = 0_i64)\n def issued_ms : Int64\n def lifetime : Int64\n def max_early_data : Int64\n # The session *ticket* seals, opened by *keys* at *now_ms*: nil when no\n # key held opens it, or when its lifetime is over by this server's own\n # count from its issue.\n def self.open(keys : TlsTicketKeys, ticket : Array(UInt8), now_ms : Int64, period_ms : Int64) : TlsTicket | ::Nil\n def psk : Array(UInt8)\n def server_name : String | ::Nil\n def suite : Int32\nend\n\n# The keys a server seals its tickets under. RFC 8446 section 4.6.1 leaves\n# a ticket's form to the server; this one is RFC 5077 section 4's shape:\n# the key's 8-byte name, a 12-byte nonce drawn at random, and the state\n# sealed by ChaCha20-Poly1305 (std/aead, constant-time) with the name as\n# its additional data. A key made at random in this process seals for one\n# period - the ticket lifetime - and then only opens, for one more: a\n# ticket opens for all its lifetime, and no key opens anything past two\n# periods. A key idle past both goes with the one before it. The keys live\n# in this process: a ticket outlives neither a restart nor a move to\n# another server, which would need the keys shared and is not offered.\n#\n# Every thread of the process may seal and open at once - a server's\n# workers under `TlsFrozenServerConfig` share one set, so a ticket one\n# sealed another opens - so the keys are behind a `Mutex`, which makes\n# this type `Share` by its fields: the current name and key, and the\n# previous ones, are read under the lock, the key turned over there when\n# it is due, and the seal or open done outside it with the key read.\n# The lock is held for a comparison and four reads, and for two random\n# draws when the key turns over.\npub class TlsTicketKeys\n def initialize(now_ms : Int64 = TlsTime.now_ms)\n # The state *ticket* seals, when a key still held at *now_ms* opens it;\n # nil for any other bytes.\n def open(ticket : Array(UInt8), now_ms : Int64, period_ms : Int64) : Array(UInt8) | ::Nil\n # A new key from *now_ms*: what the one before sealed still opens, and\n # what the one before that sealed no longer does.\n def rotate(now_ms : Int64 = TlsTime.now_ms) : Nil\n # *state* sealed at *now_ms* (monotonic) under the current key - a new\n # one first, when *period_ms* has passed since it was made. Empty only\n # when the task was cancelled while it waited for the keys.\n def seal(state : Array(UInt8), now_ms : Int64, period_ms : Int64) : Array(UInt8)\nend\n\n# The versions a connection may speak: TLS 1.3, or TLS 1.2 as well (RFC\n# 5246), for a peer that never moved past it.\npub enum TlsVersion : Int32\n TLS12 = 0\n TLS13 = 1\nend\n\nimpl Error for TlsError\n def message : String\nend\n" }, { "name": "std/toml", @@ -592,8 +640,8 @@ { "name": "std/udp", "path": "src/std/udp.iyi", - "sourceSha256": "fe3d3e40e1586bbf90ce1a0db865944f9467e4499abcc8b3a6a392c3d5419ae0", - "surface": "module std/udp\n\npub alias Bytes = Std::Slice::Bytes\n\n# An incoming datagram with payload bytes and remote peer origin.\npub struct Datagram\n def [](i : Int32) : Bytes | String | Int32\n def data : Bytes\n def host : String\n def initialize(data : Bytes, host : String, port : Int32)\n def port : Int32\n # Decodes payload bytes as a String.\n def text : String\n def to_s : String\n def to_tuple : Tuple(Bytes, String, Int32)\nend\n\n# The address types, their parsers and the `sockaddr_in`/`sockaddr_in6`\n# writers are `std/socket`'s; this module had copies, and the copies had\n# drifted: its IPv6 parser read no dotted tail and its printer compressed\n# only `::` and `::1`.\npub alias IPv4Address = Std::Socket::IPv4Address\n\npub alias IPv6Address = Std::Socket::IPv6Address\n\npub class UdpSocket\n lib LibWs2_32\n struct PollFd\n end\n # Both are kept on the caller's frame rather than the heap: the kernel\n # reads and writes them after a post, while the fiber is parked, and a\n # heap chunk whose only reference is a local the posting call has\n # finished with is a chunk the collector can hand to somebody else\n # first.\n struct WSABuf\n end\n end\n alias SockLen = Int32\n def self.__is_eagain(res : Int64) : ::Bool\n # Never: Winsock has no EINTR. A call either answers, or answers\n # WSAEWOULDBLOCK, or is posted and completed.\n def self.__is_eintr(res : Int64) : ::Bool\n # A datagram that did not fit is an error here where it is a silent\n # truncation everywhere else: WSAEMSGSIZE (10040), with the buffer\n # already filled, which is why the caller answers its capacity.\n def self.__is_msgsize(res : Int64) : ::Bool\n # Never: the report is turned off in `__sys_socket`.\n def self.__is_refused(res : Int64) : ::Bool\n # WSAEINVAL (10022): Winsock's answer to a receive, or an address asked,\n # on a socket that has none yet - one `client` made and nothing sent\n # from. POSIX has nothing queued there and port 0; Windows panicked.\n def self.__is_unbound(res : Int64) : ::Bool\n def self.__sys_bind(fd : Int32, addr : Pointer(UInt8), len : Int32) : Int32\n # A datagram socket's `connect` only records the peer, so there is no\n # handshake to wait for and nothing to post.\n def self.__sys_connect(fd : Int32, addr : Pointer(UInt8), len : Int32) : Int32\n # Winsock's error number, negated, which is the shape the POSIX arms\n # answer the kernel's errno in; the two predicates at the bottom are the\n # only things that read which number it was.\n def self.__sys_error : Int64\n def self.__sys_get_buffer_size(fd : Int32, level : Int32, optname : Int32) : Int32\n def self.__sys_getsockname(fd : Int32, addr : Pointer(UInt8), addrlen : Pointer(UInt32)) : Int32\n def self.__sys_handle(fd : Int32) : UInt64\n # The wait a cancelled post still owes the kernel. `CancelIoEx` is a\n # request, and on a socket tied to a completion port the operation is not\n # over when it returns: measured here, the status stays STATUS_PENDING\n # and the descriptor, the caller's address and the OVERLAPPED are the\n # kernel's until the completion packet is taken *off the port* — the\n # poller's `GetQueuedCompletionStatus` is what writes them. The same\n # measurement on an unassociated socket had the status written by\n # `CancelIoEx` itself, which is why this is not obvious. So\n # `WSAGetOverlappedResult`'s own wait flag cannot be the wait either: it\n # waits on the OVERLAPPED's event, the scheduler's OVERLAPPED has none,\n # and the socket handle it falls back to is never signalled for a socket\n # on a port — it hung forever on the first cancelled receive tried.\n #\n # What ends the operation is the poller, so the frame parks once more and\n # lets it. `IyiScheduler.cancel` has already unregistered this fiber,\n # which is what would have left the packet to be dropped; parking puts it\n # back, and the wake means the dequeue has happened. Asked first, because\n # a completion the poller delivered *before* the cancel is already over\n # and no second packet is coming — parking on one would never wake.\n def self.__sys_overlapped_await(s : UInt64, ov : Pointer(UInt8)) : Int64\n # What the posted operation ended with, read off the operation itself:\n # the completion port's byte count cannot tell a failure from a datagram\n # of no bytes, which is a legal datagram. Nothing waits here, which is\n # what the 0 says.\n def self.__sys_overlapped_result(s : UInt64, ov : Pointer(UInt8)) : Int64\n # One descriptor, one event, and a bound on the wait, which is what the\n # epoll and kqueue arms do with theirs.\n def self.__sys_poll_read(fd : Int32, timeout_ms : Int32) : ::Bool\n # Winsock's address length is an `int*` where POSIX has a `socklen_t*`:\n # the same width and the same bytes, so the callers keep one signature.\n def self.__sys_recvfrom(fd : Int32, buf : Pointer(UInt8), len : UInt64, flags : Int32, addr : Pointer(UInt8), addrlen : Pointer(UInt32)) : Int64\n # The receive that waits, which on Windows is a posted one: see the note\n # in `receive_into` for why the readable-wait cannot be used here. The\n # buffer descriptor and the flags stay on this frame for the whole\n # operation, and the address and its length are the caller's, which\n # `receive_from` reads after this returns.\n def self.__sys_recvfrom_posted(fd : Int32, buf : Pointer(UInt8), capacity : Int32, addr : Pointer(UInt8), addrlen : Pointer(UInt32)) : Int32 | Cancelled\n def self.__sys_send(fd : Int32, buf : Pointer(UInt8), len : UInt64) : Int64\n def self.__sys_sendto(fd : Int32, buf : Pointer(UInt8), len : UInt64, flags : Int32, addr : Pointer(UInt8), addrlen : Int32) : Int64\n def self.__sys_set_buffer_size(fd : Int32, level : Int32, optname : Int32, size : Int32) : Int32\n def self.__sys_socket(domain : Int32 = 2) : Int32\n def self.__unbound_now? : ::Bool\n # Binds a UDP socket to the specified host and port.\n # Automatically detects whether host is an IPv4 or IPv6 address.\n #\n # Without SO_REUSEADDR, on every platform. It waives TIME_WAIT for a\n # listener, and a datagram port never has one; what it does to a\n # datagram socket on Linux is let a second socket bind the same address\n # and port while the first holds it, and unicast then reaches only one\n # of them. The POSIX arms asked for it and the win32 arm did not, so a\n # second bind of a held port failed on Windows, measured, and went\n # through on Linux [INFERENCE: not run here].\n def self.bind(host : String, port : Int32) : UdpSocket\n # Binds a UDP socket to 0.0.0.0 and the specified port.\n def self.bind(port : Int32) : UdpSocket\n # Binds an IPv6 UDP socket to [::] and the specified port.\n def self.bind6(port : Int32) : UdpSocket\n # `bind`, with a refused bind answered rather than raised: the port\n # held, reserved (Windows' excluded ranges answer \"access denied\"), or\n # the address not this machine's - so a program can pick another. An\n # error's `message` is the sentence `bind` raises.\n def self.bind?(host : String, port : Int32) : UdpSocket | SocketError\n # Creates an unbound UDP client socket.\n def self.client(family : Int32 = 2) : UdpSocket\n # Creates an unbound IPv6 UDP client socket.\n def self.client_v6 : UdpSocket\n # Closes the socket file descriptor.\n def close : Nil\n def closed? : ::Bool\n # Connects the UDP socket to a remote host and port (sets default peer).\n def connect(host : String, port : Int32) : Nil\n def family : Int32\n def fd : Int32\n def self.format_address(addr : Pointer(UInt8)) : Tuple(String, Int32)\n def initialize(fd : Int32 = -1, family : Int32 = 2)\n # Reads back the locally bound IP address.\n def local_address : String\n # Reads back the locally bound port assigned by the OS.\n def local_port : Int32\n def self.make_sockaddr(host : String, port : Int32) : Tuple(Pointer(UInt8), SockLen, Int32)\n # Creates an unbound UDP socket.\n def self.open(family : Int32 = 2) : UdpSocket\n # Polls whether the socket is readable within timeout_ms milliseconds.\n # Returns true if a datagram is ready to be read, false on timeout.\n def poll_read(timeout_ms : Int32 = 0) : ::Bool\n # Receives payload bytes from the connected peer, parking until some arrive.\n def receive(max_bytes : Int32 = 65536) : Bytes | Cancelled\n # Payload bytes queued now from the connected peer, or nil.\n def receive?(max_bytes : Int32 = 65536) : Bytes | ::Nil\n # Returns the current receive buffer size (SO_RCVBUF).\n def receive_buffer_size : Int32\n # Sets the receive buffer size (SO_RCVBUF).\n def receive_buffer_size=(size : Int32) : Nil\n # Receives a Datagram struct containing data, host, and port.\n def receive_datagram(max_bytes : Int32 = 65536) : Datagram | Cancelled\n # A Datagram of what is queued now, or nil.\n def receive_datagram?(max_bytes : Int32 = 65536) : Datagram | ::Nil\n # Receives a datagram into a newly allocated Bytes slice up to max_bytes.\n # Answers {payload, peer_host, peer_port}, parking until one arrives.\n def receive_from(max_bytes : Int32 = 65536) : Tuple(Bytes, String, Int32) | Cancelled\n # Receives a datagram into a caller-supplied Bytes buffer.\n # Answers {subslice_of_received_bytes, peer_host, peer_port}.\n def receive_from(buffer : Bytes) : Tuple(Bytes, String, Int32) | Cancelled\n # What is queued now, or nil. Never parks.\n def receive_from?(max_bytes : Int32 = 65536) : Tuple(Bytes, String, Int32) | ::Nil\n # Into a buffer: what is queued now, or nil. Never parks.\n def receive_from?(buffer : Bytes) : Tuple(Bytes, String, Int32) | ::Nil\n # Why a call failed: `std/socket`'s sentence for the platform's\n # number (`SocketError#reason`), and the refusals only a datagram meets\n # named as well. Each refusal was a fixed sentence that dropped the\n # number, so a broadcast, a datagram past 65,507 bytes, a port in use\n # and an IPv6 address from an IPv4 socket all said only \"cannot send to\n # H:P\" or \"cannot bind UDP socket to H:P\" - measured on Windows.\n def self.refusal(res : Int64, sending : ::Bool) : String\n # Sends bytes to the connected peer.\n def send(bytes : Bytes) : Int32\n # Sends string to the connected peer.\n def send(str : String) : Int32\n # Returns the current send buffer size (SO_SNDBUF).\n def send_buffer_size : Int32\n # Sets the send buffer size (SO_SNDBUF).\n def send_buffer_size=(size : Int32) : Nil\n # Sends a raw buffer to a destination host and port.\n def send_to(buffer : Pointer(UInt8), count : Int32, host : String, port : Int32) : Int32\n # Sends bytes to a destination host and port.\n def send_to(bytes : Bytes, host : String, port : Int32) : Int32\n # Sends string contents as a datagram to a destination host and port.\n def send_to(str : String, host : String, port : Int32) : Int32\n def to_unsafe : Int32\n # Creates an unbound UDP socket.\n def self.unbound(family : Int32 = 2) : UdpSocket\nend\n" + "sourceSha256": "de67e123e5505406321b5f1cf7626e43fedf141ada0f9e89a667f3ab7cc0d858", + "surface": "module std/udp\n\npub alias Bytes = Std::Slice::Bytes\n\n# An incoming datagram with payload bytes and remote peer origin.\npub struct Datagram\n def [](i : Int32) : Bytes | String | Int32\n def data : Bytes\n def host : String\n def initialize(data : Bytes, host : String, port : Int32)\n def port : Int32\n # Decodes payload bytes as a String.\n def text : String\n def to_s : String\n def to_tuple : Tuple(Bytes, String, Int32)\nend\n\n# The address types, their parsers and the `sockaddr_in`/`sockaddr_in6`\n# writers are `std/socket`'s; this module had copies, and the copies had\n# drifted: its IPv6 parser read no dotted tail and its printer compressed\n# only `::` and `::1`.\npub alias IPv4Address = Std::Socket::IPv4Address\n\npub alias IPv6Address = Std::Socket::IPv6Address\n\npub class UdpSocket\n alias SockLen = Int64\n def self.__is_eagain(res : Int64) : ::Bool\n def self.__is_eintr(res : Int64) : ::Bool\n # No such refusal: a datagram larger than the buffer fills it, the\n # rest is dropped and the length answered is what fit.\n def self.__is_msgsize(res : Int64) : ::Bool\n # ECONNREFUSED (111): the ICMP port-unreachable a *connected* datagram\n # socket's earlier send provoked, which Linux and BSD report once, to\n # the next send or receive on it (udp(7)), and then forget; an\n # unconnected one is never told. It is something the peer did, not a\n # failure of this socket, so the shared bodies read it as nothing\n # queued and send again. Read as a failure, the next `send` or\n # `receive?` panicked here, where Windows, which has the report turned\n # off, answered the byte count and nil. A `poll_read` the report wakes\n # still answers true [INFERENCE], and the `receive?` after it nil.\n def self.__is_refused(res : Int64) : ::Bool\n def self.__is_unbound(res : Int64) : ::Bool\n def self.__sys3(number : Int64, a : Int64, b : Int64, c : Int64) : Int64\n def self.__sys5(number : Int64, a : Int64, b : Int64, c : Int64, d : Int64, e : Int64) : Int64\n def self.__sys6(number : Int64, a : Int64, b : Int64, c : Int64, d : Int64, e : Int64, f : Int64) : Int64\n def self.__sys_bind(fd : Int32, addr : Pointer(UInt8), len : Int64) : Int32\n def self.__sys_connect(fd : Int32, addr : Pointer(UInt8), len : Int64) : Int32\n def self.__sys_get_buffer_size(fd : Int32, level : Int32, optname : Int32) : Int32\n def self.__sys_getsockname(fd : Int32, addr : Pointer(UInt8), addrlen : Pointer(UInt32)) : Int32\n def self.__sys_poll_read(fd : Int32, timeout_ms : Int32) : ::Bool\n def self.__sys_recvfrom(fd : Int32, buf : Pointer(UInt8), len : UInt64, flags : Int32, addr : Pointer(UInt8), addrlen : Pointer(UInt32)) : Int64\n def self.__sys_send(fd : Int32, buf : Pointer(UInt8), len : UInt64) : Int64\n def self.__sys_sendto(fd : Int32, buf : Pointer(UInt8), len : UInt64, flags : Int32, addr : Pointer(UInt8), addrlen : Int64) : Int64\n def self.__sys_set_buffer_size(fd : Int32, level : Int32, optname : Int32, size : Int32) : Int32\n def self.__sys_socket(domain : Int32 = 2) : Int32\n def self.__unbound_now? : ::Bool\n # Binds a UDP socket to the specified host and port.\n # Automatically detects whether host is an IPv4 or IPv6 address.\n #\n # Without SO_REUSEADDR, on every platform. It waives TIME_WAIT for a\n # listener, and a datagram port never has one; what it does to a\n # datagram socket on Linux is let a second socket bind the same address\n # and port while the first holds it, and unicast then reaches only one\n # of them. The POSIX arms asked for it and the win32 arm did not, so a\n # second bind of a held port failed on Windows, measured, and went\n # through on Linux [INFERENCE: not run here].\n def self.bind(host : String, port : Int32) : UdpSocket\n # Binds a UDP socket to 0.0.0.0 and the specified port.\n def self.bind(port : Int32) : UdpSocket\n # Binds an IPv6 UDP socket to [::] and the specified port.\n def self.bind6(port : Int32) : UdpSocket\n # `bind`, with a refused bind answered rather than raised: the port\n # held, reserved (Windows' excluded ranges answer \"access denied\"), or\n # the address not this machine's - so a program can pick another. An\n # error's `message` is the sentence `bind` raises.\n def self.bind?(host : String, port : Int32) : UdpSocket | SocketError\n # Creates an unbound UDP client socket.\n def self.client(family : Int32 = 2) : UdpSocket\n # Creates an unbound IPv6 UDP client socket.\n def self.client_v6 : UdpSocket\n # Closes the socket file descriptor.\n def close : Nil\n def closed? : ::Bool\n # Connects the UDP socket to a remote host and port (sets default peer).\n def connect(host : String, port : Int32) : Nil\n def family : Int32\n def fd : Int32\n def self.format_address(addr : Pointer(UInt8)) : Tuple(String, Int32)\n def initialize(fd : Int32 = -1, family : Int32 = 2)\n # Reads back the locally bound IP address.\n def local_address : String\n # Reads back the locally bound port assigned by the OS.\n def local_port : Int32\n def self.make_sockaddr(host : String, port : Int32) : Tuple(Pointer(UInt8), SockLen, Int32)\n # Creates an unbound UDP socket.\n def self.open(family : Int32 = 2) : UdpSocket\n # Polls whether the socket is readable within timeout_ms milliseconds.\n # Returns true if a datagram is ready to be read, false on timeout.\n def poll_read(timeout_ms : Int32 = 0) : ::Bool\n # Receives payload bytes from the connected peer, parking until some arrive.\n def receive(max_bytes : Int32 = 65536) : Bytes | Cancelled\n # Payload bytes queued now from the connected peer, or nil.\n def receive?(max_bytes : Int32 = 65536) : Bytes | ::Nil\n # Returns the current receive buffer size (SO_RCVBUF).\n def receive_buffer_size : Int32\n # Sets the receive buffer size (SO_RCVBUF).\n def receive_buffer_size=(size : Int32) : Nil\n # Receives a Datagram struct containing data, host, and port.\n def receive_datagram(max_bytes : Int32 = 65536) : Datagram | Cancelled\n # A Datagram of what is queued now, or nil.\n def receive_datagram?(max_bytes : Int32 = 65536) : Datagram | ::Nil\n # Receives a datagram into a newly allocated Bytes slice up to max_bytes.\n # Answers {payload, peer_host, peer_port}, parking until one arrives.\n def receive_from(max_bytes : Int32 = 65536) : Tuple(Bytes, String, Int32) | Cancelled\n # Receives a datagram into a caller-supplied Bytes buffer.\n # Answers {subslice_of_received_bytes, peer_host, peer_port}.\n def receive_from(buffer : Bytes) : Tuple(Bytes, String, Int32) | Cancelled\n # What is queued now, or nil. Never parks.\n def receive_from?(max_bytes : Int32 = 65536) : Tuple(Bytes, String, Int32) | ::Nil\n # Into a buffer: what is queued now, or nil. Never parks.\n def receive_from?(buffer : Bytes) : Tuple(Bytes, String, Int32) | ::Nil\n # Why a call failed: `std/socket`'s sentence for the platform's\n # number (`SocketError#reason`), and the refusals only a datagram meets\n # named as well. Each refusal was a fixed sentence that dropped the\n # number, so a broadcast, a datagram past 65,507 bytes, a port in use\n # and an IPv6 address from an IPv4 socket all said only \"cannot send to\n # H:P\" or \"cannot bind UDP socket to H:P\" - measured on Windows.\n def self.refusal(res : Int64, sending : ::Bool) : String\n # Sends bytes to the connected peer.\n def send(bytes : Bytes) : Int32\n # Sends string to the connected peer.\n def send(str : String) : Int32\n # Returns the current send buffer size (SO_SNDBUF).\n def send_buffer_size : Int32\n # Sets the send buffer size (SO_SNDBUF).\n def send_buffer_size=(size : Int32) : Nil\n # Sends a raw buffer to a destination host and port.\n def send_to(buffer : Pointer(UInt8), count : Int32, host : String, port : Int32) : Int32\n # Sends bytes to a destination host and port.\n def send_to(bytes : Bytes, host : String, port : Int32) : Int32\n # Sends string contents as a datagram to a destination host and port.\n def send_to(str : String, host : String, port : Int32) : Int32\n def to_unsafe : Int32\n # Creates an unbound UDP socket.\n def self.unbound(family : Int32 = 2) : UdpSocket\nend\n" }, { "name": "std/unicode", @@ -634,8 +682,8 @@ { "name": "std/x509", "path": "src/std/x509.iyi", - "sourceSha256": "5bae4254f0d2d9b117c7bb5a89aee875693b1cb59a2760a005979f19e46de508", - "surface": "module std/x509\n\npub struct Certificate\n def authority_key_id : Array(UInt8) | ::Nil\n # basicConstraints: whether it was present, cA, and pathLenConstraint.\n def basic_constraints : Bool\n def ca : Bool\n # subjectAltName's dNSName and iPAddress entries.\n def dns_names : Array(String)\n def excluded_dns : Array(String)\n def excluded_ips : Array(Array(UInt8))\n # extKeyUsage's OIDs; nil when the extension is absent.\n def extended_key_usage : Array(String) | ::Nil\n # Every CERTIFICATE block in a PEM text, read; the first one that is not\n # a certificate is the answer.\n def self.from_pem(text : String) : Array(Certificate) | X509Error\n def initialize(raw : Array(UInt8), tbs : Array(UInt8), version : Int32, serial : Array(UInt8), issuer : Array(UInt8), subject : Array(UInt8), subject_name : String, issuer_name : String, not_before : Time, not_after : Time, public_key : RsaPublicKey | EcdsaPublicKey | Ed25519PublicKey, signature_algorithm : String, signature_parameters : DerValue | ::Nil, signature : Array(UInt8), extensions : X509Extensions)\n def ip_addresses : Array(Array(UInt8))\n # Issuer and subject as their DER: two names are the same name when\n # these are the same bytes.\n def issuer : Array(UInt8)\n def issuer_name : String\n # keyUsage's bits, bit 0 digitalSignature to bit 8 decipherOnly; nil\n # when the extension is absent.\n def key_usage : Int32 | ::Nil\n # Whether *host* is a name this certificate is for: a DNS name or an IP\n # address in its subjectAltName (see the module's header).\n def matches_host?(host : String) : Bool\n def not_after : Time\n def not_before : Time\n def other_constraints : Bool\n # The certificate *der* holds (RFC 5280 section 4.1).\n def self.parse(der : Array(UInt8)) : Certificate | X509Error\n def path_length : Int32 | ::Nil\n # The DER of every CERTIFICATE block in a PEM text, unread: a store\n # can keep what it can read and count the rest.\n def self.pem_blocks(text : String) : Array(Array(UInt8)) | X509Error\n # nameConstraints: DNS names and IP ranges (address and mask), and\n # whether a constraint of any other kind is there.\n def permitted_dns : Array(String)\n def permitted_ips : Array(Array(UInt8))\n def public_key : RsaPublicKey | EcdsaPublicKey | Ed25519PublicKey\n # The whole certificate as it was read, and its signed part.\n def raw : Array(UInt8)\n # The serial number's two's-complement bytes, as written.\n def serial : Array(UInt8)\n def signature : Array(UInt8)\n # The signature algorithm's OID, and the signature.\n def signature_algorithm : String\n # Why *issuer*'s key did not make this certificate's signature, or nil.\n def signature_error(issuer : Certificate) : String | ::Nil\n # Whether *issuer*'s key made this certificate's signature.\n def signed_by?(issuer : Certificate) : Bool\n def subject : Array(UInt8)\n def subject_key_id : Array(UInt8) | ::Nil\n # The subject and issuer written out for a person, `CN=..., O=...`.\n def subject_name : String\n def tbs : Array(UInt8)\n # Critical extensions this does not understand, by OID.\n def unhandled_critical : Array(String)\n def valid_at?(time : Time) : Bool\n def version : Int32\nend\n\npub struct X509\n def initialize\n # The DER of every block labelled *label* in a PEM text - `\"CERTIFICATE\"`\n # or `\"PRIVATE KEY\"` - each checked to be base64 before it is decoded.\n def self.pem(text : String, label : String) : Array(Array(UInt8)) | X509Error\n # The chain from *leaf* to one of *roots*, through *intermediates*, for\n # *host* (nil: any) at *now* - leaf first, root last - or why there is\n # none. *purpose* is what the leaf is for: a server's certificate\n # (serverAuth, the default) or a client's (clientAuth), each certificate\n # that carries extKeyUsage allowing it. See the module's header for what\n # else is checked.\n def self.verify(leaf : Certificate, intermediates : Array(Certificate), roots : Array(Certificate), host : String | ::Nil = nil, now : Time = Time.utc, purpose : X509Purpose = X509Purpose::Server) : Array(Certificate) | X509Error\nend\n\n# What reading a certificate, or checking a chain, answers when it fails.\npub struct X509Error\n def initialize(message : String)\n def to_s : String\nend\n\n# What a chain is checked for: a TLS server's certificate or a client's\n# (RFC 5280 section 4.2.1.12's id-kp-serverAuth and id-kp-clientAuth).\npub enum X509Purpose : Int32\n Server = 0\n Client = 1\n def holder : String\n def oid : String\n # The usage's name, as a sentence says it.\n def usage : String\nend\n\nimpl Error for X509Error\n def message : String\nend\n" + "sourceSha256": "d89cff9466a3354bf762ce60c9b11e255204257436a4028892ce12bcd1a46e72", + "surface": "module std/x509\n\n# A class, not a struct, for the stack's sake. Thirty-odd fields make 472\n# bytes, and a struct is copied whole into every array slot, block\n# argument and union it passes through. In a debug build each copy is a\n# stack slot of its own, and a TLS handshake inside a task ran out of\n# its 256 KiB (issue #130). Measured on Linux x86_64, a struct made\n# `Certificate.parse`'s frame 31,832 bytes (each `!` and early return\n# makes a `Certificate | X509Error`), `X509.grow`'s 13,640 and\n# `issuer_error`'s 6,184; a class makes them 5,224, 296 and 368. With\n# `EcdsaP256.check` split as well (std/ecdsa), `X509.verify` of a\n# two-certificate P-256 chain in a task went from 35,608 bytes of stack\n# to 11,768. Nothing in a certificate is written after `parse`, so\n# sharing one is not observable, and two are equal when they are the\n# same DER, as two structs were when every field was.\npub class Certificate\n # The same certificate: the same DER, from which every field is read.\n def ==(other : Certificate) : Bool\n def authority_key_id : Array(UInt8) | ::Nil\n # basicConstraints: whether it was present, cA, and pathLenConstraint.\n def basic_constraints : Bool\n def ca : Bool\n # subjectAltName's dNSName and iPAddress entries.\n def dns_names : Array(String)\n def excluded_dns : Array(String)\n def excluded_ips : Array(Array(UInt8))\n # extKeyUsage's OIDs; nil when the extension is absent.\n def extended_key_usage : Array(String) | ::Nil\n # Every CERTIFICATE block in a PEM text, read; the first one that is not\n # a certificate is the answer.\n def self.from_pem(text : String) : Array(Certificate) | X509Error\n def hash : Int32\n def initialize(raw : Array(UInt8), tbs : Array(UInt8), version : Int32, serial : Array(UInt8), issuer : Array(UInt8), subject : Array(UInt8), subject_name : String, issuer_name : String, not_before : Time, not_after : Time, public_key : RsaPublicKey | EcdsaPublicKey | Ed25519PublicKey, signature_algorithm : String, signature_parameters : DerValue | ::Nil, signature : Array(UInt8), public_key_bits : Array(UInt8), extensions : X509Extensions)\n def ip_addresses : Array(Array(UInt8))\n # Issuer and subject as their DER: two names are the same name when\n # these are the same bytes.\n def issuer : Array(UInt8)\n def issuer_name : String\n # keyUsage's bits, bit 0 digitalSignature to bit 8 decipherOnly; nil\n # when the extension is absent.\n def key_usage : Int32 | ::Nil\n # Whether *host* is a name this certificate is for: a DNS name or an IP\n # address in its subjectAltName (see the module's header).\n def matches_host?(host : String) : Bool\n # Whether the TLS Feature extension (RFC 7633) asks for status_request:\n # a certificate that must be shown with a stapled OCSP response.\n def must_staple? : Bool\n def not_after : Time\n def not_before : Time\n # Whether id-pkix-ocsp-nocheck is here (RFC 6960 section 4.2.2.2.1): an\n # OCSP responder's certificate saying its own status is not asked.\n def ocsp_nocheck : Bool\n def other_constraints : Bool\n # The certificate *der* holds (RFC 5280 section 4.1).\n def self.parse(der : Array(UInt8)) : Certificate | X509Error\n def path_length : Int32 | ::Nil\n # The DER of every CERTIFICATE block in a PEM text, unread: a store\n # can keep what it can read and count the rest.\n def self.pem_blocks(text : String) : Array(Array(UInt8)) | X509Error\n # nameConstraints: DNS names and IP ranges (address and mask), and\n # whether a constraint of any other kind is there.\n def permitted_dns : Array(String)\n def permitted_ips : Array(Array(UInt8))\n def public_key : RsaPublicKey | EcdsaPublicKey | Ed25519PublicKey\n # The subjectPublicKey BIT STRING's bytes, as written: what an OCSP\n # CertID's issuerKeyHash and a responder's byKey are hashes of (RFC\n # 6960 section 4.1.1).\n def public_key_bits : Array(UInt8)\n # The whole certificate as it was read, and its signed part.\n def raw : Array(UInt8)\n # The serial number's two's-complement bytes, as written.\n def serial : Array(UInt8)\n def signature : Array(UInt8)\n # The signature algorithm's OID, and the signature.\n def signature_algorithm : String\n # Why *issuer*'s key did not make this certificate's signature, or nil.\n def signature_error(issuer : Certificate) : String | ::Nil\n # Whether *issuer*'s key made this certificate's signature.\n def signed_by?(issuer : Certificate) : Bool\n def subject : Array(UInt8)\n def subject_key_id : Array(UInt8) | ::Nil\n # The subject and issuer written out for a person, `CN=..., O=...`.\n def subject_name : String\n def tbs : Array(UInt8)\n # The TLS Feature extension's features (RFC 7633), nil when absent:\n # 5, status_request, is \"must staple\".\n def tls_features : Array(Int32) | ::Nil\n # Critical extensions this does not understand, by OID.\n def unhandled_critical : Array(String)\n def valid_at?(time : Time) : Bool\n def version : Int32\nend\n\n# A private key that signs what this module writes - a certificate for\n# itself, a certificate request - and, through std/acme, an ACME account's\n# requests: P-256 or P-384 (std/p256, std/p384), RSA (std/rsa, 2048 bits\n# or more) or Ed25519 (std/curve25519), each signing in constant time.\n# The signature is the one X.509 carries: ECDSA's the DER of\n# Ecdsa-Sig-Value under SHA-256 on P-256 and SHA-384 on P-384, RSA's PKCS\n# #1 v1.5 under SHA-256, Ed25519's its 64 bytes.\npub struct SigningKey\n # The AlgorithmIdentifier of what `sign` makes: ecdsa-with-SHA256 or\n # -SHA384 without parameters (RFC 5758), sha256WithRSAEncryption with\n # its NULL (RFC 4055), id-Ed25519 without parameters (RFC 8410).\n def algorithm_identifier : Array(UInt8)\n # The Ed25519 key whose 32-byte seed (RFC 8032's private key) is *seed*.\n def self.ed25519(seed : Array(UInt8)) : SigningKey | X509Error\n # The key in *text*'s one PRIVATE KEY block (PKCS #8: P-256, P-384, RSA\n # or Ed25519), EC PRIVATE KEY block (SEC 1, P-256 or P-384) or RSA\n # PRIVATE KEY block (PKCS #1).\n def self.from_pem(text : String) : SigningKey | X509Error\n def initialize(p256 : P256PrivateKey | ::Nil, p384 : P384PrivateKey | ::Nil, rsa : RsaPrivateKey | ::Nil, seed : Array(UInt8) | ::Nil)\n # What the key is, for a person: `P-256`, `P-384`, `RSA-2048`, `Ed25519`.\n def kind : String\n def self.new(key : P256PrivateKey) : SigningKey\n def self.new(key : P384PrivateKey) : SigningKey\n def self.new(key : RsaPrivateKey) : SigningKey\n def p256 : P256PrivateKey | ::Nil\n # A new P-256 key, from the system's entropy (std/random's `Secure`).\n # The 32 bytes it is made from are drawn again in the 2^-32 chance that\n # they are not below the group's order.\n def self.p256 : SigningKey\n def p384 : P384PrivateKey | ::Nil\n # A new P-384 key, as `p256` makes one.\n def self.p384 : SigningKey\n def public_key : RsaPublicKey | EcdsaPublicKey | Ed25519PublicKey\n # The key's SubjectPublicKeyInfo (RFC 5280 section 4.1.2.7): RFC 5480's\n # for P-256 and P-384, RFC 8017's rsaEncryption with its NULL, RFC 8410's\n # for Ed25519.\n def public_key_info : Array(UInt8)\n def rsa : RsaPrivateKey | ::Nil\n # *data* signed as `algorithm_identifier` says.\n def sign(data : Array(UInt8)) : Array(UInt8)\nend\n\npub struct X509\n def initialize\n # The DER of every block labelled *label* in a PEM text - `\"CERTIFICATE\"`\n # or `\"PRIVATE KEY\"` - each checked to be base64 before it is decoded.\n def self.pem(text : String, label : String) : Array(Array(UInt8)) | X509Error\n # A certificate request (PKCS #10, RFC 2986) *key* signs, as its DER: the\n # subject CN= when it fits the 64 characters RFC 5280\n # gives a common name and empty otherwise, the key, and an\n # extensionRequest attribute (RFC 2985 section 5.4.2) asking for\n # subjectAltName with *names* as dNSNames - which is what an ACME server\n # issues for (RFC 8555 section 7.4).\n def self.request(key : SigningKey, names : Array(String)) : Array(UInt8) | X509Error\n # A certificate *key* signs for itself (RFC 5280 section 4.1), as its\n # DER: version 3, *serial* (sixteen random bytes when nil), the subject\n # and issuer both CN=, valid from *not_before* to\n # *not_after*, and the extensions - subjectAltName with *names* as\n # dNSNames, then *extensions* in order. No basicConstraints and no\n # keyUsage: what this writes is a certificate shown for a name, as RFC\n # 8737's tls-alpn-01 shows one, not a CA's.\n #\n # A first name longer than `MAX_COMMON_NAME` is refused, not cut or left\n # out of the subject: a common name holds 64 characters at most, and a\n # subject without one would be empty, which a self-signed certificate's\n # issuer - the same name - must not be (section 4.1.2.4). `request`,\n # whose subject is no issuer, leaves the CN out instead. *serial* is the\n # big-endian magnitude of a positive number: refused when it is zero or\n # when its INTEGER, a sign byte put before a top bit that is set, runs\n # past `MAX_SERIAL_OCTETS` (section 4.1.2.2). The sixteen bytes drawn\n # when it is nil write 17 octets at most and are drawn again in the\n # 2^-128 chance they are all zero.\n def self.self_signed(key : SigningKey, names : Array(String), not_before : Time, not_after : Time, serial : Array(UInt8) | ::Nil = nil, extensions : Array(X509Extension) = [] of X509Extension) : Array(UInt8) | X509Error\n # Why *key*, *signer*'s, did not make *signature* over *signed* under\n # *algorithm* (an OID) and its *parameters*, or nil; *what* names what\n # was signed, for the sentence. A certificate's signature is checked\n # here, and an OCSP response's (std/ocsp).\n def self.signature_error(key : RsaPublicKey | EcdsaPublicKey | Ed25519PublicKey, algorithm : String, parameters : DerValue | ::Nil, signed : Array(UInt8), signature : Array(UInt8), what : String, signer : String) : String | ::Nil\n # The chain from *leaf* to one of *roots*, through *intermediates*, for\n # *host* (nil: any) at *now* - leaf first, root last - or why there is\n # none. *purpose* is what the leaf is for: a server's certificate\n # (serverAuth, the default) or a client's (clientAuth), each certificate\n # that carries extKeyUsage allowing it. See the module's header for what\n # else is checked.\n def self.verify(leaf : Certificate, intermediates : Array(Certificate), roots : Array(Certificate), host : String | ::Nil = nil, now : Time = Time.utc, purpose : X509Purpose = X509Purpose::Server) : Array(Certificate) | X509Error\n # Why *certificate*'s RSA key is under `MIN_RSA_BITS`, or nil.\n def self.weak_key_error(certificate : Certificate) : String | ::Nil\nend\n\n# What reading a certificate, or checking a chain, answers when it fails.\npub struct X509Error\n def initialize(message : String)\n def to_s : String\nend\n\n# An extension a certificate this module writes carries beside its\n# subjectAltName: its OID, whether it is critical, and *value*, the DER\n# that extnValue's OCTET STRING holds.\npub struct X509Extension\n def critical : Bool\n def initialize(oid : String, critical : Bool, value : Array(UInt8))\n def oid : String\n def value : Array(UInt8)\nend\n\n# What a chain is checked for: a TLS server's certificate or a client's\n# (RFC 5280 section 4.2.1.12's id-kp-serverAuth and id-kp-clientAuth).\npub enum X509Purpose : Int32\n Server = 0\n Client = 1\n def holder : String\n def oid : String\n # The usage's name, as a sentence says it.\n def usage : String\nend\n\nimpl Error for X509Error\n def message : String\nend\n" }, { "name": "std/xml", @@ -680,7 +728,7 @@ }, { "path": "src/iyi/concurrency.iyi", - "sha256": "377eeca7c46b21722720bf7c04f19bfd579fd596b3e3284295c3f29289991546" + "sha256": "0a2057fcd85011a1bdbd098176792092b1e5a5a4e0e9ddee6d23670e4fbf5214" }, { "path": "src/iyi/enum.iyi", @@ -716,7 +764,7 @@ }, { "path": "src/iyi/prelude.iyi", - "sha256": "cd5f17aa7ef81c6700acf40039efd7c6197b33da8a67889bf63a50fc3f674cea" + "sha256": "92596c2c55ebd108cc41a422f58d9ebd17be67f28639c8ad67aeae7482a99d14" }, { "path": "src/iyi/primitives.iyi", @@ -732,7 +780,7 @@ }, { "path": "src/iyi/string.iyi", - "sha256": "7c32dd645bdadfd7a49342fcc783ec65ab0bbff9db9dae7d12b13d23f3c5a02a" + "sha256": "bedeecee93e9b30cfe7f4410ab86cbbc77f0e85058baf668b506ff773561ebd8" }, { "path": "src/iyi/testing.iyi", @@ -740,7 +788,7 @@ }, { "path": "src/iyi/thread.iyi", - "sha256": "0b9b2073a96b7d963182fe8b2c2d778dcb3d49b5fb119a695ff1962d35ac6e31" + "sha256": "b64bff5faeafcb16053081d50199130cf93fff184ace18c3505e80dee6a34b40" } ], "types": [ @@ -762,7 +810,7 @@ }, { "name": "Channel", - "surface": "# ── Channel — III.4.6 ──────────────────────────────────────────────────\n#\n# `Channel(T).new` is a rendezvous, as Crystal's is: a send completes when\n# a receive takes it, and either side parks until the other arrives. A\n# parked sender carries its value in its node's box, and a parked\n# receiver has a slot a sender fills, so the handoff needs no third\n# party; `new(capacity)` buffers that many sends first. Closing drains\n# what was delivered, then refuses: a parked sender whose box is still\n# full failed, and its value dies with the node.\n#\n# `T : Share` is not enforced yet for the reason the file header gives:\n# one thread cannot race, and a marker that gates nothing cannot be\n# tested for gating. `select` is answered by this protocol — a node per\n# arm, one nonce, losers stale by arithmetic until the woken select takes\n# them out — at the bottom of the class.\nclass Channel(T)\n\n # Everyone parked is woken; what each wake means is read on the woken\n # side — a receiver finds the buffer, then `ChannelClosed`; a sender\n # finds its box still full.\n def close : Nil\n\n def closed? : Bool\n\n def new(capacity : Int32)\n\n def new\n\n # `select`'s arms park through these with one shared nonce; a plain\n # call parks with a fresh nonce of its own. *slot* is where a rendezvous\n # sender puts its value (`IyiWaiter#slot`).\n def park_receive_node(fiber : IyiFiber, nonce : UInt64, slot : UInt64) : IyiWaiter\n\n def park_send_node(fiber : IyiFiber, nonce : UInt64, value : T) : IyiSendNode(T)\n\n # Assumes `send_ready?`. A rendezvous puts the value in the parked\n # receiver's own slot (`hand`). It went into the buffer, and the send\n # answered delivered on the word of the wake: a select woken that way\n # took another arm ready by then, a receiver cancelled before it ran\n # answered `Cancelled`, and either way the value stayed in a channel of\n # no capacity after its sender left. A buffered send completes when the\n # buffer takes it, so there the woken receiver finds it in the buffer.\n def put_now(value : T) : Nil | ChannelClosed\n\n # A closed channel drains what was delivered before it refuses. A\n # rendezvous sender that finds this receive parked writes its value into\n # `got` and marks the node handed, and that is the answer even when the\n # task was cancelled before it ran: the sender was told it was taken.\n # A woken park that was handed nothing takes its node out of the queue,\n # so a cancelled one leaves nothing behind.\n def receive : T | ChannelClosed | Cancelled\n\n def receive_ready? : Bool\n\n # Nothing happens on the arm `take_now` answers: `ChannelClosed` is\n # the refusal here, where a closed channel's buffer is spent.\n def receive_refused? : Bool\n\n def receive_select_action : IyiReceiveSelect(T)\n\n def send(value : T) : Nil | ChannelClosed | Cancelled\n\n def send_ready? : Bool\n\n def send_select_action(value : T) : IyiSendSelect(T)\n\n # Assumes `receive_ready?`: the buffer, then a parked sender's box,\n # then the refusal.\n def take_now : T | ChannelClosed\n\n # Out of the receive queue from wherever it stands, in constant time,\n # and no longer linked anywhere; a node no queue holds is left as it\n # is. The queue is linked both ways because a select's losing arms\n # leave from the middle: they stayed until something walked them off\n # the head, so a loop selecting over a busy channel and an idle one\n # left a node in the idle one's queue for every park - 30 MiB kept\n # after two million rounds, freed only when the idle channel was used.\n def unlink_receiver(node : IyiWaiter) : Nil\n\n # The send queue's `unlink_receiver`.\n def unlink_sender(node : IyiSendNode(T)) : Nil\n\n # No arm ready answers -1, which the expansion's case meets with the\n # program's own `else`.\n def self.non_blocking_select(actions : U, bound : Int32) forall U\n\n # ── select — III.4.6, the library half of the expansion ────────────\n #\n # A `select` compiles to `%i, %v, %h = ::Channel.select({arm, arm}, b)`\n # and a case over the index; `non_blocking_select` when an `else` arm\n # exists. One def serves every arity, because a tuple's size is a\n # compile-time fact a macro walks. `%h` says the arm's operation\n # happened, and an arm nobody binds runs its body only then: it ran\n # unless its answer was an `Error`, so a `Channel(Boom)`'s receive took\n # the `Boom` and skipped the body. *bound* is the first arm that binds,\n # -1 for none, and a cancelled task's `Cancelled` goes to it, as that\n # arm's own primitive would have answered it.\n def self.select(actions : U, bound : Int32) forall U\nend\n" + "surface": "# ── Channel — III.4.6 ──────────────────────────────────────────────────\n#\n# `Channel(T).new` is a rendezvous, as Crystal's is: a send completes when\n# a receive takes it, and either side parks until the other arrives. A\n# parked sender carries its value in its node's box, and a parked\n# receiver has a slot a sender fills, so the handoff needs no third\n# party; `new(capacity)` buffers that many sends first. Closing drains\n# what was delivered, then refuses: a parked sender whose box is still\n# full failed, and its value dies with the node.\n#\n# A channel crosses threads (SPEC.md III.4.13): it is `@[Share]`,\n# trusted whenever `T` is - III.4.6's \"`Channel(T)` carries over, with\n# `T : Share`\" - so a parallel task and a thread may capture one whose\n# values are themselves safe on two threads, and every operation below\n# is behind the scheduler's lock, which a park lets go of before it\n# switches. A wake of a fiber on another thread goes through its inbox\n# (`IyiScheduler.ready`). `select` is answered by this protocol — a node\n# per arm, one nonce, losers stale by arithmetic until the woken select\n# takes them out — at the bottom of the class.\nclass Channel(T)\n\n # Everyone parked is woken; what each wake means is read on the woken\n # side — a receiver finds the buffer, then `ChannelClosed`; a sender\n # finds its box still full.\n def close : Nil\n\n def closed? : Bool\n\n def new(capacity : Int32)\n\n def new\n\n # `select`'s arms park through these with one shared nonce; a plain\n # call parks with a fresh nonce of its own. *slot* is where a rendezvous\n # sender puts its value (`IyiWaiter#slot`). These and the two unlinks\n # below are public for the arms' sake and change the queues, so like\n # the `*_held` halves they are called with the scheduler's lock held.\n def park_receive_node(fiber : IyiFiber, nonce : UInt64, slot : UInt64) : IyiWaiter\n\n def park_send_node(fiber : IyiFiber, nonce : UInt64, value : T) : IyiSendNode(T)\n\n # :nodoc: - the scheduler's lock held, and `send_ready_held?` true. A\n # rendezvous puts the value in the parked receiver's own slot (`hand`).\n # It went into the buffer, and the send answered delivered on the word\n # of the wake: a select woken that way took another arm ready by then, a\n # receiver cancelled before it ran answered `Cancelled`, and either way\n # the value stayed in a channel of no capacity after its sender left. A\n # buffered send completes when the buffer takes it, so there the woken\n # receiver finds it in the buffer.\n def put_held(value : T) : Nil | ChannelClosed\n\n # The value sent without waiting: to a parked receiver, or into the\n # buffer; `ChannelClosed` once the channel is. A full channel has no\n # room, and asking is a bug the call panics over; `select` with an\n # `else` arm is the send that may not happen.\n def put_now(value : T) : Nil | ChannelClosed\n\n # A closed channel drains what was delivered before it refuses. A\n # rendezvous sender that finds this receive parked writes its value into\n # `got` and marks the node handed, and that is the answer even when the\n # task was cancelled before it ran: the sender was told it was taken.\n # A woken park that was handed nothing takes its node out of the queue,\n # so a cancelled one leaves nothing behind.\n def receive : T | ChannelClosed | Cancelled\n\n def receive_ready? : Bool\n\n # :nodoc: - the scheduler's lock held.\n def receive_ready_held? : Bool\n\n # Nothing happens on the arm `take_held` answers: `ChannelClosed` is\n # the refusal here, where a closed channel's buffer is spent.\n def receive_refused? : Bool\n\n def receive_select_action : IyiReceiveSelect(T)\n\n def send(value : T) : Nil | ChannelClosed | Cancelled\n\n def send_ready? : Bool\n\n # :nodoc: - the scheduler's lock held.\n def send_ready_held? : Bool\n\n def send_select_action(value : T) : IyiSendSelect(T)\n\n # :nodoc: - the scheduler's lock held, and `receive_ready_held?` true:\n # the buffer, then a parked sender's box, then the refusal.\n def take_held : T | ChannelClosed\n\n # The next value without waiting: the buffer, then a parked sender's\n # box, then `ChannelClosed`. On an empty open channel there is nothing\n # to take, and asking is a bug the call panics over; `select` with an\n # `else` arm is the receive that may find nothing.\n def take_now : T | ChannelClosed\n\n # Out of the receive queue from wherever it stands, in constant time,\n # and no longer linked anywhere; a node no queue holds is left as it\n # is. The queue is linked both ways because a select's losing arms\n # leave from the middle: they stayed until something walked them off\n # the head, so a loop selecting over a busy channel and an idle one\n # left a node in the idle one's queue for every park - 30 MiB kept\n # after two million rounds, freed only when the idle channel was used.\n def unlink_receiver(node : IyiWaiter) : Nil\n\n # The send queue's `unlink_receiver`.\n def unlink_sender(node : IyiSendNode(T)) : Nil\n\n # No arm ready answers -1, which the expansion's case meets with the\n # program's own `else`.\n def self.non_blocking_select(actions : U, bound : Int32) forall U\n\n # ── select — III.4.6, the library half of the expansion ────────────\n #\n # A `select` compiles to `%i, %v, %h = ::Channel.select({arm, arm}, b)`\n # and a case over the index; `non_blocking_select` when an `else` arm\n # exists. One def serves every arity, because a tuple's size is a\n # compile-time fact a macro walks. `%h` says the arm's operation\n # happened, and an arm nobody binds runs its body only then: it ran\n # unless its answer was an `Error`, so a `Channel(Boom)`'s receive took\n # the `Boom` and skipped the body. *bound* is the first arm that binds,\n # -1 for none, and a cancelled task's `Cancelled` goes to it, as that\n # arm's own primitive would have answered it.\n #\n # Every look and every act is under the scheduler's lock, one lock for\n # every channel an arm names, so no arm's channel changes between the\n # look that found it ready and the act; the park lets go of it.\n def self.select(actions : U, bound : Int32) forall U\nend\n" }, { "name": "ChannelClosed", @@ -814,7 +862,7 @@ }, { "name": "Pointer", - "surface": "# A raw address: `Pointer(T).malloc(n)` is `n` elements of untyped memory,\n# `[]` and `[]=` read and write them, nothing checks the bounds.\nstruct Pointer(T) < Value\n\n def +(offset : Int64) : self\n\n def -(other : self) : Int64\n\n def [](offset : Int32) : T\n\n def []=(offset : Int32, value : T) : T\n\n def address : UInt64\n\n # Bytes, not elements: every caller here is copying string contents.\n def copy_from(source : Pointer(T), count : Int32) : Nil\n\n def new\n\n def realloc(size : UInt64) : self\n\n def value : T\n\n def value=(value : T)\n\n def self.malloc(size : UInt64)\n\n def self.new(address : UInt64)\nend\n" + "surface": "# A raw address: `Pointer(T).malloc(n)` is `n` elements of untyped memory,\n# `[]` and `[]=` read and write them, nothing checks the bounds.\nstruct Pointer(T) < Value\n\n def +(offset : Int64) : self\n\n def -(other : self) : Int64\n\n def [](offset : Int32) : T\n\n def []=(offset : Int32, value : T) : T\n\n def address : UInt64\n\n # Bytes, not elements: every caller here is copying string contents. A\n # million a run (`copy_run`, prelude.iyi), and a check for preemption\n # between runs (SPEC.md III.4.13, part 9); one run or less, none.\n def copy_from(source : Pointer(T), count : Int32) : Nil\n\n def copy_run(source : Pointer(T), count : Int32) : Nil\n\n def new\n\n def realloc(size : UInt64) : self\n\n def value : T\n\n def value=(value : T)\n\n def self.malloc(size : UInt64)\n\n def self.new(address : UInt64)\nend\n" }, { "name": "Proc", diff --git a/records/wasm/arrays.wasm b/records/wasm/arrays.wasm index d35da8c1f20ff37424bed43f0233d59777a51c63..43494561405d4e6227393419c1a7677d06657476 100755 GIT binary patch delta 41739 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 delta 40706 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 Q!<^6OE1$nD>u?1A0mJV(7ytkO diff --git a/records/wasm/blocks.wasm b/records/wasm/blocks.wasm index a696a65ba77c75bb2004605625b3358a1b48621a..e119f0a780f4c1050df7079e1aa2871945d25973 100755 GIT binary patch delta 35801 zcmcKj33wF6_6H1C^~@xbjZBsa36Nxxu!I0%4-nR2-*;IAi~#~9gaoo6+hxL{0xBS_ zGzbz@R6s-&uTek&aY01H9hEDnsJNiu)qC~2y}xs+yJtZCf6wzh?;EY|sX~T{p9}xr=i&PXNau1{BlSTtO>?{TnXS zemMxg918y-2tU0#M9xn^_~kVr@Lv_Yh&tYPTL_|N7d3nYuem)0zA^~k9tvL-gdYio z-yVct*6Tah$?f{X&Y|-1{vVvV4sHD|y|KHMwrQ6>#ywbG*0;GE;(EY6LR+<4uXQ(| zTeFDi@`!$WMDuXy3K#6s4@IPh?>6h7M0AVzn(FYuH+r+kc3GEow3Ok=nLg>cO!z#_ z?bEVxk)A91lE@C)zPt4&A{$57+zn(&3C8)*>-r~=U2JLp-rqRtS(z?-9~ZraXCKLU zI5sMZIx?O8p+iRKAJvxxUj+jdE-M{@WvC@C!8u(FtUQF}2%YTAC z5|b6Te*M)wJg=XNX%)BcPteqQt>iI%NWIi)>+igpL+K=yZvK6LiPbzWkme@MU+Nt# zqoO=7GSx%+tM$61ZMp*-8BR0WT|Sr3S<+UBj4+?ezx571Gq$AZBM!{nEbw5W`DW9M zXv_`F47jEdZd#s}tRIM-km|XWs4^hL=gQL(eZn7I0#Qz1Sf1w5Q+sqs@If%B(@dQiuQ|)7+`{lL)QTr z^(YVc>M3a+gD7c~z9Ha zAj;S%vvrH!CaF#Q{RH!Ao(Jikr#U?j>5GyZ=(i^|)HdzbcO_-ftT>gFk+BIeE=phr z7s6P1#pm$XY$PZ}*e=~uzrMD0x8A&dPt$3bY_MFkfBQy#L499u)r^BGagv zxd!u`ziTp99}?Z7#HaadYL1AZrqf|z*zqft;IO?A8wD$oVI6QOyVb$c2bx^eqWJTR z!LY67bIztXMM!A_D>K4<4i#o+8>V++<}mJZFqq**=5_nr#2W!#_w0;FUxY7`dC@P2 zoj$65LLf3D8Ue(-8PSA^CJ!hHdmb)<<|K=1xC?6#q*@F^GU~w@VqiwBFUD7|B*Wv2 zg?nP4VH{+65YAdJUz{1P$N)983NgYNEuy00^zcSc%E$FXjY{Mb`!DPrWp)mwZZpG_4J;AEjl;x((?=< zhS3LzohF9=$S%E=uWP~)iUl*-`h1-n!gEkx>>DrZ^tXJ|($7;~FtHS|?Dvcuzvj#7 zo!~j7Uzc&cd{*C=k*n?7rJv78L@z&P^ux7l<~&><&Fq5f7n%O>XQ*G#(|YTyp%A?! z>mk6i8WYXkjXUA`T4O)1f6_3oN&eLuj#C=0Xfi){r?hO-l#Sdy;t zOjN6D#@&*~y?;Whr(84|Py0OF_77}-Leoy~)D!cX#-Ab!XK08}t&;;QrRQ~hXkLaq zt(WBul!x`Yyu0M@`p{0N$O?@*H%i_aG6G*X#B)?Y_Q=j1sf$}Xr*}UevWy|fX#!}y z1;o?L*iHg6BF!~}Gc9&V5QJ$J<$qe&Kkd9S|8i(A4wZ?+)WH3rxL{J2y&bDE!u>z# z_jPHg)$G=v>vB{+s@LS-A`j`|UAN1Z^qpNZ<$3+pu6JdqG=#JxJTLR`ok-cCK)t40 zZQSW=7TDu@o9^jxm#={y)o<*cBVW;P>z=2bUx)mi>~#1yZP3qk-zs0-zodsIqa>zDyU0I40|m*@9?JU~j=VR}e|69@t!Bgi;e+Q&B=N&TI?2cM{|?z8AKSlXsHUND$M6w|{(lW`B2Vvk zjCfKuc#SLw_aQGygk*0q-tv?F#>ghx_6_<^BaguehejnQg=P)V#zrLw|M8vrSEJe_ zzCmIdc;2L&=PkPWFY39YXL{bIdT-%*hhb-S=?{)>tKoKLbXWJ|if)(gAD2l^?>VMz z_T`^^2nj_o70<18cf zG{qhEgdC3k^C2za`CP9VHz?%`65q+;iFQPJto(~@h^J2fWLy{Is7B)}aa}+DBV5ZT zRN=aF(m=iC#JKtwSuvi-KCFp-eWJM|+w-M9cH$^Z@`omNj;d3#ll`Z6>0eIln#S5> zv@oYiOJ7SLmcr(wTT4F_?tOhr(tGap4Z=SpPXBrR&g=8w^5fT^<9^pdZl}qeEV*uy zyKr*8DYuU)x390SuTP23PjdT`+&3n-Ai2L!4$4iR(h+j6o8s?h>gb`>#!KEq$7ZJI zSsY8yP(Pbc-ao%jYQ{$O)8)!W`hTayM4cl5a*yu=Krg6s{X@?1t-GHA7xlF>y2*?Bt20K)5A@WT=@D#V zB;2!lznRM+;kCs+pL`UpEz=$?^t^>bScgvWp5}hrQ6Bk zcDQXQX`~_JrIieTb!U`x$11U-B!}>)OZH(*%VzJyHK(*;{l83l$aa%UQx%SmJQ)qK zy=a)HmHHa^A!B{%XcBdyw5^Y=n2~OJ+=svP5??BLT>5;JbUV%&+c2~bNPD!m7^SrL ze5CJ~(>d)q8X;|eJ?6eQHY!DU)Eq?S|KFVP@?(8;8Lsn1T+*Vja9(>_ zKlaWe!?mqgjO(Kn1#n1ArH>qvTlFv+?^dltWB-i#+cex<3uDPK-bJ0@fMJV#N&7<9 z1S@$wy-Q!Qs2z1twTGGwj?egaK zJH6LGs^Ph({?PE~*a0UsXV#8@3z0K~U}4sx%aRddir|5U^1 z^kwsaxO3S!5M5lBpZWtGaIbl`K&LGnm=Fm)muJiG^;yfCI$zdgjNW!&Q~l8LNNwL; z`q1pgTFqVhx62EygA#3FBj}(Mk>QT=xv`hkXa`G2E;k*VuoC0Q_5b?8NsF>K>%K_+ z_Z3ajULeDJ*!c>_;Pdllq{y?5~+^mLlFq^dbMlloh z*^;+yTn2&hIpkPXaf)uxj$T4xoV+4@Gc@USU_$VHtH?GG0AqQaUY zP2S7;$2X_k$R_YFu!bEwFVk6)X&S=<4um#1KV>@ovH}M#vT3%qo@|<@y+ER21!tc2 zq*=uYpS|dFK!ASzE$Q0M-TLBNy0S zF;PUchw7P;{bHmqa+Y7K@}JqGm#+$FPw&<*ueup%{ifC9Gyq>;{Q}+YUQOSqyMPRy0A$MT z=~FmL`_bsLwN+%&3-`?K0gU4?va-JeC(}^CHVrL%JTi%h8 zWfA%D|O;Wl7xCyZOKS)1i!*(90bK8&9QWr%1u zjNuELO)SUOcE~Z6LmaA^j7LMi|MABk;X~lk2oRA4VN4>=Sl6Z>D?utCKDmzJAb_*g zBpk+32NX|9xJvy;c$J47YUCT&wGHreXTxFHaE^!}Cy~1ujyh!udZu7abfBz+5t0@l znLQrN8KC>&+AQ!FNniqb5tjV_A`2wzPpxm3{`V6a(RyUJ{_Fa#6trFL%o=+QDU`D2 zK1O5CeVzS&eG*ygt3U`)8$h49*UX9w)SKD+alz%}CkDz!vl_3(@4 z+GR3bCruy>&|-sk((v2{ZFfnYLjSE_EYpLyF(#{nLL)p+)4$plh4?8(? zxcm}Bam=sE6nIVq!7iUbC?e?;>J@Fz>>(dzVA>Fe$~Aa$>2p?PhS6gsm6%C6Ul_QM zZJc*KDF37HzALXA8<6q}$D|#9zHpj70EcAX&|C}C!!?cW&d_$?Jal&&C9Q(Hn~>~V z?tUTu&!f;MZ)`~VF5Fl_w3jwECfWq!J!*YpWKk<_)6r{F>-kNbS{<7^##pHpQGwLh zZ}WA{*yAdLvp%qbS|fN+2!u>52?(8|o0FR{w@quxB6D#DHEH+l-f+*zR!aFycmD=7 zY4OxB6Z=BHUar{&7!F%F)l=b4#xBLned@kR!s}G;7?n&fAUwrzB1cw_?i< z%iZE?cjMs;_9^6UO}QIQY`dQ<-?$bBV|ehs)L0HRjL2z@ zXhrQhwUJVW#z#=*!bANkry!Rg{8gP|npbv9F*tBQOc+_qTs~Emy%kH-*`Wr&bfBUS zxvp^~ZRxlRXu4&4Pwn(>{p|Keu{@1JR{8Mzx|7%X-}m6(jV0y&C7nWo#?pw@5O}IT zggoqDFwbwsx)yYye)4{f^)K(A7jHVtX<^}~(g)aGcRX+~LG9WCC7IG6@JXDhj_=kd z?HDM3)OYM?CI8Uh+|hR6Z?t)(&ah$eOOVno0*z?T4}{6YDv76wey8VWZUXJ_!S9}5 znGc_Ts86LH)`vWp((iu+#6I*T;rVkFO#dZ(2-X7O=&VpLgHhl0;Hu%ga{B{#9FCJ( zRcw@}hSoq4g%3XK3D0tBsB2Wz=RQsNYur)CeFA?HCBiK2+I1+J-l@ZkX?ozHRA<{( zZQAMEA3Er@pi_L=?b@`?GNZPzBZP3y{v zX+W8O)JfEW-#ii3*=jOI9EuPvM$o)Nb_LA-{;Gx1i8Q1Wj2cm3URy}8G zQAI8>J+|u)>Fx*yD*q=_aXB%7%BP=uB;fu(m9si3tf(klNNoDrJ-zfB9&vLI(E!*3 zH)=1+q$eI784-6pJIW&j{>L8;|3UQv8BjS7iU?Y~c57HiY=%bD&a`OQ+ zzjNqqpHa;Wrw~1zR$rqIF>Cpuu_WQeL!IgN$06>k#j|`HuWl>U?J;%x@L3*Q&*yk> zw?3ydelDBX|MeWp{6ztq9cGg9!%VW}Fq6EfT36I9^+*nDIv`AlabcvI-5ktKl6vzI z7Vx;b{Y%{ZHzmH*V?3y?$2c_1+rneq;n8C(^U|?7L^=5dHsZz?a#-|u zOy$o}{zCLeFEC%^i+sy_QR#al^q3ZDIjH8v<|OnHb$eHlYA><7CcMOqE7fhEx}8-w z_sfjypl&z5%-Sz~IXj((dpbsld+G_{5OLz#@xG`yuBcn;aTYV^IP=d`t;1K{zE-%1 zSJ)P#USY~|b-P2|9(hGYrXDNAzhia(v+Rm5USZh@C)i%YPH=0Xx;?0FZ>ZaE>el>K zCb>@Cmc7b7)vDXG>h|HQs;5WdVetg3r}`(EvCm2F=^v`KOWod4H~AWqw0ccBVMC%2 zUnc4wA5@`8&6C{BCj0F~a~FzJT+-w<1{C66#hY<3QCqN8f8(`Abo=hLv2^QqYAW4! zoywuxJE!{7E%o)zbQ}LV16QcqW9s&yx`m%+T>I0^Zk%Sma|#&s2ID%Z+cb4sr)~$; z?F)5Fc#|o6zR6M^P_5VBWMTE+Vq70}D_6HIZ{S@YcRDU36~9A za~Gu>8brq1Jlvk@Hsx&=y83M%;4#(u4!7nH=nda#6mlE?PBvQmm%X#Y9oc-7nt^_y z&wDO0!fKw-d%fe;ns3sleFOoU^mXcX@T30Ja-3se>vNF0Ngt+K3)SsGb$dhMzB@OU zND9w0!yV_D{T2AZLovD4JCXzl4M@MD1y;a5Bo#C0U5o zXv+rCmmIX{IVK=JGg;sjrts+;5?o@jimwr^)i_16^5k{opeP9ij z)4dION`^(G-z{bLK;}M{pvJ4BXQ`991(F^_E1&ysg?RwO@BVL@BgjSn{Y(S+2 zcpVjxMtWP?{{bKs=XEZ|&%Xv=0oAD}e1ULKx{eAF&<*`ku>@>Fx1sn+z)`XA#1DD4 z0z-hK!g!;Rl#Pmtnz1TGnGr(y4Ai9JEct8vzq~?Fan1|ktHIAkm{lJ$3&puiAqN@v zN}23_P_=d#&q~=KK;1eQL<@0;Vsq5qnIZ%gM;faX2F_RLsFSTLAwEwJ!;0 zZFBgaipl#H43ite`vu%f#j#7WY%MGx#Ox4)Son#GbH5^(10SY?0m2=%-GQKD^<0Lq z3}yZw2&p)gTh}6je^ZLNYUjb+RGeL#aL>0V2<+>H2v|We11&1fUdlZ8m;@F+5s^p5 zIa%R%0)HI@u%(+rO)AbaIV^o2Tw)`0paT`>e-!dVsD0Gp3|xTyskobI%G`);Sj~VMoP6w(FplMR1DR z8_^*Z3mG#~2&4|%QfI(O#lmM?gAa^A#-m~p``@uSSl92$qXUh zSIk=NAuv+0kYXn6r2HUj2f|iVEM)q9vqP*o1{f+9wneG2%`NK(%#}Q8vf5U#&ywLE zDi&?OQXwWM z%=5KX{sJNJztZv>%y23e);Sgqz-g70>VWx0#ghAw@kazU2BwOqjPyw9jWAmS+8W&> zgBI?wPzVf|6!5Z^+<1h!83k{)cPu$-q$oUZtUZ zEreJ@bAcT34J1*qxVyE+(+*`FS-T5nqhcXvAV6m+y+!S=XdqE6dsQnI^ ziHiGEwczf-h@YgVS?JVJ`yk9l#komY{X_T;v)2xMd%4b1-1i!DqGWxQQ41Ftw?)Ym zHI(^_kcO2)TJ1-eJ5(Iksm%22Vj+;Tm6ao5GAfRq3fXrFHe71DIBIQV1BILj&igIS z2G}c5ar9%P^IZhM6k77xdp|>UDq({tewA_8^V{)e4iUVW2`le_S&J*8kd4K4#kR!MHp2m{vqI~Sa{-( zR`I6Qo<|5#2}L4iloB*&sW|GClLEwgMq#yDd&RqrS3D;vwMZFT)Q&-NrxL;2C6_uM z32X&$3`!*;^Vl{X3-n2>XLM}S#=)O?Ad%y7E~CC2jS)YY4wHLeAe-0+g|PQ;h}*KY>CGn5}Q0>E%*L@D^gFB(T;W&I)B5oI2^-tEi;F)MJVTR2a`C*0WJb~^LW z2vC>0+wDAup>pFcH@@gbokyR-rMHN=*~s+Bte$Hj&?gHcf&!;Sgb17-p#)wcfkhEY zAU9@2L_5Qhjg=l*P%i@0kH@?hyp4@39+}@qVA4fif`yZ1&q(KfgcNJo3zkgB+Qtn( zEJ=>wMsHY>5)C){z>;4XWpQ#~A1CH(=+t`;<8$;mf$_&7_(g4FNOSZduJ}#JnlUuJ z6X+om`H`o`JI2p(vSEG?z&-$R(l?;J0dAMS#SvT5Jz(>|4)WJH5?lW@_(>MTr)+}q zwEiDAhR4fhu@k^gQ%;s7I=mBB7%Sstc0#w6YD+3tCpsFG!1qU28i#?9=Z%Z;vTtf};rWTm~u{wvhGX zDJ+xnVZB5IiA;*02E~(Rpv`?Gsy;S2v&>FRz*iv1M6^n8JdZpH>-`mDZvvLS2IvGW zkyH;fb<}@K{BU$4yq$o_CCqccux6=BGp`QJ?ZBixK=e&nrgs~Fg+#s;;)vCTJd~F(Xm72;|%DIyvN-`KBhV{|?0R3&<7=0?Ub%(||k~OKT(O=76p_K`EkMAZe-l$U2?T zd=t&o)6|-d);Y9N4x#cjfiDwyJz75zk2idcX+j@%2w|8--qwJy31}-cd0FV z%1TVY@Ju2rzsuO2BpYdNmvKBvre7bpn^GGx^ip6`YA|`%5E+5fAtGfeAO=bE3K)MK zfwlp(pQulua+s)_14Yl?Qk-zdNv58;(eT%o-oPxVwF0Q5yPy_Nf*xuT96_6BVo#1h z?=ldQNs~STf}imD&3Jzlm^5J0PQj3J0JEdh-vOphlOmBUm|-k4q;W5!nJg`yyBMP+ zC4U3ee8v~`Wt-R=ZZp%$=~##NhTDv$$+B_cWdJD~qzpt#=}qfZYG>nyWSJG{feF_F zZ5iQdo|1~#nn=#}76W_-F%$t*4F>O0Ko$_>PC%CPlIQITl5qrk7O*>sY6c)AF6B!= zwlS6PegI%+0*1rIdjU*ohspt>Z{}EwhgXD~g6qr7kUA34m9iS`chOF!EI7+(mV$U+ zWsFRbL$v+tjeAqD*ljoJQe@-UBSgL)Y7a&#Nnu zeLJ)cqKH&C=66aNs_&ts(BrF5QM}2z>GrqLx{M;ci*;ji1KA+{XXuMa7jm{IoK^D~ zs~X70+Eco*w}JEp%3-E>52EstRf)&w88X+ZthFkiSe0+6(jHv%(KCLS7K09o5@i~# zgt9b|7Q?jnF!^P>7Y3+%wrK*oHW;K+l z*ZUAEa%k*CP^WRSA0A7|J~J%^2A3maJ0h)O<`n_&!8DK^A|uFmJ|7$^yT{5b7SNpq zWN{F7kEKkT)!sPQP$oBad950A(3 z`jDCCCJ9e5A=Kgt@LU{qk(suOQvK1mA?$Qi2VOk+-}Y+P?EsaC>f$V~gEQJX58X>N~kJXJQ;V6n@oSXbFpw<=SS zl5DIyt}@o9P-ATgF_x;E#!?MPU}J5G3o({z*v8rt7c^EtngZEarVOHFlibHWE0dV@ zXJ}0K#ZicXYL9A>|1#4;P|7R!nH{km?z8NmSU5IBW+3gKs?FhjU#PglszKv`a1Mz3 zEN23gaU~g=oQS0@nHiWTR1kAuo`_|MS19CPjpYfKM3d*Fg0De(k*~#;w*q(Cd_tUJ zL}prBnim(ifo{*zBnKkK8y|lMz<{1jE z5qz_%-$IkEmh+Sv_I9qrJT!#IxdH2Nx_nM~{71q(t627usKX`;B0Yelp)e}%s5-~< zQO>52#i4#QHYC&)%1l79YEE&eAC0Bx#+0WBR*jHmFw!k)hXaZ*G}ILiKE_|;`N*Ko zNQ(3(8CX<=yCtq4Vo$0~4xa#Tx|~hvL)_ljdRb4-e<3Fn$2y2frTAj@S|S~gzoeKd zW>Y36Wn;6*L1qH>f`F$`2^%iyE3`SZX0ut6dV^sL*}qh^*PzYDEmQ5M(9WiSE?0(U zC(Plxw-j2o!~oJbUKTJ=cpnJ>oJZif#JAK0{}<55(NS6#g055&!m!bv1k$9p(G7d( zX7*4LZC2TPH!C$-qRmN6wS{*oIJ=NI_Tc+E!R#Hf1-m2L z6l-DwG>{-Pgf?jxlk-(DQ^? z!;VZkg*NB=HL*j6QTM-tlDEljL54oaQDX@{KSdl-$ zxUC63)2#+rWYZTY_F+?KA;(cdDUMH^fIDZ!;&_@NshvTSG#@~Y^m)7uZ%&^E%2(r? z^MU`h_|&;XbP_}y(o5CxpbaM4tu!41%#^y5h$bf^q#P8s%a|(l2tjv%v@4OWR-|VL z_z{3?@U`lY9+_f}aV--i<)O{aRc#!wz@=h%Z9G{a)r~}uG!;D2|V{@st6* zr9kvTH-V(*fZ_NxHTnu|j$hRV4gS0rKtCK6l@Ye7Gn2P}EglvUloP^k1x@u~peh;c zQ&#OvBTvGp*nm$c1NKJy*@m#cd_q~U3;?#EYKzp7B!{!W6Uu_KNX|VVV+$%^(o1Nw z0ae>8x0?wdr;+I)g%I8xVAz1;fMEkZ5g%X+js}J;xD6P#;1g_G4E%ne@V`hp0Tf&C z31va;J~ILQ2M9KxsZeIBX+X1IFyqMqsXiPS9^rFp#HFcN(s-hnfHfds8$HK165emo zNoRy&8hs~2KF?-gU_$~j=`m%_m%z&E9aHKNCntcNKyU&$#t(wL{{teJ00Ih%fiAk= z%m5d_z!~5edoRg@vodFZW2*ZHK-iruG8hO>0LPTEydMLDbdMPd43A5(kOlCUaS?M! zzRNRNX3=vE`EG#w$f6Hqf#Egx-!#-Ss?Kx&J?0Re<_}!`9g43Y&M}1YLeBl@un>XZ z7(ycGiK0|b6uI4^6HvrG6IwWiMmIVF^1gtzbQ+Cvq|ZASIFUh9Ty97tfif$`V~ond z<9F6TXJBR;ueaOz{FjzbS?9h)+Tf+}+3bNt+HPg0{g?FL!-&kZM9gCOPjzCXJ|3k* z)>rI)b5r+KJnzytp(%tqvVFxCXpq%`O!IX-9W#~aZtkyKQgI#X8SLr zNs$!NP)lG9b1BKm1UB$5#;_L1ygX-P7-X`>D%wkQBK2?`QhuRrXfl&w0GVkCBq_sW zo4%>9cF^oJ565dm8iZ&J3Dn+;>`g5NbHU?L}d4UtW_@zz)e*f1lNVSYeAY?qPBF1|LVT~u47?zHVPQrYDQ z$r%bVUK$lJX$RVD7u9B+*e(lzFy*Vg#UIAgZDq7F(#UI!G_oxj>7%xmkw#u)q@BRC zk<4D-Mw^YK+H9oMGo+trXAWbM8de(GtcKa{hBljFl6r8Fdf6W4BpPP2NcCU~sn$J3 zle7Rl2aR>@Wb!y(jpuqSN<3ome!RIEOaHZO48iE?OH@Fx8V z#9`yNb}}X1RFkbmBg*I!i>dQjB0v4hN-{dOmst&Xt@zwrD_*D7q{SIy`#Jfq)67#=s?YAn5A)o36?lh&fm3+Eti^Y~jJXC&i2(Ei0})lsJ8P$rV)LHV6Y%nQKZ5(7kq;=hdcIb&`|*+S+TTRX~*T11NR zR!7+i`Ap`?)(s;`%0w>>UuLnzCVFYf%}g6*49SzJT6CgOk|%qms_*zV#&)zzU-fD4 z-4CcQFlcu_V7#0sn`_%1Fuu=|ea0x#bXe*7eu`9c&;)lh$Hj?(iiZ$Ma*OL6G<8dn zjrHFt);MuBKa<{vZqAszAcs>{b&~BP`o-ha?#7pujTbt}+-`TFsnu_eH9f2m4#E@- zS_-nQ2;YaxiXFJPS3#=gAz*}k5%`v~k=q%mb~RG6memguT)atHYE0>jG2gwzSkhVM z$30#T=r+A<^u5N*o#jNu)jgD}Z5M#E5n|fln{4XU#uk7x7(6}*{+@(RxZWhwYF8WH zd^y~|-3##aG!rap=@VzI=n-2QEn?b??KT^IY^2S!+K$>q#*TcM74|rZDKH-IA=8Yn z^JR1#eSWW1hR8MCUGe_HuZ`@kGD~(chIW-XaYaP5ER^V0!d4rPbd|oi`sh@;~w2_)pJ z5TV95Jz$XSMs!cyRvRsQLgXxCWKY>w>Gexc<;R%FB+*Hs+FMS_T90X~^$pd4RO%NZdyJv?mQBJR zAi|!~SU*(y;@99~ENxUMmvN;x^sb~{#>(%_UP$l8eW3SdV{jkYCVm3c(Qdqo?RKEU zXA*ppG$KdJhFSF4r&bzDL>kQr(P*{tA8>VPON29}oeDT9h{&zT6^KmxfyX=KkcFZ0 zjIn(!8!x%a#<%vB>EVx1u8H}~c(kwdXR@VNhxE!DoJkr=QHt+6;R; z>U{}l1fhgOeKn;XJr<1pA1;oIMqxkM2XpDceljDI#cXCVrh_Sa-6M10@#y6&_hLU; z4e}fM%Z$EEzAJ>B=fiGE6GFN3XL9%>Ho#Te4?AdWk9>m!KF0!&^_OMw!^m?_hghSX z(Px0n=#x$nbTFic7G(89_Q;*JNks9i8u|Yq@G0u?FxxLWIUn02jA^qeTZ3fDW4m^_ALi%Y&dY+OEF@7}?PAjiV$}0qLA+OvFPL-+Olu00r9*h1C z7ZaDomKzmUdR|d)yV`Og`X&mVxBaF>M@itOArCZOv+%)iyLKUI`p0fvN&hzuO zYFaJNs*mki<*4OZ^@%;JFp0=(pGsOjqSup7q|9f^CVTUZ`v=L4@KoyfeN(|U!=Pa8 zQ0X$hA0$&%cwN3$hbzj+CwY)<2g~b=noz3w?ONr34`F2g{Sl%(`wt;uMuw z?yjc)92(`A=%#4zGA<96ox(d)S3g~=?u|I#*rt4uCSE-)m@>KZSQbq#lWM{9*qv*t z^ElP{RIBp@)p-qf{?rfz&-=!=LuAMH$4G~?kPdhnrrYvNU-^{0L*PGPj2ntz_>dS= zG{fIpCa9d8>_<*MK%v_*L|zNy`Ju8MlJSp2k)2*M8V-{_?TH;m_hGVOd@&8LoAwos zbK!0XJh;Os874Ee=wxH~?9yTtIz#4NS?NQc-$}u{P#D1~bC>tr;%5%ncYIQT-8!2zhu7~l4K||;L z4w1MWQ!}0#4?DC(nwB&toqHVa#3@F>C^=!oWQcx-U`bAQVw}a=(CJB}@0z?w7@spa zk#@JVxp6je`VuK~QQC6mII|NeYjLBsvrXdfM%ZXMvmTk3Z0p>qiNs^Z;?c61yv2B6 zv>Yv8HU2YNwq%O;FlZ-!H3y0|W8_WQGtr)p+2~yB6p0x~xD=gE9eR18*K)#aaz-ZZ zF+ZijK;I+@W^ZJR%Y1^>|rdjxYv{mpLsKQ5H-NLr{y_C!n6@`Y%bk&|Qc(D9O6Mp=KL2FBx0M%T)Qg zabUbG?5U0n&M>fuCs3T?b(qD{el@gTKSpU!4+2htLTihQvYlguas33@%ttG)7D@2% zi#?GDXpE8fpy_6PmKyg>kSR^?BvaPIwg-qvTHqZQ5hG#JxsL#3O#JLAzwZ15c~gwD zsI01}Zo~}PQM#s;&s|thw{oT|m67GaAUq)-U?5=ySS|&&=H($?} zUBXvkE8-Mi82;y_mtGQ(Yxr-H^{;+Yz@nSvtxc{+Z*fk|B_p*@wFIZb@vy@^;XS9* zu_t_n3BNOe zM4f~=9;w#a;r32sF4x;iRDGr^pe}7bh>$$lEuKlnGYK(f+cm#k>u%R(%K*s&;RW+v zW!|;X77>228=}=b(rWK3_(H7Xji&;v*JG~;C`K)4hDL~L^t(sLffI0qjC3#8E;y7V zcJ&=Ni#gsbgzL1>2-rg4vq2~ZNWX7%y!Q^flN>5t(f7F=Vavn1YmHbSXy|8-jvt8z zR%jfLISOaGf%wqKSt6Szgd+hvwmGHdv=A}Iv?cP^#EY1ej!&QjhZ}MHP~Z4{iOdPm z=Z=ixAzqnb1JBX7{q*R4xe7I#|pW?zp9R9}9!C zpT*b9u8p;8K}CXeU2JTZfL(2A*KCEf9yY9_T~iZ-Y!@6^5Swq)1-lEKR!SYMwdKPA z{g%{nVl&H!e;%Z5VQq}vLr=T5)UGwPYPKhA-Bes@4LCHBvk-&__@nFNQflFrLiF=g z$1f_vbD_`5fL0F%#<*JrPiS1`_xw>m^ zcDl<&aViD^zDzSaqDZJWu+DLdJSGEuC<#7FN_g15DzH1!ddpDm!wHU4B>N-?Nu>#4 zj{R7yual0~uvk<5fL+u2z;FO#xgnaYAkFdMayWVzq`mw)UMYqS-4k37YWT11O+YPnGF7 zZ3kh&BtP(KI$CeFAU2rFf(ay;qO7!qbR0~gcJd8Lu|byBA@lUwtVX{jwnouWjiQCE zot>hz-XS7XX8|aUNoJ0>xy{p#YuMJpYUE7%IkMG3SJlB1o4Act`@0-Sma&O~HgYd_ z1k9d;tDNc?9M%p6z0>cV&ECzV)%V&iX`Lbu%%J;KF;H)$V%Fk$Fe+VUn!tbwMJM#L zXRDLroEedQP4z-o`F;%5(k;`_FQP5JJsQ64Xm6#XCYwF0Jumv8A3$5Qm=cdv2i(>c z4H9?{ho-9~nP5;~2ITn3zv3Dac zT)j!A0W7cygY(DUX0W(m@X`;wEvu_FZ;-_u2;HEOQoQxMDt=m)D(>JaOg{p*QA_);%N# zSX(~CpS3d$*_hIiLk-V1lx+>SH5OZHueLk!I{{Ek0hBW5cj+tbN*u&ubArfmybNzWc+ zwXL%)2cM-_p%S#Ton-C!w~jnkw|1o9GbD?DfL*gkZ}%MB_6K_zY}4CE9qbh?X$%W+ zBA96b|K!^sV{r2wTv_d!#fQ92QB6T@ACc|joi^>y-B|07-A~A5vtuY|i=b8iudc1& zuHIvf)wYDY+g0c8_&~J^4N}=X!z5QZh>x@sCiKPzD||+&D6waQZGSsTv~kub?Vz@a zg6q3AZV7bpcYIFX#S3}LN+3S389k%9}CBcm)$(n3-z79syp9cO{`VF)n z2mD#VUtSIZLqAZxS zEPn?lcra6qv|>PGY{&)@qYL2hWibbLhwQ4W3GINhvtlq9@x0KI!Ml;GIW=>)>a~_b zdX0)Tl0Z8(6n?bB8%!&&SYf92K`hcrT7Q158B}1bt;ztqrt+G3UWF;?RV}6hcwE6w zR%uQx*>tX^7q&P)ap7PbskKOOMTdRw*t!VM7VxOxGnda5Rqcv#PYiQxUW6@~D?H5c zCH@UShq35@D$P7O8?86V z23p@Gbwf7EDydCeY#iMzd&qY;-h+>#uhf7sktKewO{Fjh12etyg`o5t$>@2HY!&AW zbB%V~9JmnXDB9y_=ySP@rT55m|9m3EqYW)Wop<<2+8TP`z|TTr2};`BL!eVvYYs48 z`SQ^{vVnZd`1u~0Av+okx8R#QhS772^vTbS8@I?-0eVIjdOW0e3Q>dv^Mduc2CZS{ z3EQ52cphfO|0q6T&)}G{&obC&s_bsZ^c0(cr#%jrPki;o8Or z>gFAgKTB=l4x{uCUMFzdj=D96WNU|Z?~b~Ihvg$u+rOi3)=?N=JG{eK`MkWOy|BZm zJSH#3Cp?I+I;(CFdoC^M!MZsw$j4kAKTnP^UmsdgST?h$l0MKfTzK^ZTvClf@6ud| zLjOJo6?!%11IDNmcvrbhmRjoe;1!`-5*AwPb_{zp-&}T_~e1!v$z%0B@FebB<$ts z)rlWqM$uamzel0hAwG>vLZ3OzMkn+E!uxpsOwXW4G{pzpz#T=QXTS$K;zv`Rg&2=Q zFCyHG@;VaL2PnNd;UikW=_P{A@xY26$Ii##=)vZGJVB(Vh|Tk{meFIw>-*zJd?>R} z=#_q*@f?mG4<1G-0qpkyLL5Q;B+4JCM-RluvnZp62|;h+8-qe`+Z%{N&+raICOv&S zfkp zEv-ihK@U$(qR^Y;yeRa5X5ehxb_#K7c7hOhTare>V!fk?b{;k0!zY{{{oSVk`ok(0ZNU8n1Ch=??~4 zbWWkr%HoHKDWl)G2(f?|`5cAv?mH-jfK{Q;>$}D;7UEZw-b*k_l<$y8>HS;3pwO$f z+QUUx0INcVT()csz5u%%lLUz&Vl()Z@ub(FV@lY zA-BL-D2Gx0K(YSl0PiHl(+s~S&hlO8WZbVRQ{geYW!mmV*P!@0u)}L1MAOoH{u_q4az(e z>#y5w2vu10pD59m9P}?*+#W=n3NiU~e8J#ml=s&m4eFK{yodws-%!HW3z3MDi830+ z`rD8Cb)a9263TZ0@PDKHfD(5nCMZf^A}-e7%c%bq<4=Is-vGa(OhmE%W}^OA^jH1{ zz8p&5iLwFZEfoCG`0;)9t+;H%h)~+qVsfD@La9NSdmjQ6s!)i9C<^wv1`7+sCkUix8$sPXYauf zQGP|~zNN0gTk?9@gkBU@4~5?S)eJMAem6WHh2OCbXVCBX?lK;K2VXs>AJfm?YV3Yf zHt^8<#8;!x>%_O97?iQUtUse z^^${`Z+K!#Z+92=FF{H*i$S+bxzTo@`{DxUR2A9 zZYn6BT2eHvN*qA5s&ICZcn_80vf`?O;u!^HMMZ(>MbpI(ge)(pE~_k@Q6v(amKHZv z6jv3AA$GfHL2;ERL6Z@A9r(8pENotNQFW1c7^o)V7_JqC#g#?kyvB%m!e`^t>qO5TtvBX<|i0DH9;0+rpx`+!a>Ev&3G zW9mQDo>g5on+BT@1(s=5P}0(<4Ium_xEU4YbHp&KRZ(3gO3)~#IXSnyw6LnUyi7a{ zNM+S@7(~cua|Vbst5#4NC@w1!UC~yvsDS_ZA2A*P%tBF#J57}0!qVbJMPgl$jz(Qc zu)Tmynj*f&Z7!@Xdc|Nf*h5Ult#Iz#(uHCH)hP1BCaYFZSXDl!c$#=R2LG-BVu`Wu z06Vt=+KcZ|qtV3HGs@1&oL22|44{{U5{~~?G;va1646mpA$N9V?oEZ2bL6?ql~Uvw zSI)|2b>Ezo4>>cVLb6m=%vC9>v6GTg6JyiIGBvGfVva)cL_`2i&mUe~+KfrEn;7*z zlBve!kEOd&^W>Z{RnT!}R*P<`(j#Bpa~cy_eWS%EGA5}-f<>khTz>EJ^3s;Z@K0n@ z*~+N?L}qBYJ&hxu%ZA4OPw-x^*6pZ~YW(LD=|!53{#165Z4LjY_+Dl^qu^7SB-_qr?>Ib zXEM{#XZqh#`#+c2-oEiUgUYJfx67hjXWFKpvGj8Y>TlfrIl3KS9R3`?mm6q&{kimc z2QhtKhfw;#hVKj6AZLg-XVAjpzC|;NDu$O&FUmqlkXwd&2s~&+7CVa|!;I-)$gXm@ zvHc5~5g1XQ@B@(^^Yhib%fAjP<#iaz@`fR?<>#B(k+?^NfGO*l)T0wf%=n^0qNdzR zv||{kL~yns;MmmA4ihMycJHRT>_PbJni}_gfnP$DUX(E@tvk zUVrU_6h~gi@y5Z6vSreQkiI$Dk?e`aZx>}FdA-r#ON78AqwANj@MNRtOPP^Br2*-s zlnu?p#CJo(pw7XRY!1D^IPxWa!g!mFzC38k4_5%uO?veuZe5ZfyHX zcIsBtC}uOVob(e`WnShUy}`?YMLmGt0Q;pX%Pe;eO^ zEgO1f$KSmqaAvA@PcK!q`7v`VisoWb zFJQz?PRjcW!lswfePP%%hAwgy^uvZ@F_I7Od*+uHPhS#SP=Fj&O#7e80tCoEyf$C} zAe2cNzSJU|FdvH$=8 delta 34860 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 DAx&TG diff --git a/records/wasm/bounds.wasm b/records/wasm/bounds.wasm index 53930ada7bb5971f724bee8e6fece925c3bbfb30..0d6178a84f6ec9b5d1f4257976cca63df062057d 100755 GIT binary patch delta 36005 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 B7Q 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 F{{bKYx>^7L diff --git a/records/wasm/case.wasm b/records/wasm/case.wasm index 4d2f4fc2307530e0542594165a5fdbac0a189949..2d2c723fe7204e6c404dfa21041b0c8d1ea4de97 100755 GIT binary patch delta 35130 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 cS-r?oHLY^izpOQ2+0och1Y9x~uM1_ujg7tEy+F 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 diff --git a/records/wasm/classes.wasm b/records/wasm/classes.wasm index f26cd4d696fe64ee9238e2a9d82fab9ee4363699..cababa4959b89cb0479ced8ac98567410a733235 100755 GIT binary patch delta 34218 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 WH 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 delta 33582 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 RX8pW*ixxHC_Yt3@{2z**>hS;o diff --git a/records/wasm/conditions.wasm b/records/wasm/conditions.wasm index 98d7c49d4938805df1ec558e2f6dfd194598ce64..8b23f3e63304808564863021777581727116d93b 100755 GIT binary patch delta 34312 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 delta 34029 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 A!~g&Q diff --git a/records/wasm/constants.wasm b/records/wasm/constants.wasm index 60f9b34b9aac5b8008c444c5ca15292c657839b5..c9b831fe470acf5245dad521cb6401dcb5467d66 100755 GIT binary patch delta 39249 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

eK@GP7uesJpHGHDZov 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 delta 54576 zcmeFa33OD&_BVQ}x-(Cmp*wRp-ANz;GB72~&|wNQA|isyj1Uk71W}QW3WyUR2R$G| zN9A4+QPHR%V^F+^qTmQBDmV|IIHQQZ-`;gjr@`z0t+&><)?45A9$KeP)gEfsu3dZA za2hrR<6m7Gzh%2{{2)#nyM%6hB>EdIWQlQ^Y;D{vJCrm$?~Ds*evKYGyU_EcuJjc2 zuz(HEGx(3r#t*V{pujbH^wndhOdmaV=2heAF-L0_6D5d542!)#7;#!iEpDg~0oh%4 z&%dR%wpR1k?!vRCNNNe%c{P4fAvM=R!f|~ARL!foexh905=2s*rp4)+>oiqpanCwM zOd#KQ%;A*_b{U5qS+2#*RVN<0(|`9a<9CNoF56|~IXzh`6f6pWhQ*+-sZm%fcNv2K zUegFZd`B3#ZkI9N>1n;b5nOjy7YkLW1sjOQY%Pyf51d?dP`JXdS{96dI3quD4XP4oryC>VzzEJfx%+iBqDU zp@DJz+gP1g>V*Z>Y8#T`;xPMME2)qamx_14R`rrrrMY$+Unl-cyjZ_1=~j_wP0DT} zBH(X$$k3Au@<*{m1_+RQPL`o=^3p@mg|m z@|M5VMyKQ_AHJaWDWh{rN%HBx)!vv=BI=EeDY@ehFFT*Rl1W%Ho&K*->3W*A^gqar z!HRR)x-3fVkbC$ZwBvPJmK32!=+2r}n&yqvBm8d}^HZnB|LBMi0Wm+4l5yuguP8E- z(nfUg0#lEubm)473sVJ5B2f`pA#?ngK(I)OiLXcMQM&vij@+X^zQ!93l;{eXVOD2~ zc8+L0(!4iQWEyX$b?@Sh2Q0qQ;nL$RehH{Zz|;r7M4MlNo*3enQ{znnN)qO~S(h&= z3JIIMPKuh-dXitbR*-1aI-E!WhP>Rk$9=olUGMf(IE|~any1{(gDqYEqP#*nVPlWx zWEs1%vSq_==YdA$wfxN6Yt2=XkfY2D$keVA%75nLw?e|Eaux7!$*-OU<^ zldP9`f8E2zBiVYDDkkfio=iSI(Z5fzOhGS_^^_1>7bEH}U^Fm$Fegs%J#jg0NS^LF zp46{caN*y_KAVWYGR9_=|Mw2%W^N-i%gBM86n7x0Nqj)gk18ZKoY|wy_tmGiK0a7?TsZ=tw^TPBV&*^HcmHA=f)@ZV$8S@W-lWl&l}mE znrUye&1)6#BcRtjrYFqzCW3upr30=d(Xt@;-VI(C>?axBbCGmOP_&EfQIO%Z)kT$7 z=_ukxy(uh!H&svdYyG@wdWxPp)$7*Nbhn;TJe|LpED8S64dh1#fu+>7K0umNb z_{;*ZP&nuq{#OusIuzWS&VBG^STyOI^^8jtg#u*inN`}w-Ygw2^Ss%5mY%I=UOda2 z12M8I9SuUy0s80!5ifaE+E>*!Xv87G5$}w1tqBPR+-j?@*yP z55>Gn#}+)%8a;;1q~~RL1cuL;X$-k3tt%+>Jf-OQu2sYss#E+(W$~=H%^PaCtsG&y@{^h?Dgqh-KRG}xAH;Zt8^gjz1 zKtm((Xn*rIHeqN-7;g&_IdZ#S-K7JJJI! z^p<+b23w;=#1`G~Yp%`IW|nFs9$t&;o!(Lgd&~4vzowVD9mBt@H+#G2 zo%JqyM+n{($XzNO*Fu1<=gW&9M#q@+scwVM=u|(4J_Id}si|cXHVx_~H%l2HS z7Bi}}OBFvAgJ2F^c`@m;(a5`TwYR(8oz&{ryXoEMd8>54UZr<~bUh$lRi$IH-h;?! ze)|L7gq|2IIJcf~oO(~=x%}(^aEc%=DWHmdu;o$w%V-hf?PZ1e-gyO8sm@?PoPK6OtLn?ugIQ z^nM#$Pmn^q{m(P9{>GkrCq->1h-glGe}!>X>00rn5mDAhY%>Oytq|YU ze_S?OVD&ws)sIQse1)tPx^$wi^{~x`_4l*R|O%(3#Hd z){E`NiFWhF_WCguk;0-FbRNYGm7p-TRxSrYzxI!U;FtF8@NC(kKWgT7@Qb?o?Hz=G zx^{M);8BgjOP;ThicVLHUB>!Ow}{&Mrk!U99-Lg`nJ!rvn!{a|<2kjk4nkM3fhv7kpep3n5~iWiL|Jq8%J^>7>QdzOj)#^j#u@qDmnCpxGz0h<@pBZ>A=+gnu-F^H~`$-Jfe~ifL z0ch#s>VKpD_iDnK*0&PR^?m(#{!QS7ejU#jc(@XHWWPT0rCr9u{kr~x!~zlvl6ZOl z%LsE+|L*eeE@N%~Dl~Jv{~7U$@$P_X42*fQKorQ+%j^3Nd|mtlvji|p;O=)Ayc*qq zdvHnm@$l~R0!ej0a|m^0)R2yN-an)}o=1jE!?Wi_)XjMp5p?%O8Rw77#}{4D&6eEF z`m&+VMv(MhTv~ywzR8G}r989K_-16&l!I(I5^hgcVizG@uNwKIyy7*Z*Qm!T4u=T` zv4&gTSJL7m${!BZqtFtY2bw9mydAYR`tl~2AA!qrsId0(9N6vl%NI%0h?n zh`n->>kTSk|N16Z*6ucHuWTie)nC~udXJ5mGtMVB?l!VUw~Bh3>Rj&_Lr0I2+jbjI zjCM<$p!{d_rBrG%rnmUSm^7vvp8pulbC!uMo>qlD zbp+@l*B3_F#EUTaw@hpw_oCvP;Xkv>*f+70L?$L>kzBcxT2j`3Qdac4gydhm+qimC zJBe)lBx+{QglglJt9pY`%H&F$Q8Y0cHn}4)S~i&(ZJyks;B?ps=)Gv5BM>JkFlw$4 z_p_7R68Bb9x_7n2a#6T*YyQ)4>$We@X@rxgHhfsET0Vq0VmvXWJnjP$8b&Ex9~xgz zxka2Xrq#59*z0O4@qDMIMK)WE4AS zdPKj^V*`ngUe`Rejx7g$8K&kLiRhlqCfZ^4G_uqUvs+X4{%o2{XJ%Jpdim#cfhP&f zX-d5vwq=?FGAn-{pUpq@+8Aoim`wHr`)vUVv7_5NGeNo2jA)-$;1 z&D1ln#mTg{G(fSJhHaL$kX!CE#w;r+tX0cdY%+ChUytJ`h!(fmx=+v1y{^+r7UPj+ zgRQ06x5kot+Zb)08Vn`vUtS#bJz?Nn=hx*;qJFU6bB(=#eq=O4lU6iB+u_}&8WmQ5 zOIZDe6~*FddY|_I;l!wBVs zdgs5J(pt5}hJIMY&e_lzZPsttCjO|OwlP6EZ%Y!xjhi>=$t&+~G&wTZyN$;;m5Fx(l665DhehgmaqlM{P=yboP28WK)-+(w6ug4*@Ej4C6+S9#^4yv=rzz+&LR-i`&`}w%~h8qT}l5M zwzGSm=n&`z{B9NUOM%^|aNR>atM+zBWp_Bij@ou?`|SU?ickBLxGtrK@WHViM8{b41mm6+ z^0=TfRNM>YUKR2fm!Y%XR(&764^H2(we79?Z#*Uo z^wRsf)FAY?7!B~BzF-UoLf;uR`ar$EKESn<&b zgDT`o7P3xwhY-RV;k`&lcZ#U~B7KMpHrEkGM@M<6L|=yLL+J?WV*O%$Xtj43m|R>T zKPAbnKpR?<0b)G)WNN2NbZqu(yui{B*0+5$*EQzHK)~dL_ z`|HW<)YBJScnQ~cM#)o`{1;znd$?R9*ZAeBftZ#(>uFjpt#4kimUKb`OUs~jR6vjX zdT4FD$tlu|59+<`>IlZx=|74)9DA)rllDOcy4C^XBb&wE7!g-@xE?avJYA8@b2n_8 z_ONl|(>gZ0tDl}JkFGV6p3&v;l}4*)1_p}c1Z*$CV=~QS{{`1|6|x*k!clyCWLRyq zCCqZ10wZgSQ(zw2_G+S}s)>?9=l0THYag6pvkK&CI4kBx+_>++%LE)4r@8)hi}Bkt z+46LdcUeh?gXko}4^GYDU|%!(KASJ^t}`C|Ba5!(?tHdf95Qx1yM_vvZEcAgzeQV% zaoe|LYje4Ct#NEC-`<_w>cfp*-Zs9`tKPWUx6LL7L!ToCf#-Z+ z@X&LZD{GB|&oS~hsJq=r+|CTzZ|Ay8w-bXKw}V0bE8FiDv9FWp)FrctlBol>}``ctH{EI%<5qyL|$q+Gs}Ep29Tiu!+_`+!*LT zGA8dS#7b<*o?FCYhO5Dg3-N)ug{cpr86MF{*C*6OQrwNk&3|M${A=##aYfWP^md`R z&p6QV2;$0^kM@@vuVb#=%#bPmkVQ z6+a)>I#Q3p;in$s!h#D!8LP)^@Y2a7Zte9r3KOvuVENib>ajGVz$@CDfR!}jVxo>0 z8W+;J>j550hFdEHOfEeUNBDHf*RCRw77ZF0+qZm)q1^xmn`9*OKo3JMXMq%P#$)%i zG)BDEQLHvc>te82X+ELj3zO1Aw2RT}TWNfE_;&G?asBIuuyio`by6BA?#8=DTY%4Yy?cUrG0>-{Y z!1A|dqWrwhE7^M9T4@Y@yP5d6apT*S@|dcFUn7g!0E@~tT<^3L8;vgS zOh|l$bmkAtN{V|mMwA;*ywemG`p!FJk}n8fu1AbMM`nX)*O9g*wGV(O%#AV=Z#<$d zlpBxXr?~4sjKz^~J!<3~9Y@Z!EWup^9j}n^kH}X_a(#bytaTLi(kkd90;$7yu18*k zn26gnTWYdcpm962H43$pY zlA#Zn#k8`(Yx4@Zk8)g`H6Zslkh0_STyG1#1^M!plsUa6ltts>O8Q@-02%K5Yl*(J zLf$QCp;uBN7gGhU%@!c%Rd5;QSOp`F7Xj*RrMh;v)wNctYvrnIWyTfn&&06Z6a$?`<+V12;4zKT71>u;`)WOLeX8g z{-bIaoS8zWjYo2&qZ*L_uS8%$7A~MAik?!bmPal>wrj?;6PcNc-2$4CdRnD}mE!U{ z09|(?7anHkiEEvwqD51q{Ntv$U#b1lp3$Sg9y1#25}wiMz(1H52A9n%D$Km#{n@-? zmF|y1_he7-^0c#vF@}7V5uo_OZD26T(y??{EJ=LcdkNP=_H^n_8#0=@35o(!m#qmO zcI>0Uhi@lqD#Fvh?ELkrOZhK+9-<>6V83!Z=92mkANX+{MIvjihgvMBaiR4djRIb< z-rGhkVLkXXk>xb;HNkpnA5OH6+g~sITmEbNsd0L$HwA8+Bcj?YEtceAiQnD$ z9InL#yu+uCp^7o^xyUBK#@P={R^tW7MdOujxW35@Se}q>%rgl&ja)6g01F!ysb^WP zG*h`!0Sf;8m!LVSr}{$6FzPq8zRmUwU>YtkVL9O)=~e z6n+w3A61?ab2y0X-871bT?P&4o;JFR{&dgw*}j#IAhAi z852-X3%#l937-GW(8%3kBM2`@(*W$78Fzgi6bFnJUtEjWyylDN8mH-&|9_gYmHt1O zria(nh62g|8`Jdke{KK&oN2n{|FhHd>5~(&Q_eb-joo#{sUiAHtO6xrRo%AO8>u9QZU8)~ACH73f&FaHvFBT|fdL%+_+lwL%3|gi0%_ zhC(I6Du+shRSK2pcse-!B>cxO9B@PbJ}sd8YgzAJOYc53qvKY^%iqC<6s}QRr5@nG zW***DFvU0JDvHjdor&%XSNLR9Aed6*#ZG1#(N0D*MK;aewp@#iBCRj6Z6RefWo2Qd zQ3M*`Er7Bv$19dmBWO%$yyA2ZZBl3}f(1u0eOemJ+ZF6lurg_`K2E)GU!w8OLrEzogu@F)CsmI_S^29U7^dGunH~-iVZM@Ht&3PmJb?0xfal^pBA@J83 z;>Yp0^_%$PQ1KsQ+mBOlv-;lt=Ei`Zic_s0Gz@^iJZuB-BZkF4<%09SfATlpr3}E{ z;>VvlonO)M=eN$U$ogdoPRJhlg-&t*`sHSPLv-`669o#NoS~bL!r$n5)o=I4Y$b{P zKG!xw{N4&@Rc(In7}!R2uIIQfQMw3oZ&CEQAXbC^agbCnftHz^O={@%|q%0v~3)oxS{A5SLMP=SJdlqqFCRB=4bC z;-lCfMf>AjzZjSQNmpz4|5=^LFtVIzeXN4$DwZ4VL9H73@rf;+Ps}P}^G*oKpD$Z;vMX&Iq zrM>3OQe=x=<|--f0Ka@kI6T9(-Mr2rdWg;DHphAVtcy_dltbJrHg63$#V}F%JgLC) z)B>ZzV~fp}BXmxt$74_(d{EmsJZ5a9$S*#QOOmir))Um{=>FOZyu(Rzc%;b7eu3J; zXV-P-gLRkdq`5Rwq>Jt5hDdb0ZjJdmzFx~{IG?>2Dj407Hv-W%> z?8eoV(>C*(D3RTi`xEL{R(QX%lHxW>hXY5UQO1y9Q}c}|F`}b40`m*MUWg9+^@8N1 zW*l2a!2vocrqQn#oa)yLeDH~wpq>BIg>;R6Sm30yPIw0UnnRB_H%E)Y)CST7A8XQs zzBk;w_0wp9PXd;$=G*wf)8rv=;E;#|(pdjtRl>ZXZ`l*<1K+I`vEr1-xPTjfZ%uc# zTRX*zNFmOeRSBY6?Av-*f*2Md?lF(2h^gX7b3m&25$4l9O`NpM3uoxMYm?dDEk;_G z`+V}MY!yJ51dZbn!gq~1aCS~wc(tdDzH}^bSy<+~UJ?49!2F8}KMoyiRzg5s2Y>uk*yiULbq>2$UkDz_iQfy z#7|tzo-IV{BL0<)i|-WCrN*yrZi|ab#DtDUibF~_rVq`;D&uZpKHdU~SuD)Nmgvbm zQhXTE6LO;5EyTe5y2f}fH!{sxH# z8^8LXQ|<}imG0N7_4LjBRXN@V;qc|eEA9YlAWa7FGU&80!-aD$XfYENIBprHXKe6h zL7HrE$RcSnaoUijq`}YZuo}b>JG|ig}>^wb}0xv#;!LyII2`}=RsDR+Y zXFAq>S&p7LQQfXsF#3&2=r>d(KNflr+e^7#pmTK>-_VL3ON8$>-)nH}!H+eB-kNT^i6?%uA@nvCvL$}H zfmhs-Llk1fv(ohuvBSm$HD3IZLT_6kp=Y9Nhf+KG5nWpyuLux|jOV!h9Tp>2=oR!K zLZx1*S5)(FGb(Xm2wk*4-!Q6VmHO-{(| zPH7Y7c9*sh`QkIPzKy7C{pD^b$0rjs+1(EfZNwMqn$LmXH)~aaO8GPu@mgEE028V~ ztCX9cH*?yGi~u9zw<{R;oeGIw@21x{e{JnzkTpENpjPXffbi;-;Z;-p@1h!{UMw;c z7WT##6DGn96N%-=bv3qe>eUb1K5f0$)=m#KFx3Z~6^feB7c{=s(ko^mexJSvZ}jun zT7DrC@J9Izajfx0P}%8UpwO(+3Y%#09@E=Sr0Q$zie=|-2o2f!FHmFJiOaH)lPItu%xAr z4r=$9l@%hFK*K9UZ+UdLxvoN#*(mrWE1|qsp{UPRh{1`98Xt^foIl-dj;It~BEP9p zbZ-8s)j0ZclwRW#aM_JZ5PJ8;_DT?X>}0>Z&R@INJW+|iUf}p{b6k6|5D4a1?Zt43 zdVdG8kMgLFVl0VM(@_)?-hCa#H7U&0=hUNk;JJNICo###^%!TUf<-{j;0B%XaX6^85n@MQdx-I@bBi`M!myxS*;<>KwB8i2(qGlzi0!cm?QjRVc-IW z7zUeR$Y;c0Md{ay>?ukLf8C`IoJ6#d}IO65xNGGgL`?iO3ZZC?xmsdVvZ0AoW>pevwHE^b<*q8Emna$UFiEI+@n_glj;g9Z(pA7+jVQ+DS%2)Og`Bc8GkJ#JFqPILJ zy5d#c7x<2r`W&N2s$Szo^%}nkXqR9+RoDjn;nr$#Nq}cbAEhD7&r=X3M+dgLM4+%n z6&jSPyL@P^CLwbSkz4$Uoc*XpuHHlB#Hfb;3K4uiX5Q6TRFC=8@LMAc?L}b%J1v2K9we5Aj|L8`tr*id8gL$%3TkA? zyxI6{K`>l>5+ctwBTnd$+no zuwu-lLBeCcK1AI8k3GBVA~CNr%uvt;mXC$fu*UC?c%k{{&af6gUjC>+jl9`)s2Z

Sv~Bm?#ma&7Q+V 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 B>URJD diff --git a/records/wasm/iyi-collections.wasm b/records/wasm/iyi-collections.wasm index 46654776b2f18c187d2f90cc98c2bbc613a4c7c3..9c4b282f53f67d217c0d21f6916ba04d9aeee5ac 100755 GIT binary patch delta 57301 zcmeEv2Xs}%*8iEgH@)4oOX|(JNq_)pAcS5nHS{7?dR0RQQBmXu2na|C9AFTl35W_v zj|vtvAS$9#6ctc0)~7rK^jQ$w|F>t(NiI?ReCzwZx7N4TpXHo$W_Fo9d-mS5XU@6t zsZYZ${uH)n1hcK@>x|KC0uKl@HfaVtvY-DkF zbT9z|0|S7_aQAbeeI!rMDLZcu@oFB8E+uE>ZRNhThD^udf0y*=UPZV#=N{8Zuo!eB0Mlw_mAhcib=a z3BjRNh*@Y{wg+n76jSBxRy!b&QC?K6zt~YW5PO&Qn3;dFoZ7}{B z_z!+^gK;|OGB4a{yd3;F-?OoNM@Tf|#Vd_Np*eib%JOeR{blu97*&l1;RSR%)X8b= z48JL{cqO`26HI2K_vq|l(>sM}p5hYY=kR#y*cpM2HyW)X9wx3IL`be-j?R+nfJn)8 zQKS#o5F3

W?vpA?ITaU3IQM!aQZ=qvIM& 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 DgN-RY delta 55626 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 CUk5h; diff --git a/records/wasm/iyi-config.wasm b/records/wasm/iyi-config.wasm index 99a116245f793443ad316bf657a8fcbb733c2a3a..953769cd6d91c634b714748e77a89d5f1500be94 100755 GIT binary patch delta 47608 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 delta 46634 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 E0Ml)u1poj5 delta 35128 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 diff --git a/records/wasm/iyi-enums.wasm b/records/wasm/iyi-enums.wasm index 13ca52611bf3c2ec234e2916ebac9236bbcb73a0..01d18444899e2ed12f65a6b5bb4c0a4aebc6f07a 100755 GIT binary patch delta 42360 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 Vmh{F~kdxS&O7*;cJA4i<#XoL!zHtBm diff --git a/records/wasm/iyi-errors.wasm b/records/wasm/iyi-errors.wasm index b4fc8748d4edc8eb8e552541b1bd8738dc700ed2..659d176e5674071ae608b789350232dd0f10df58 100755 GIT binary patch delta 41173 zcmcG133wF6_HS4B%w)1pmKl;jhMpuq2q6hu*dfCj_Fcke2oNA45J-Z!Pe4>aMWB&p zlLQg3B0?|-2#DZ{JGkPGiW_cRuL~+(-|tj)_e@a#&-cFf@=@JYXRA}EPMuo1r`g%) zeC&v`VFXh)vyIwl)<$+Xv?Xk;c9L~yx8D{Sko*!|7+s#qrR%9Yeig`*ovE-qSIdxl z1+rbm#q&$b78I9M&6!D;tEAlUC`R12LHg3#+FHrK zVlS@cnX(iuHG%k9zAU+x6OBs)spOMfTj;Jz(JVGnk|I^fr4vAk+^M+PWbI?Q4cn_l zD9vNJNRos9yo5@^XRQx>sAMGz-CA2*uvJSF2Z=bqMlaSQWy% zI|y&MEd<`Mcb(1CYkv@1e|re_P!N7R6n-=azo7N7wPy8Ni7i(?zFu2r%VcM@Beu43 z?Oobuwj(Xp-wAobT4cFFezqu@Mahw>?621zvv(n;AMC`G>flU;juGmAlydo-+HAQkdmxtF0f&VOurg5O5Pel!R<*FL2AkOOI63eXaZrdXwtZRxWf7 ze0Gi5o*G|kwY8s>``V~&)YgT*Ovq@HFW)Q61!^X=9vCgTU_J6uXZW-b%jFR)UIl`a2Sa0}JfL#PP*k4LUYzC4-~8|~{!@W@Pge7^iTsn}Dii^vT0LatZ7yb)Jl z?FnNUw;^2fZAUjP;NAHfZ9*^D0*Tbs!l3b2L_v&?O&0p%?k~!USz%@01nBQZ^zYF7^xO&A4XR5G5xo;dyHeMa4jxYC3P{*rdMaAXi>S%R>Yb)^wN7n$~73vi5kbQS$+bOAGfMwi;#f1&BP^?xjBL!x8bPf{n5w8`pZbyA^k3ZzX&6r`~_ zqxHJrCMct3;EOr?T+}_hR85Oq^88TV!wi=t-MADzFD_CCI`g4 z>tjZ^gauVblesD(0Ekd!6suw*`!ajLU%N$nDj_5J6pa}S2AluBS0vZnq<|FpP#E)Q zEU_1+_kDVzHWs;mYj-A&Hzs=RkHj>&VUzZu?iuQ@r8p(3Ek_@lW9iQefdc4+Ru}Sq zMR%HAf==RHqTTAw3!noiR74n|0)+}#oI6is(0QVKQAFqTVKPyp5sWB=!I5q^?(jqc z!!^kvV?@PpNSd8vFgue=$^k)@#|*LOuMgH`*71GZ`0muHcoEXtaV7r zkk@S1CMLCyyM@-vu3PCE8yPOSR%v%7Rgt@fCudsj+AXMya(f8jFteyv$b+qn9WRV?}8er-%jdff5LppR%br?ihd`zPp=Dec(- z?cXV>Gmm4b^=F-!OXzg=FR`-gARo#9gWm9?NY^1wwMSdjJSXib%Ks}iG67@M&-$H| z`bjPm773V3*G@F=;N3{^+h;R+)Q-quEAJplK8I@eZ@oivwJ2}>pn^?RI>cespw9Ez zR9glws2En%y*5=wXKVMjC`xrNX9Q>w3!}iF~)qi zjVQ?&Y9tAwiVTz*>1VDwLLKQO;68f4Vs>wfl2lB=AkUL(0iiJeTt=s?y@2@)m-8`|seA+L`i{4S`A-s_My%^Qw6R-6leVR3%UWf4@8wRS z7)}BQP!;YZ=x6`^cWC~N-Uw^De^~pvRcrgRGK&sq$A&i3`mT-8dbN&`&)z{p8|_`x zdPcxiPn9D=%QRI+so_3nr0S&Ukvfh123sLom!bDv|Id40j`W-Tu109f+LW?KwJ+M- z!VYVdnf2_b=4zWJuenp}+*b2F%8i6TF1a4#D%;>0p+N16wsmo}myOzE+QzJwarKu$ z_iHD!vLYWRF|m>VW>^o^7bR+O?UJan)0 z$R2C#+sVNUo{>#>iaHaIrgvUTELmN4f#r=ZU2u)eA4Z^}`~uu|Y|dve*OsocJfddT z>Vz`*dLJX|1?#IeVt@`Mz$(p4HA4 zc;ilzFxqFqGqF;1J*UO`3)u78Xn!8AOZ`6fg0{myoV}=B@b_mgX`TCZ!*zbYp13~H zuX)tV#7{B9e_^k7s$Z{o8WF*ncuRrHvbq>j@Dfwz+K~>LqRCfPtv^g8_?h9X+r+uB!(6!(JjKTrX;`4jhh( zS`NAo@Mi`QO}D{aaa}mrkL#b*eS2`vChA@x)NNf@h4!RY54p%rYdeP)Qb*93z0jCA>{a$RlA<9gnoF{e*n);{A3@uTQzH@~>C+LU zbDNPpaGf!-0M{KOD{ys5~yS<*o_>lj}9@yCNTZU5lHv2PDTQr8W!c8Z`{k zc<-OutNk!39~A8-wlD|U+z;NOtAAsI_U4q? zt}|4?^!+vmu4vGPPwfaT0#kcBpEl{fD8`bxLHlfKhp=}E=6X-_PMexUni!sp>c$Hj z`>}UhH?0UFzM3|OeW`W4vM;VxSLU&X#vNA8Z865volzVogX%a-G-OOdrC& z(iTl`247t{y*sW?POrwbYsm+=dS=w%I;yl#du>Ksv#+^6yr)$OyC79+t7N*q(SDmT z23{~?X1B-}h@z{K9r!m=pPk(WJipH_=ws;TqRqHl z@?YE&w5m$I981v9t~H>1o%OzU-JHD0Pe@mIBy*k94$N7~KG(XXo^)9{6JJU|jRcTH-poY%{Q5m5sr*cX=;duPrZUUud6}Z$p0hyq@fZ#^dvLGZf~} zuV zgfU+D>a1LKl5;UE%rL&5t{zNdE~cgzg2=F%c3@jlvk%v{i|-E*vl)X%LQtS zerRT`Hu|a_(B!tOXxJUQipPWZu9}b%QZs{KOO#xYkvjUH=kcCC}aL)Gg#<2vCwviq6quETZw^~LDw{nxA1)o0N z-lKiFJcd2rcyamTj9tJQsG01)pq;*@m0YiB7jJp8`C)1YE$V~ICVOn;-7>cMSmJrK z*p-evm0f<6?fMU~8SaJI#`Oc0`L>WwVaKdY2w?h8qU9d$E}ug28s`{dyRM*@5j@Rx zT5O~-Nz{fM-P7zFQi;F5Db8m@RQDgh9EeQ?+9LZ8t?L7Q46j1>@gpnRoEUq5htLPx zemXwD2BxV#uQTnV%w)7ZGVih~LUn=$Sj95e&%w5z;cdU-|D^5E_D`oqnAiN!%}|z9 zgv2OqK(MsytBg)-gKI2B-iiMG_D3O@BUXgKdr$TO`;k@hT(YDgcRFZ z(f%j2f8QCpQiU(mN>yvUMs3FTFAvg^ORJ|)DhRfV>qHU%x_tw!UaK%v1!CE9TNrJ>}rs%;)^%&~`-3#)O!sqlTZ z8U||dM9q|}U0f5@mCJK*Ert?>MC*MU&Oe|7>oDhic zMbY4)7WkqF16QNzizL8`XpEV|T{7E6;-d*8!OSs!sn8dzMyoO9@S#{ZN;GPTgDgaF zCkzxP8fiUF;s_hfvHKOq?1nA-h4Foc>j~|tHKP!(64y?}{$tVFq1c%mU7HoVbSb)+ zh8fMR%a&?Ct{oD0`N__&+NgD28OX|YN%5B>0p7H(XHFK(?}R-$t)Y^J9~J;;Jp3z2anu zTLCT?oM|G^U9LN{_qKH7vuBzdEy)Fbcx%IcRGOwl!)yBmy2?kXh-_``ayTbuNO`}2 zAfh|V{RW7!*%a=sfAHdTQBO6k|Jkn;Xp(nDp2eT_Ei`aul z>HCnw$@4t_3Z5e#$OfiXl<6P}rP~FaQQB&7`PYOH*-0g$z1PHU6j(!~!CSviyW#HS zVlsjMYSG4d{@6unw(>O77=|qh%hRC9yfo~7t1$e@rkV0_QaxY(!LS0(k{TP;M*dII7q`}k= zs>6Sysw`QQhNc$X^?bpUGKJr7HH*J%0@*;63Kg%Pm35B z&D4mwe!0fKqEU;euLaL-^|#;}zkMQW)XKL%jceXLGXT-<$-?#6JqzPFt4$5#9>Htt zyJL>es0TLqnzCpXj)81Zk(m6c!gFZXj#g0y6-*Dn#U1K2G8?vzL~@AoK80e}|JJ*s zLcII$eOp_6uUNcVYOJ9;(rl7*8D{5YrNBf@W66m2)6x=iYA+^|e-m#V>(j9WP?@R&y=*|pWKib(HRL$>8N51cUsklzNFF%tw{5JTE z79ufJL6hG|ffkkOayc+93lNl6eFPj&9K1 zOG+xFm^ohmVz?H8rabNc&vceOzC zFYT(1#Ulth)E0j7UW0bygA|ME9^A=RYXf(8wFWl#F7hPpj@@2!$ii9x9NbND<(=Iv z5f^^l-5Pn{Lr>@YsZvywX7^*E;a9GzNmHCOupLEhasDD>VJ+VXuj1goYWT8+RHO zKu{6JJwp=Ga4d#toh%>=3!o@0aJI2JPxJ;edxIF9V32Ck5PWFKNkax^bE*_FP|r>K zkFzz}fJcTynYE8lr|x+qJzLBajzKAKS1g93(y-FxcA;Rv^}tkNH(K)hBPYQ2_<@dO z|3|Hs*o>BV53b?SLf94WQ}IC&YFCV8xSy~wbQLooRvV~`8+LHCgUF4^Mr1jHHi2-5 zARRRgHC)~u;i{+t{gHpD0R6G#kkuc-R(Q4Jhsbw7I&|M(w`BjLH^c@#gzKXf9QGLf zgqJKr`w0^{nnL{~iGIS4O!U+8!&PyjpKK-zIwI@{)t!0dC_g*#2g=dY0hQq_;$nmL z(~&}Uht~IKd!}pik9J^pX>~`F1GiIjPs3D#EuG)yTFZ-UV6=jMmR;+q7>!!RTNl{= zV=5q>%q5|U_YnQhO0IQ8i1petf0c!xI|(0xH9^r>Uke-w(FQ!Was>DB0A8R$Ej6)` zu8l%8UYm@OT$`yNu91-&+Q1KMoskz?OZa0*;YRA%v2*FHuAOJk)KZS6+B&q)>!|fS zcEoK$r>U78^E&3Y@4zvUk1wdm0wbl|xs~%va~G6UEv~7|U06|a&77*r#S3QTmR(cU zeo0O4Re3ob^K$ZXtE*;$*!ZK0yBX=9@N35&SG7+cKbQS~#Pq>&wb6cJIm_;jswn-V zs<4#c0u|yUTMoYlWu=(QVD?EV>;%of>lcRRCMRniW2G zvm_k=<6(V!7;_WN!dE%tp;tNMIdOBnc0J)%zczzz-@nF5dc4j_W{cZ8aXa?<_y`gj z0fR&;`YDAa5=+N7IPI0G5XPKoYPK0=`4CN#96eb<{xm!z$|! z6Z`7lVjF(uj8+8257No%k;&w^g7QU6J<-Aouh=p%;quZ{xc=d0Jn|y|sa>Q-2 zxZQGwH~;(@-u#YlizdCDN$e}$=C#}>fUmyINmAb7B!k}JBnw4ptGJzfM_7NbLz1r0 zUs0HwcLo)Q@*+vidzTBCDsC&pZNIpkeV1!9;5}Z|?eB5QL+@pA^OuB4(z{{W@wd43 z<@Y%t`N7S zXF1QP$!<=L6^oA>iB3c)gjQb8+LvtybK2i`$vcv-*%d z*Ck5Qmq>p-b_x69-(aq( zl-GX4g*_ok--=txw;VU<+pLIFjgk~^m!!FNZQ=PuQgqF?yk&dD?L~1rFK*87IAiDU zc#{^0(&q27!j~Qv;cvLs;k3JHNnUzblP_fA)|h?aUT65yy@J%QRi1atOZRFQF1Das z%r9AV>mhEle;GujJ-U$60mLIEJeSP5Tl*Udk~jjnf$|%gTo_OV=Vh- zLkdfAwMvzwRH=J&VI?_U&q`rwsZ~jmv=She67`KjGpVwonS|p7qWV!UOJV(3k-j^H z^$t9W+14f<2i(S1^ZXYcNh$!350cG4c`|Z45nOHGNOE0&jAKfVfL{3+RiWKd*f(^Q z>RJLpNts~h_|GoGS0Ff168M0moCiTND?Jez-V_<{1?DcGVwHrLY}3-8Q>^| z;(a0bDC8+ArEMN@1#l+;p#-N9=qM@WAovS>3=Bj`Sro)ChCptc?XWW?WvM`B#z|7& zklGn6OG(+u@d1U}o)bdwvMfoI@Ea7W-PSHylI{@FmAY3@pd@>_W{)D99>SXf!IX@q z+dcsPL6o7Ht!^@66eWWtMhht^Qw4qs@Dsq#O*sT! zL`gZ5#fA5nnHGZ0fDV+DpE%Z*k3OAdvUY?|QL+yqPTOJql~m^8`rC%WV1tGJvSkyy zo7dn#$Gt0XN?jtln3B>nlOweZ*iRr?-Fv8slA>~??bl39peUQ8;ATjoZEe{v^JtRp24+Tn&Ym2!VS9WQtmxX7d=8eGj#}va|z(Pg};qUj5q^C@^ zP9j6enZpI&rk`lZ+yNu(Jl|82mJ8e1>PDa^D48K)^gv0f!5BjwQr$B62_&zMLJ5tfqU6W)OOLP@#_ zAsSlQ>Lx*5N~X#kuYi`O&HsajQ8JNZpwoEKo`78U478_YV*iB^wNlh6)vbjxluYC; zMUs>Nq}g4sf{~Jm-+UQ<2%98y5S#lr5IgcY`l-GZS=$z;80R#Qt3 zgB2;6`1SK8=_bAfZluTsQ0!dn9A`ipAC;=&g)akL}EWm8l6A(+uOeNhN+g4DYvD*FC7z+F^&i8r_-^QG)hOu>ffca zX67J2xD;y%v+3I~Iw+ZPIsqB#*^6NoN+y0HOydq|{GCvcl8K*x8D0mD67a&wT8)sT zRTv5|Evx$sk|>$n`$pr?Kv;*>y#upRGLi3&#S&WRE!FLS>rpb1_aJh?F|1B$M4gnB zJtA)J?}lx}tTOM*LN83K|(vbrZ=c1p@gfoz{9@lztx9}dG8C@BW> zdN9-c7~oBwgcebfOGM;exZDzLt2+-3Daq?ZT`<5MLM^54 z@)oDVu@E;b-nRmn#zLktTNe-nTQ%?8r!R}0@# z;I9GxCDTUfn2{(s9ir#P-O)5mvlj3_TqNgAE_^!hHwtE@E*8~Ma(*HtpIt3U`-NIc z-2+gGlCn_*iNTjiw$w@&%=-|kx(Q}hcLwtvCHZmoNPrr3*PTtr_iE@sN!}~^Zx`?% znHI6QCkSNTT1gsYB6}hXP?Gx! zGk`QLeFH`hC7W1ax}f+8lhj6f8rfO?8J9dEnpToh-AMESCGH$$2pJEF zU?kT?KnqH?1ss>Lp=p>mCtBM=-hpS)^w2BQpSWamoqkvp5kgRSzWKuHaZrzCZY0AAH4WXnwA;kUwrO?}!As>d{P~yx5xMyy% z>Xqt_0Yk|UZ5#7N3LL4Z;SJDp*y zd4z2cYUl?6tVO#B$u`O?rAF9ny;bpRO2UKOGs8o;XN3#yZ-~1z9NcIKFU$^)vh~#uwP({~dUzyh4iW4D z>jb@Z4(rh(4;>Zpd4wb-vAz+uf1BDAz>K5y>vLFgOd^!x8uo|H()ArVtZ=|oxHfpK zG2|u}>i;|%76+%5>Ly_RRr(WGJUyN$1-X3^*HQ$wSH4BYZKc5{t@IA<%x>BVYB{d zF3U_4Es(8UDaL@iU>gXEw^bjzm$% zIvav4ufzbH2f;WvCUeL0mU}Rv{s^U+z^%Q zFgb)d1`JmY(50fYM|Kud^zE9AW=Fl2+&`@!$&2jCw;pl3SD zTxe_2h#OJUOW^p|umbUvz?CLac!0|u4cPXUC1E+s#VXpu;u)HA3l z`2!TwP)xl@r3kFub5Tm3flN;VCqY7TK1zke)&-`$#Pn~9?^+4pR%c5l3EeTy_iQ3T_Oi%fD9{N*VErjlWkyP^0himA1FZ71d#Qcu7&0A3^-ckyujbAo_D3hmJQP z<5>?K;on^()<-z_aRB%L=*ykS{Wd7co}LeY;GXX{T-Sb&eyTHbcfH~sQL85+%Agp} zDZG5#jOAjzT;w>xne;XEIHkAf!t!DdfO!POvs1B(`@lW=lrAhIv2ceN*~x{`m^u(F zrPMEUtqV(^y#bhZL>}&Ho16*MinFa+@hTv8W~FG+dwM$W#dfB6%gsZ=#$;(JM)x znhyu_Kur{(#Z*9Z@=hB&8lA)&;xq#&(+TV^Lnpi{1pBbkMCPT*ja4Ml{N{Bf;hc?CibBgoeO@<~oJ?~Y zYZpZ!);kMLVA&$ST)(>;OAQpjl5BYFB*^pf@I5k?B3qibJGz36j_sn5;*L__{TK|a zb3}MIQXm7}%6iALbS|Jb7m&_fv3D%R({x@}?^s@M9|&Q6d0z5eM>X!|vl~lK=Ip!U zsQz?55ANpkptrL=wmVA?a7W)GKzu@Ih@;si&C4f&eQ|seNb_cr%mbW^aAcfgaim6? z_j3x@C*p=d1@EW9e43ZXb%6lcHv;tmnw93gU={+@_%!b?qWlR*dQ*b}6M}h8$fufT zxgKd=KD#_?sKI9yQ4lp7c|Myw8)wcYQaC9Z{t;C7&1#0{ZmiU>6gO09h@nb_Rjvmq zn=RTmPQRxI%ZPc0)Gg<>N%Q_kf4v85!!q?txCM9@-^{BM6YMRa_PkZtlbXyedPftB zZVa{PmJo}IykSvMFfFV>CQ3Mgw=}=fwy}qhb0&Y=Do`!88nC6o?~;4D6-YN^pDsMevt7Jk8sM2G}_< zX41T8$)&?woP7k5IbB@Sn=o4DSWZQ_HGJp?csY$Cg~W0=C7NJ} zA1TCh+$ci|uWN!Or5P!8tx;VjwQ02>B+c7`0!FoqMja&bfxAg4$-}~C!UQBSIJcN& ze5w07Hy%v6gN(5*f?8vka$N+E4DV9&*G2H=a~(8JB&k!#>Y5pbG+}sdY%P|k)48oR zZpQR$lQ7YOnj3qBp4o?`U*Vw^ZQ-=uc*<`Td0xxiJd}C4k+;Q?THf|VbC;lrqWlH{ zk0Oie0`7>>xA(#0G2ZTaE+fq=5%E4=fO&XyJSJS=7i!#NqN-T!dG`~C@m5YbBH zxr3kJaT=ny@1KaJxMBFdKzV11uoWu?84n64Vncji6o`utg%d&>?)#=V?)xWVLw#SM z$n&ul+n{gi%bJ(2M8DZ>t?5mHezxHDs5^~}vRH+NhL|VHcn2lE*anYP$$QGU!4f@K zM{#d5%6ow4qo1UaT<=t_!P$L^< z-c_P3xetT2JIUi+b2IN63+O2VIiHjS!gCeMd}1;PPlG#+D*hr^4|T5OzSMvLG@MY0 zS=i=MT)LU}jXPtXSQvYz0>Ni5fdJDupz4Wd1yI~0Zss20ZUmx$5c`4PlbWH>S(JGg z7G;oNg>-*7D5Kh;{k*BGMANgd#N(zg%7rL%Tdfk_>E7`$RzQ|1RtZyBzz|Z;aatKht--@O+Ybd)6AmY}4eyM3cry?gEf1NZ1vyeB;`qs+b9sQwBN z(pui*goAJoUnM-;y&f3!w&dvyjL|M`da9t!Q@}Oz9v3(_t`x>As?Am9f8a*MAPJ9IjO z;f-9)i9Goz^Uf7zDYYJ4!iQJKlNnMEk(e1Ek-3$*8#;HWOY16H1|_L6o4n-IR*@O zU_+zxD02rEWzgWy-Rl5Ocaaeh0bgk&w{dR+v@=0@MA#*usi&yrJQ_3ztA0T(_n=kW zfDa1;_CxtMzNUCsSa1OV+=8Nv_lTU3!=u2%!h%Tvcs7HKTTlQ!&!Ef=D9Y|h2aO0o zkN9{G354Wc1`Idg6~OQS@Nhg|Q@M8m!!5WC7;eFbxoOeFUxBJe6FtuZ#Vz=-u;AoF zMg;f?2yQ?_p)@ROxdDxO!Hn|)Qhg*ayoJX^iz`wQlDLWnU=;|sjgD~}N$x?9;`|b( z_A2D#PjEAEU~>X;(kF#Ep8+dZ?@6H^aq@$=yhcnc_AGh zGI4mw%k8=Xwe+ywdob%9I0-5E*a3LixF-7IJYNj*+BHs;=H>HeeIiHn zA=7V9q@|gc?<003(y|JxS<-zsN2GbjQXP+Q4&K(6sG7ie-qFT#?0h_5j`7eX5MtAI zo;N?el+5x~d>W(*(O+|B?*@ub-v|@&2=*<98>_@0Il|bs{me0>8=XPmn}!Ko>td3? z5_oH}DKGIn$WCHnVv)R*CI)e|QQ+IaSiv7nZE^8Dc({ZlA%UtIKoWfh8(+Dm8-IVX|Hu#m`5+K^2;f6JBY~ovvEvj4vEwum+@C}NWPJE$BvAY_cATO>MLrBN z5)kKRp~Q!#A&?JCLk4=uXiIC+7Q=>FqMhV7tEgqo_+)K#VKcEt<}M)+>09;FL+}WL z_fis{Gt<0$%kJX^@3kZ(P2?9+K3(MdQx9eEC7j_(ZFo&$b(_hFpoEK_eN=_43;C0m zQG6hLivj*a6b8bm=aXn)bViw$4!DD$~Nl-*>@G#J%W0ECe5=Ijzj z4JXtopuW+Mj$lbG_)L()H{l47#9U7l19A~+^$VZ~aOW~A+X^suFi{4j!88&XF>m$} zM*>__aNaBw(9}#cLCl*YIV2SiR3y(yh~0h+>0`|jVK3gb2SjZ>1Ri>?_%IvTo95&i5%nK#ZT_d=OBeu_A(NUgWpHbu1U zH~~UPJXeF|7rw5T!cQ)^;(R8Y3=E$Mr|?4zj=+F4WJ;B%~>PyG4T$ZQf zH=0Rpj*`NCM088NNX;4#uj6xDA%}Waqx`de0mNdzJ)8$W-iBS&y61uCrzb@TbRgjQ z3FTc7#HNUHS{F2tnlgRPxDxgI#q;`#856f|`Ro(aced}CRFsb7-6IjmnA$J)w29oE~7XZ^k;={48VB>7T3%Ar3q|OJQvnG zRG2>J3RV{dVdg2PpjldXah!_AlI$dCr@Tq3Mo$n$spzV$*j=#5Qc*Ma)=gG+bco3 z33{g~(D^xi;uO|JRQ6sFn@(1GKWNls{h=vrX50o6ay~?;?wiV5vg5iRHyKsWn99-| z_Yu{nx^Fg1)cek6cKyy`T>hAX%PSLDl>X>cv-Q6PYXtMVQ(0kWothcOsE$bPY}^h` zMwA3#b^YPbayV;i0OY!N^oi40EB3H{!!*_|z8*tUc83bk4^Lx0DES_4q~ssdScYRC zk-79SGnv~`GD075C5wtbP5QTLB4OT@SY{q4Ps?QQqYFqAg?g;+O2|4(3@XV=-Y|nX z^t&t2${(&|af7(>T|$(9la$X7QT`JW+LaA8TBFpBZ3aL$Mo%QD78`fyVm3K_6~?_h zAXF`?c3_C`iTcT67~*dI+hRO7--RJ8j|rvMTTe$bc2fo8+4n{Tycv_HvkdmA9+=MZ z;x|AQd3qDR6Vq9%u$=^-!t}oLS@Vp3=H;FqmLpqV?_<>j#*b9 zID_S+KMFG|F<$~2PAEwcufW96UL*EbT$HbM^j&|9zISFYUm6#)iHkA&8WnG5S?K(z zWn6CROtu*0+Dzt4=j0EBkn;hwi_r)Yy_l@OHIu3A9sS}=wjh2!_06G>*3Z+gp2d9q z`;vR$Q%6upR6C2zdemy4tuCJ^9uw{R6?(i${_{AuS5#6D{9s6bZx-w7xREMoBs<~9 zRI}idd9#^~oYUJXq!X?u=I2AysMJeKF;@EPx8fGhL(VIVVh(9zN6a}4cpMMeuQCr7 z?NQ@V=R5k>r7XvB2T6Nc)Y)e?YdxEO@*{r`DxO;Nq175=ET6U7E7$Sy@sTw?lsY~> zKDNdO4F|~hgwcc%wT4&z{A^U-o9cR7R9-umMe4)LFbF%%VR6DoE?i#gzl9B7}hn5B2&zWYK`)9WFwm>4?vmE zm3EmXOTF)0EF8-8X>(bR@t@N8ijjk1kXIec1yf(JI_~){t7=(P9Ve=uVOE_Ws;Z@` z^{?i#u3^8BV>w|_6iAY}qy!%K zc=Y^=95g#b+%Wy;GS-m-Z@Y5Dga7KI%bA)Rf#FQ+Aajjz8&*$pPnp^#)vY8Qd&%d~ z)nQJkmvB_CE64mhP=BJF^^WIGGEO#U0Q?d_kDJG)VK7$C6Cr-xJXVsy+p!>|9S532 zY^D4KI)mzw>lByXtb(Zt+^4E!@+slyk*WI73Rc|t6>8#*A&ucO10gc^kjz^7Zrp^- zpY``ExDp%Yvy8B_B;Xp$+75l>e9SPjXeqQhRIFYxpXIY_^d0kA2lk2n29@UPQ482~ z)>ogu0PnTYV5E^~+pRbgSL^E+u%c1ZA?Hzod2G(aejspAp}EbK_#rI#G!;}^QX(yO zX~kn}Wm6L=GErEvW!W+llg&b|Eicil_pD@dV#vB=THF1yl=z9>P>H9|2lX?RY%Kdq zZ?}+TbBednVB2GyqI4l!!glKKFNBtZpu{r71=~hjMB@9pZ4s*l>gGk*864Cf!L9ix z7^sWTv9@n*QlgA{o~6QfD0I{RSj5s=&;pN^cecj?y9EnKuI*E3VSKFKyNcaqtg6Wv zZ;gc^p|1ztghi?(dyeYgRWV;*v6@bXlG)<~Npq0Uc34(A;`%zyh1m$3m<8-6&UD5N z`lxEWW06DQDya>~o!8?s2NI<4@9|jNY`sXqf(0HD>b-dRz?~&_*=qXV@isf{;ju0^ib7 zy93xndz4!J`WlusG>l?ol7o+>-OyLI|4gFK^~Pie39|ibD(0a`=WDY4BNUy^K6vws zG>p1L#n(}cPS!8fzy&|i$1G;e3>}_Dt42-&9qdjzya?*1I^4M!F7v2 z+6smuL1z+5nB)dc8x5HRhc7j&!MNk>+6!evUDa;-b z@usYr(02Oo8(FgVFr1SsnPwtBAV?~+$45Ae^v;`@FQ%7Gw%e6E$ZXT(!Fu^7*1C;= zts_{GJeWC@%pByL+Z;+;RZcWza;k2QIG=Oy-%7csLj<~%M0czwsFl1H3=ulN{ zAqZiAxmP?VnaD|qIMd4ctz2&_H_yzSBaxu5G4Ar%fQeeuqJS9z7w2LfEL zz0XNdj7rc9g%H)~x5vui=g|o)!nsU7r%)Re^a#{0P=R|Dy(Wit^+{hO3rh$*us0xgXZE(rTc_|DLX@0q zc-9^<)L!Tu$|1Y$5f-|}UTERV{t{ni;a4$1aJUKoDkcc*j)$C+0yo)Xos;Z#$1=wp zhjK5fudyo*<=0bEj_l!Bv&Pv@W;pgoWKDCGUwkJE^awzXX`H>9V%6-t@p}ey< zkYgVRIlKgH4bR#~JKrSQ8hf}X+uwBbb|~+nwt%Yaq=qApy9(rBwfK9jod~e6z zc6OY}@AuG~?O<7f+c2}xIHuv5$%m&?HAdM`oD1nIh4*zQ&wld~;gu-SbqSQjfN z;wzaa*s>tDhea2xE;Kp|b>v*L4+Heub+Z%On0@%?Mp_n@$5}P>wQ@IFxz=XR>Iq9X z;a74BuNv+K4{Di=RTvF7bKd08fmmyjN(K;g^c#3XN#`0qg$xYoOKy=Oxf^$UP(L$R zkGqc*1n39wX49%f)6z}#M6Yod48npATiBG2dt(qA?3SQ0g61~60In5u2+NT|+$G48 z8`7G~d#K|T!B%t;t!QUyXPH~>7a~Gb7J!c+h>Mw1Zfo&$g_jmnCj%X3dmW`atlz>rlaKwt5!C_9?=q&o0K+~=raCwz9=BNi|(_N;;r@5ND zwMZ~y5gi0>F@OOBic09K0%j#Ax&I)P8|sBdtbrUVw=_*d-y1ObcH`~0U?t0E88wRq zAL^jb3z)P;R7b#RE?Y2#k>-|I`q+R$DyMUca|-T_X+nk8A$7fqT?~s$Mr0UbatA^u8&Zl- zV@>>Lr@?Jb>2~=}qhD$MEeeK7`qqMJIIQaUOivv_pII>B{Y6ijGld)|F*Uhd5!o8H zHPn8re$Z;muoyaqg@etv#)K&!2pMwp`3FC-^Bxid%;^jMXU?)AldQ2nfNqwdENeK;wpdbwRR<>^E8198 z!9Z&I{$gj5>3^0`YhWyv=bG&ZE;>S58LTu^oM^9*CU!&Q07)SZ(Arq;6C5APz_+N3 zb=5p!WNSEC9c(FXg=x#eX3(=5x!BU#l7r_GrmF-kZ3S7&|IOu_S*_(McsyhB54Lhv z>#drDOPF9SLoIr1*@nG{DUHLhK8FL&F@b;T+aP0bArYKet(?h+xJ_P7GOb;swN#a7 z{<#`+{;}!_8Elph1#Ji<-=>D-HVn{Bl$;q299D|%bt1~JS?W#?>zT*M%oIl<5u zQA{rxBfP{K4VL{aFOjb>TWLA9MHHOh%^{ER7hJ|zQsv&YPgU}ocithX~=}8N=+set4g6uS# z{Fw^_J79rBV&8qWL4|39MH(Wsm;%1%IkCZ_VN73^G5cq+=$~8BIuQ&0G(>{~h1P)h ze|*VVgMlkJddwxFd0IkrRtPqGBV-$5jY&DftX#g%%vpoL>^@mIFpvM%Y$#hfYn~6z z!{!(>B{(r9nS(93->|&tPYwSo{R*wE&7Tzv`k*B<=&M2fEXV(!^s|D&xhBI;T^bNw z7hDAnUTSrw6S2Uuxy;YWj03{Q%*7VpWRnjZ3}NF7J7cO4=WYgDXM-qYB^t2HMdm7z zpPm_{3z`B^1AY0&^s>If%Ys46j5EOj9*k6@O&<`;`;Y}BS{IOmd(`0Skaty6Ld)T- zs2Frc9HE&C@YP6DPT5$kiqlH8gg#Sbwj|I|G=*sP7uxhj@hJFy6@`%o$U*IQQ8>Cl?RV0gPZ2&_^t&)%W!6BjrU9 z^7WuYX~ZGz1g5-%Lt4rowsNqwg9=#C5)Jm0FHJRwP8xm*^JFZ8xMxWm&i{(+kvIoC z2x@HopCe-A&+%N7MQR=$8IlfiM`|S<|E^!AyB=Zd*+PBiBP=t}myQo{Xe5W5W}xpM z@domW9LlSxWhgY5U2|sGdrJiC`05r1i!AT zU8!-@Ig~`R^t(m=Lg!70!!hs!7kvv+TcYvkKZ``7i zABbB*^=%;9W@9p+V(Db<8vVvY?AE~eJAnAuJZT`rbPloO&@4i3mtc=_e6MW17H60^ zlKj-J+9Ma+qn(o+%BE|vG`EL2lrQmrS}FRqhwTXt<#Wn!y0(Tg_O7x&-Y68|o?}lS zFhT5HIYHP^N5J`z-7WV9s}68bTFBHy-!@WooLw6VK>@d%n*ie3%BPs7veAEAF_Su! za|Z&4?e35gmuTS(nND#ASV+y>5e<{@ttz?CK7Hwn21?~*mbAA=TSCU z&ReTT9A+u<)oTy7KFn&Ee8(Dn>k;Pne1iw?bbM`JEH;&7N0&<vH~_)zwRjOj@u(gS+?A2gZ{};<_mn}1~+$hv84w+eJ@CP zQVbd#QOYw-C#O#Z2?RaYa41LNjfIWh8FJMu^AVmp70D1F3 z0TtovLRhn3Hrj`QrRlhC!b2Y&QceivNQYyng&v(e!D~SYwIFW|G=9MKqt!@$SWA-( zeSQd44{j1^#{I)cL-P5dw9y4)H|Rr-;SCJ>?uzm<&Y=-)CW%>&dfB&GuRX?6*ff31 zF}ynYhg*N<7;6*wISJHs%n*8*5@|k5vbw{31V$@9<2=fmtZ>9?&K6@}gf}8)^9XG1 z{IM&$Y}+`^VsM&^2)*WU{Qn-SUeUKb&OCiThY1nKH=&Ifb`99nP?mD%{vubyVIq8n zqp1%c{Lka;dghsiN2ho`NbayqW^f?j=59WC^9dFnEkE6;uX!0C;(x92;C(N%B1OLC z@PSuZz=kg@A6)t-8y6;jd-&j+@3UW+eENuf`a^tc`I93Dzx$BoD)Ns<4yvE92bmms z^x#Y9U{tx;QT@wL**9{FqxzZ8*cb8h@JKp|*J;NHw95;Q9(?t4w%4A&AtgFzR_Tnz zbBe1<7R)KF#!_1P1FzF@CBi{vc1U&)kgXdR$k%l9UK$?t1 z&$Jql=yBE|B>EbzhD49AdZ%NU&=ae*8F*C!52QYVa`c?%8$9-)57)|ghC}&yz2%edfWKj z9{4~M()ONM+R<|hFIqznAx7d1o6fPH8Vnd(PVZgNcU4Cr(b4hEMfid#aNBSoOozhh zBk(z29INgJj!r*!PLL!zhs*{M&gPcjoQ=-fl5lK9CsaF-@G(#6F(f)+dL4<5l$tHZTO3HwEs-QT zmAMt$K{`>WM50e^YN&%gs<|JDwu(Dz@o8Tu5x5TflKW8bV%bT1lq*2o68Vluw9Gw# zbQH>*LZbC+`Z7tP4_FRDq7PM8AkhaYmm$&Wb1&9yw01iJdRjvDhgI%@WgC(3fk^2j z60L=PLBb*?AgzNy`n=-|B>IeF<#I`)4>o>)MBipCM50AVS~Mz0>V!m#iEm=?K00WA zzZoxn+yc{LHE;0x^s&Rckm$pPuYrap{x6W|gN2K3!zV;z(EkmXiRe3o zOOWV$gM;qC_hyi;M53AfgVm@AY5kqB2+CuT=mUUXBGIS*?nk0e`rWn${k|4ohDD+e z^`&FBp>Oi#B7YvVF)qBsj&vG{zNq&T($4{0+Qdl`eI<|HrKB(7jYgtR-~9)PrmP4Z zCPdo25v{|$9*Jg))|=qvp!pq%qQ1HrP6+xNkSJh}LZXkzO+ljX#eIlG--fd_L*+?$ z0VEk+K|fwiMbb}vgJVhKmtDSCxMp{aQwPGrdWhxFq#5dA#eU&0L>+&SSU9p zL_zvI(}UX)Egr=L4+o_5gYxnZGA!iVxduvLmi>0Rmryy!kg5G`AwHKzc5O ze*Hb@eONSlCw?OZW%wWJmu}h-M6?Fd{5y*L`$!%B1>fFfLNPv2o`6)0RDpCY(k>+P zkG}Ww5a?e+3gzns_%Nj5NM%SXkpla0G5=aV@Yjr^0k1?_h_nyM{Cgbvzp7{mD*h|@ zJNID>A)QBRClsdkW56}y$7YY9MM$d-;D5P5dKKvm(#b;@KuBF5g{hHlJZx5vi12^O zN8bSz^`U+nDlz{eEksjzf51l~jYHaoWd7A5pJpf?D(COu)S#CSVopY)hDpVSq%VN@ z57I@X{y>_41CTcvHWP#K_jm9!p!pf;A`)3lkGsfJ{iPpS-ofynSQ3lr{4iR9G#=@$ zhY#ld%qFu;`a0iiB>Lc90Aq)Kum3U<{W8B6_NL$CevL#SLv_%{DxPfAAODG^#GE>U zIUI?8u=1ZH`X3kB6ApUOJp3r-Cp+jRQ}Q3+9RUpv|ch@1&fAC1j#7nov z#2Txcg^On_D4Abc{T~OSjPx!j9y?g~D_h3`#l`f>8NHNNCGC-6NM07Npv~w1Yr*`I zvIWvt97WmUlBzi~>2j6iRPa{dg6fjlrNuKAmtj7e3P4p!S#_y&4RS(Mb;&i-29#Y9?On(E>u zWi@mAO0)D6mzX!O6!6jovrOpwD58pL=~ratm(H)Ox<;b!`7J12Qd~KsymV%b)Ct9! zl6j@lXk^M3l+_fM%`RS0S~{zAmNXwA!xUGS)kwFaxTFfY<#(2Lo79UImo6@qo{LRQGm6ptc&LfbmF0Cm>U4$t|apB_Xxy7Ohx1w0Opn7ptsR6hb0IoJSwDc6=OJ>e3 zuBxo8kv>AHdS=OjVjySElm07;fdyj8EH!sR*OKbe;>y`lH{?0#oQldBB^A|D6#)1j z*D4pI_i9RJRFq2VEJ$%R>@st%v=LsP63nfQ5HxC@HbU{hA z)EdRvRi&lH11rj^Yoz{WkxJDPzRby+%_%rREg-yy3@51OzdaMS?TwEns(-M=z*!K@ ztSG6jHeBv^D$iZKU>>z8B?1b}tbtml4od);1vg(H?L$s@&Fl&?Z*|Qq=`>)xBz=oq zMdgy>iqfk}D~h>0;s30*h79#jb=kG0QXmV!DbspOb8xSyESV+UgbekhREJFO-qKM{ zASFg|A78L|{tS%PohY@Fp1`$q{=%AT`br-m%U>y-T~#?>`mb5S3#L+0Gz?QS3;iHH zjI7Y*6(i?{6PGP0l`>;!D^apH|60U z{09Z?`$(UnTt?w&VP!>04ONT-LNP-4#})ZlDK4q0oL@Fm>IW1IMZ-rbMt)%xSf%R; z3elVN5ln8^;V~5HlzxSo%KzORK6XtEzLBlvK}W_qE^3q%7UHjHMlX z0WWANok!n@SU7VuQs&6Ainay+$FT(fNyPTRN0 z8gfn9_|oc{{uo5nJ$hVKS~aU|W=)SF3u-!b%t_3;%)fd-i(Jl`r{_B5j&g^NdY)5m zreEuno68-$i^3kKoYtn(*sOn|E&X48?OA6%CR}dGy68FKV9lTP&se92%YC!E#%FP5 z(<%P;7*~TnnA6Qo%^EAyCP)O-Ioi^?;I+$K>sj8PGNri*9aV2_tSlmc%Ix}pFp<(`pW;+$+h(~5k%q4 zDQ%4GcDMIJDFHzZ#T!vevO-NrDxx3?0^)7Cv?$V2Yym~VddCZjsCZPK`~gONGBF0< zcrqsb1Rsn)fFFQoX1Arj8J>17XU;iuX68F5bJ=3z6~*OZ2>K6^_|b7{y|qDnBix+f zea*O93>y7#beBY@I4#&IkupbcLZVaHqqrnN1#88x5*==~;ctm#979Ql5NpSJ8G`IM zcFCmn37nNl-wymFLuIzp$9sC1Kwr}gT+zCOu#>_BZG_jFW@0`!L03UB2Xm9U+r`=R z#QQll_ZXbEM-&kvt&Ak||DYU^G$K5I&jSgW_rD3^%^D0fqi}*pM`&z^JM}=VIQUNzw^(G>l+(ydR zMg4>MW_<#i9JC#o#JGdz*(feJ!0Sq>yirSgmB4JS@fdz_(EFXs9XM@)Em-1&J&^7- zGD#=Ymu7q+W0F@jHZ~Zkh}M)!CB|{tN%zeraLoxjVRA2ib3zF=yP(u^B^p}PA%IyI z)L5>Djm!$w&`X(LF4$If&7Wgho9AipzFv(LHd^4C8)V@TDcE!)kD+oAqKq=4Lo9E3Fg4YbS!)*ALEP{ z{Mk8XO9~(Hgl&o?jO0@$kEP>d6hZ2uYMvGGsNos2#S%QRz-)t};yJVGQHlv)Fv4;X z08gfdV=tMa>*O+qc_f_CX$>wiPhko7?4tY?JCGwCiWyM=GSwvIzD17{_t(tYKafg~ ZzhOn0f%M2*W{piGlT%Bd+kMate*v04Wi0>z delta 40256 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 diff --git a/records/wasm/iyi-files.wasm b/records/wasm/iyi-files.wasm index 30999f1774fb43dc74a523326d758f5db585967e..424402a81584804f4d5526800e6dbf2bdf14408f 100755 GIT binary patch delta 34995 zcmbuo33wF6)<0a;Ju{hXWU>uOAj3=&AOuKQ!@dmrCV~Qj2q7c^5<&u5*aRk^NJNE5 zBMk@y6%hdijT%Hn+;Ic+s-Pg^j<})M>-D<+f2XRuXM*}ZKHryz>aIFlojP^Ssp^`U z=C)VDK6xYT;Bek@$znxuDEM=PsjA{|I#ne+A~GtvS&YM><@2FDT-(jFI@BGoMFyCk z(dEW0y4JO)D;HIXtj(du^X;@>dEbD?m6ta!zql+fzhZU)T^2H5co-)RJ|^P6Bg$fh zMP9{uKpChEOkY`3Q^Wkn?#HzxQ(@7p3B=EH73R8;Xk7oMtB<*Up}Utw^O#7+BE8J@ zUjnemXI1V9q}OPTinqgSB+sWxSw5TB=2c6)46?j7|4Gr8mn5V0*8Q5Qrlp*gz%W2| z)`GXBM552$uMJS$Dd&UeOQGmb?$^pycjpTs=(Qo-Uj^X@ZwY~4(vGXm`~DEb?z}Yw z`%@5pG!*`85PnGuw`Ioeyv^XUd6i5BBhv=i#ws;?wGFn8O6^|l8QUo3{9Y~Eo3WEmf~pb{Zv}o^_jSHzpEqzwHg)^*`M13 z{-au+qqTB!lXjD%eHtHhj16M0#|VF4Ok^Zx$efq~M11lN?O%?J zY8H7$g|B_*OwuyL;)d6)2TV>}iQie`!k}ro<=ubqFR|Qz@-p~dZDm-y*h_zcJ`t84 zTUXb#hke?&VI5-+{t4RA*^%$praDs#>TYk!A$8)WPJfA2Tn~`uCe3A<2nkUbGRRT_%*O9BZG@jlq-U~T!Yh|D}+|L&bjb>hlwmV`}z~GDk zZA7jT1h;uNlR#x0#gY!We594ayry zf~X?{<&E@n7YtlO0qck68SntF;ZEB6$Qu4wgDWc6=7vtp%U#=vG$zt$-J}h4b&A_Y zFt6gOr+cnqbM4gD#-(W6TrHH^ecI!$bn^UjE}yS<9|%fd2s;vroCUAyza%`5JnEw6 zjcu;nx=-sBJHVKvizE{RtlO;B#(D?IW-L^Rr8LmYf2$N32b;ut<1Dc*LFjdX;^1cL z6v9c8>oe_QY**5!Rh&EiL!mhL*X|_}V*U^V>KV~=Ahur=9;5A#YZlaBee1H37x$p)C;%3RF?RnyiwlB5pW0Y zMbDY>Ly0jiefjR0e80^IK|Ds+tu=?e`=3mprgS`Wd+`M78ua19LNSg=Prvd(9Df zUAxVyp!52f>pp^{NUj)Ip_Ab`-WVelA-l|QWJFy;=a>XU%dHU&D-sm0+`3L%mH2&( zke;j5a5ARrUhM|=%kg_isL$(FGnHj@neW=8Lfpq&Mb(rmUn&WIwJFI

vFJ(fpY`_p8;W(FT9J*Ex_e?XOg7HfS^2 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 delta 34413 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

tug$2 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 delta 68336 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 diff --git a/records/wasm/iyi-formatting.wasm b/records/wasm/iyi-formatting.wasm index 78737bb02c19eda4a734dc2bd8d08180cd5fe52a..6fe2a744408c5ccd9d9e0fdedf5e8be39596efda 100755 GIT binary patch delta 37354 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 btC_WOV#Rco*(O)dm@#)v!^c^C6#st!tA3sz delta 36410 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

O`l- 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%0D!14JqJjQfOjE?p^x4XNhJj3E|8gIcn~FlL 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

@GoD0vgV4EbU)KlL+iXgaXf_j+3$u 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 diff --git a/records/wasm/iyi-grid.wasm b/records/wasm/iyi-grid.wasm index cada76d50d1105a39edaea0c5573476e68bcff0c..b0670e17f8a1ab526480c00a76e63a5aae9702b2 100755 GIT binary patch delta 49115 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 KWeJDGt>VA8)1BG? delta 47371 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 I_$cN70Et{(AOHXW diff --git a/records/wasm/iyi-immutable.wasm b/records/wasm/iyi-immutable.wasm index 6897d969ceb79b19590bd9389c39e73d2f1a1be3..270b0d88763683cdc88efe05d39b8f9e179bb103 100755 GIT binary patch delta 51677 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 Y3G-%oa?dIzyFV|l=v;8rFZ2NYHyIyn-2eap delta 50042 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 A_5c6? delta 33777 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 TNzGLitF4`PDt>IVn8g1Jo!*i> delta 54334 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

-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 KeA*;&1^*wsUE1*g diff --git a/records/wasm/iyi-io.wasm b/records/wasm/iyi-io.wasm index 988f46cdd61ae822ef3651ea07cbf9b7e8338a49..ee26d9ffb4e748a979003917336545a2fae189f3 100755 GIT binary patch delta 38120 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

na(D#9lbZdc}Utw+>&kylG$e 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%0A9L_4YBe}cjfnnfeTux?k= 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 delta 37711 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 delta 34449 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 TZZEExIdlFUyWhUVM=Spa0~F3A diff --git a/records/wasm/iyi-sessions.wasm b/records/wasm/iyi-sessions.wasm index 516b253e94792bb89b6a45366c9274c9ce964473..ef25f004e607daac28e55319f966481a0f3a2439 100755 GIT binary patch delta 38802 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 delta 38149 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�$SHZX$>?MfM&MM~TgwnTMg^ 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
pJCcsFqp`?t}>)j9La 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 delta 48603 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ν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
$B5Gl4ZZ*l2CU_-Iwo`(1)v)j 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�OS(y64_vJ;t=`8YA%Y3CxU4O78O>i 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

K>I&-2d^)2}83n-w*O4>dUXLH$ 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 literal 322516 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�|7@O1u*0f{L4z1#uA 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 diff --git a/records/wasm/iyi-std_iterator.wasm b/records/wasm/iyi-std_iterator.wasm index a13b71d23b6eb698b91956068c1175450e24271d..14a1765bd77b3d771571f6f0b1b6779ae1c690dc 100755 GIT binary patch delta 53463 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 delta 50764 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 diff --git a/records/wasm/iyi-std_time.wasm b/records/wasm/iyi-std_time.wasm index 7601b55962889d13d045957e02508b90e319ae57..45b2667d812fd3dffe2594590420edd4a39482ad 100755 GIT binary patch delta 88195 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 delta 86148 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 PCXvX0a`?#2bPfF<8*%%y delta 44025 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 LoK?R`-=O~iRN4<* diff --git a/records/wasm/loops.wasm b/records/wasm/loops.wasm index d3f1375cb1bceee3bb88ab1269bc58b72b8634f0..9cb86d0b798ea2a20a49ff67e73e8bb999b45245 100755 GIT binary patch delta 34966 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

  • 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 delta 34524 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

    l(a+q+faWU~v^onV=S8n=9Do4R#Ssyd-2l~^vU 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 Ldq;lDM#}#Wc_#nX diff --git a/records/wasm/strings.wasm b/records/wasm/strings.wasm index 3fbe085de44de50e7124bf7dd93b1757a450c854..8b400827ca40494a6a9e058b41a05f8950505c3a 100755 GIT binary patch delta 41645 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 diff --git a/records/wasm/structs.wasm b/records/wasm/structs.wasm index 64636e98e9ef275a21cb8d1e9712cc2fdfa5a812..722ece1b824e764c2a36e67e10a386b8e120f6b1 100755 GIT binary patch delta 34905 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

    OV0f|7)umjR~ZlJ@}&V2@tTmh`@j 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 V>9;t`YG=%tf9syxzY(L<{{wuSGS2`2 diff --git a/records/wasm/manifest.json b/records/wasm/manifest.json index 081edf5..cb43131 100644 --- a/records/wasm/manifest.json +++ b/records/wasm/manifest.json @@ -1,10 +1,10 @@ { "recorded": { - "compiler": "iyi 0.18.0 (built on Crystal 1.22.0-dev [2a9653052] (2026-10-18))", - "commit": "2a9653052ab76f9d8084da47e059273f6ef45228", + "compiler": "iyi 0.20.0 (built on Crystal 1.22.0-dev [224ed74fc] (2026-11-02))", + "commit": "224ed74fc7ba9d78345dfd10f21ece4b499702fa", "machine": "Linux 7.0.0-38-generic x86_64, QEMU Virtual CPU version 2.5+", "command": "npm run record:wasm", - "when": "2026-10-19T11:14:40.963Z" + "when": "2026-11-02T07:18:22.704Z" }, "samples": [ { @@ -13,8 +13,8 @@ "path": "samples/tour/hello.iyi", "sourceSha256": "676f8372f2cd5f8941b1dcd0ccb167ee6f6f27c1de4a77cef3af0372c323134d", "wasm": "hello.wasm", - "bytes": 122096, - "sha256": "d8d85975c2068cc2da1fc65f6399f9eaec1a1f386d9a5171b230d74294070a11", + "bytes": 123087, + "sha256": "b2f99b569507b06c72ac45d9afb48ddf6342bd7fcb333a857392aa6318f5c65b", "exitCode": 0, "nativeStdout": "Hello Türkiye!\n", "wasmStdout": "Hello Türkiye!\n", @@ -27,8 +27,8 @@ "path": "samples/tour/modules.iyi", "sourceSha256": "c908a80d8c5a2c3f42bc6c90cd9d9a822a4c0b077cbd4713cc627f2d9f4912c0", "wasm": "modules.wasm", - "bytes": 123851, - "sha256": "8d4664b217911e3ba42e798ba1e038afe923b32c470228a055d94a372a8ea0f8", + "bytes": 124842, + "sha256": "3148c581ed9ffba3999fec179835b1583eeb72ad033dd7ef3c5d7bd3fb110eb3", "exitCode": 0, "nativeStdout": "7\n", "wasmStdout": "7\n", @@ -41,8 +41,8 @@ "path": "samples/tour/exports.iyi", "sourceSha256": "1d341c749781b957ea8e5729a226f84852f816c914224de63771b5a03bfb6153", "wasm": "exports.wasm", - "bytes": 123847, - "sha256": "bc2e1341183ac2e7c50ef8f5e8263221df78b087a6ae1f9937824c6abbc4b30d", + "bytes": 124838, + "sha256": "c81410a6f19ab5fd8abdb5888a2eebb027f205f501ac9e1acc1a0211dbc0e612", "exitCode": 0, "nativeStdout": "7\n", "wasmStdout": "7\n", @@ -55,8 +55,8 @@ "path": "samples/tour/variables.iyi", "sourceSha256": "672aec63ec81d0a8dc9cc773688d853a6b9a246618705a4cfa782191efe3fea5", "wasm": "variables.wasm", - "bytes": 155118, - "sha256": "1cd3534d7b4f1a6460822ace0f288e030693a548294515b3c64d0c10c7c1db19", + "bytes": 156061, + "sha256": "e923e39c408a3c153216eff5469350c49d73ac7dd3e6074a739f4355d296e989", "exitCode": 0, "nativeStdout": "iyi\n2026\n0.75\ntrue\n2027\n10\n", "wasmStdout": "iyi\n2026\n0.75\ntrue\n2027\n10\n", @@ -69,8 +69,8 @@ "path": "samples/tour/types.iyi", "sourceSha256": "bbd35199bdfae3aa05673d869e512e1713213fa1aeef929e6477fec7ff6e4464", "wasm": "types.wasm", - "bytes": 157866, - "sha256": "0ee936e81b05606b1ffc61da3735003df0f291027aee3d0c88d017b7934fdfb0", + "bytes": 158793, + "sha256": "02ce0e08a24e6218fc6820eff9835b0fefdf204fa54e330889fdc94c5185045a", "exitCode": 0, "nativeStdout": "Int32\nInt64\nFloat64\nBool\nChar\nString\n3\n3.5\n1\n1024\n", "wasmStdout": "Int32\nInt64\nFloat64\nBool\nChar\nString\n3\n3.5\n1\n1024\n", @@ -83,8 +83,8 @@ "path": "samples/tour/conversions.iyi", "sourceSha256": "1b8cf5e80ec2dbe3ce9b207d12491e7b24761caf1eb2797a098f68f36e933b81", "wasm": "conversions.wasm", - "bytes": 186501, - "sha256": "f219dadcc4543f3a531c773c11b7ffa06aa60a998cdd90f69c89b42fc427a634", + "bytes": 187416, + "sha256": "2c054e3c89a1a116d5885db0d3e6f8da9d20e82bba44d23469f58802c84580b8", "exitCode": 0, "nativeStdout": "42.0\n42!\n9\n10.0\n18\n17\n\n65\nB\n", "wasmStdout": "42.0\n42!\n9\n10.0\n18\n17\n\n65\nB\n", @@ -97,8 +97,8 @@ "path": "samples/tour/constants.iyi", "sourceSha256": "e5e15868dc555999be7b1c15e2349147be0e335a5b45792b893aa9c9d3e139ba", "wasm": "constants.wasm", - "bytes": 159500, - "sha256": "4144f9bbbf3eb25d55eb06522c04764fc40258ff9281cfc4f957c767affece7e", + "bytes": 160443, + "sha256": "899cc10df244def0c0b41d12d716abcc61c467b2351c736900923f81ec6784d9", "exitCode": 0, "nativeStdout": "12.57\nMerhaba, dünya\ntrue\n", "wasmStdout": "12.57\nMerhaba, dünya\ntrue\n", @@ -111,8 +111,8 @@ "path": "samples/tour/functions.iyi", "sourceSha256": "1261f0c7c47c4f9469358362a6c52a84cd6450a6e4347e1d7ff9eba09a88f89a", "wasm": "functions.wasm", - "bytes": 124193, - "sha256": "9b1e589f87c9c4fa07a1c1b3376925f65ec03c9c72d930800dad450e40902072", + "bytes": 125184, + "sha256": "0d6e13b48be440c0b4158538681d8319bfd05bd8c9f843a6be119703e26b4470", "exitCode": 0, "nativeStdout": "5\nnegative\nHello, Ayşe!\nSelam, Ayşe!\n", "wasmStdout": "5\nnegative\nHello, Ayşe!\nSelam, Ayşe!\n", @@ -125,8 +125,8 @@ "path": "samples/tour/returns.iyi", "sourceSha256": "6b655fcd036d722550a028424fe4719cdfb89383fed7607e260c46fbf0fff932", "wasm": "returns.wasm", - "bytes": 126434, - "sha256": "f3173fd034b6d9b95fa858fd03f6cac7d6b2538704001c478d8170bd92746657", + "bytes": 127402, + "sha256": "a562301ac6ac68f527583c80c033aa83dc650e65fb4c2d8eaa80ef74cc359226", "exitCode": 0, "nativeStdout": "3\n2\n2\n1\n6\n\n", "wasmStdout": "3\n2\n2\n1\n6\n\n", @@ -139,8 +139,8 @@ "path": "samples/tour/nil.iyi", "sourceSha256": "a559c045cfef442a9927954673d8ad5fc61f610a0908950bcdd79182853a4e04", "wasm": "nil.wasm", - "bytes": 124485, - "sha256": "bd9d12d8fbedd7ca6102cd3ea69f5988422d815e046877225590a3b76a436410", + "bytes": 125476, + "sha256": "b910ce39a42b38d673f9888e725efd5c4fe263916392802f487c9a8702e54b6a", "exitCode": 0, "nativeStdout": "Ada\n\nADA\nnobody\n", "wasmStdout": "Ada\n\nADA\nnobody\n", @@ -153,8 +153,8 @@ "path": "samples/tour/loops.iyi", "sourceSha256": "18f56f89ce4e1bcf3f1c2abff8e3539b5bde85135ec978931583dddd7882992c", "wasm": "loops.wasm", - "bytes": 125458, - "sha256": "9d56bbd1f00c959a14fa6d802af486710261b1422e6816ec5c3f9ae6f5ffe9e9", + "bytes": 126424, + "sha256": "70b84276aadfc16114677bbf4beba2def27106595e68c4c125f60256869979bf", "exitCode": 0, "nativeStdout": "1\n2\n3\nround 0\nround 1\nround 2\n64\ncount 1\ncount 3\ncount 4\n", "wasmStdout": "1\n2\n3\nround 0\nround 1\nround 2\n64\ncount 1\ncount 3\ncount 4\n", @@ -167,8 +167,8 @@ "path": "samples/tour/ranges.iyi", "sourceSha256": "418036dc21744938451d1210eeceaca1931d0edb5329f3f8e801f626fa234fd6", "wasm": "ranges.wasm", - "bytes": 139692, - "sha256": "771193e793116140d70d1d077cce45f3651e07f169bd880379783a1a778ebfb3", + "bytes": 141760, + "sha256": "4765a3a9662c3d9d9bf6ffe04e86ec95481c9da2792ea4cf70e06bdd4886f750", "exitCode": 0, "nativeStdout": "1\n2\n3\n4\n5\n1\n2\n3\n4\n[1, 4, 9, 16, 25]\n5050\n[3, 6, 9]\nadult\n", "wasmStdout": "1\n2\n3\n4\n5\n1\n2\n3\n4\n[1, 4, 9, 16, 25]\n5050\n[3, 6, 9]\nadult\n", @@ -181,8 +181,8 @@ "path": "samples/tour/conditions.iyi", "sourceSha256": "8ed0a951d7e760d2bb95c784b20c3e59771080e0578a2cadf0b1bdf41fd2eed2", "wasm": "conditions.wasm", - "bytes": 123837, - "sha256": "c6147bb1a69a4c1ead224fea9e2c7d40450282836f87804fa722c30b0b9106d1", + "bytes": 124828, + "sha256": "0e3ae9ecb6b7748bf36c6736dd7fabe8f95e8f86c67870ca7d14b68695acb3fe", "exitCode": 0, "nativeStdout": "warm\nabove freezing\nnice day\nwarm\nodd\ntrue\nfalse\n", "wasmStdout": "warm\nabove freezing\nnice day\nwarm\nodd\ntrue\nfalse\n", @@ -195,8 +195,8 @@ "path": "samples/tour/case.iyi", "sourceSha256": "71de25c31bbd4ad83f406525df3f263bbb18c8dcab00eee4dba6baa166409ffb", "wasm": "case.wasm", - "bytes": 126815, - "sha256": "76446fb365856668f336a7176ca70b2a65b21682fa9a2504d1348ca6e7e14c4e", + "bytes": 127806, + "sha256": "33112c07e0f4db76abd152f20e8e9d857b8b80397a64fe77035dc7749dbd0bf8", "exitCode": 0, "nativeStdout": "weekend\nalmost\nweekday\nB\na number: 2\n", "wasmStdout": "weekend\nalmost\nweekday\nB\na number: 2\n", @@ -209,8 +209,8 @@ "path": "samples/tour/defer.iyi", "sourceSha256": "c39edacef8695b8aa0170cd169373a19ece2ec4fcf204439ef48e22aadcf06f2", "wasm": "defer.wasm", - "bytes": 127140, - "sha256": "ba4bfce71cbd6e63c0ce10685d3d3f302feeb5787002753eaa7076689842e038", + "bytes": 128138, + "sha256": "edbb73210e8210678d0e93205a1f4cbb77e54b466b842a07289403329871a2a1", "exitCode": 0, "nativeStdout": "open\nworking\nclose\n42\nfirst\nsecond\nthird\nturn 0\ndone with 0\nturn 1\ndone with 1\n", "wasmStdout": "open\nworking\nclose\n42\nfirst\nsecond\nthird\nturn 0\ndone with 0\nturn 1\ndone with 1\n", @@ -223,8 +223,8 @@ "path": "samples/tour/structs.iyi", "sourceSha256": "2354525f27753b7a4bdef384dc4c0c6507c12fe845e9d2927e7aec0f62c2814c", "wasm": "structs.wasm", - "bytes": 124581, - "sha256": "bce492322c202429148d06972aba6bde47e429c04c4be160ab5ade6c9533b6e7", + "bytes": 125572, + "sha256": "ab6c2b2e09b57aeac3f2ac3aa4384b8c265054c056ea511f5672e479e7fe46f6", "exitCode": 0, "nativeStdout": "1\n(4, 6)\n(1, 2)\n", "wasmStdout": "1\n(4, 6)\n(1, 2)\n", @@ -237,8 +237,8 @@ "path": "samples/tour/classes.iyi", "sourceSha256": "cfc6709102991d8da3357f3f6230408b0c79e8bf7199e63f8b40a272c65a2f6a", "wasm": "classes.wasm", - "bytes": 123407, - "sha256": "6fdb00be51c3c8a8947ee039d7eb1f064bec2b184ffae7f4804b7dc64003e7d3", + "bytes": 124398, + "sha256": "f09ca5018601c91f292d49427f0712b88af0b418a0072d7b6ef67da83d613152", "exitCode": 0, "nativeStdout": "2\n0\n", "wasmStdout": "2\n0\n", @@ -251,8 +251,8 @@ "path": "samples/tour/arrays.iyi", "sourceSha256": "7f4841af80023b70c3e6f897ec7d5ba82001acd91a905e4772cc6f6f0dec0aa9", "wasm": "arrays.wasm", - "bytes": 143866, - "sha256": "552e337e429793603390dd18026cf9082c863aa255bf608a5a366d8466057c59", + "bytes": 145881, + "sha256": "a936176105b1cf1b823a04753d93cb4cd86cb11a3dd7456c13830461b2a01f5e", "exitCode": 0, "nativeStdout": "5\n3\n3\n5\n[3, 1, 4, 1, 5, 9]\ntrue\n23\n[1, 1, 3, 4, 5, 9]\n[3, 4, 5, 9]\n[30, 10, 40, 10, 50, 90]\n23\nAyşe, Mehmet\n1. Ayşe\n2. Mehmet\n", "wasmStdout": "5\n3\n3\n5\n[3, 1, 4, 1, 5, 9]\ntrue\n23\n[1, 1, 3, 4, 5, 9]\n[3, 4, 5, 9]\n[30, 10, 40, 10, 50, 90]\n23\nAyşe, Mehmet\n1. Ayşe\n2. Mehmet\n", @@ -265,8 +265,8 @@ "path": "samples/tour/hashes.iyi", "sourceSha256": "1b5fb76d25d7f5979248800422d871da36d4c2d0b829ec9c311c7b200beb167b", "wasm": "hashes.wasm", - "bytes": 163805, - "sha256": "e7bdc623f09de975cab17d4f7467b33343cb6128407d718514b25bf719b3b4a7", + "bytes": 165179, + "sha256": "c57e6e01912536496dc25cf385feafc8fba8317663dc78b5f84e12b99cf3da27", "exitCode": 0, "nativeStdout": "31\n2\n[\"Ayşe\", \"Mehmet\", \"Zeynep\"]\n\nfalse\nAyşe is 31\nMehmet is 27\nZeynep is 40\n{\"a\" => 2, \"b\" => 1}\n", "wasmStdout": "31\n2\n[\"Ayşe\", \"Mehmet\", \"Zeynep\"]\n\nfalse\nAyşe is 31\nMehmet is 27\nZeynep is 40\n{\"a\" => 2, \"b\" => 1}\n", @@ -279,8 +279,8 @@ "path": "samples/tour/tuples.iyi", "sourceSha256": "75f2414a08f54a9d8ecc53d7b0621d8c4906a3f39d9a673dd1b8d2f219b4856b", "wasm": "tuples.wasm", - "bytes": 126788, - "sha256": "57086980e47e4c49ae6e0466a9479ec2f6624fd9923890e0e8d6f2faf1c32e61", + "bytes": 127759, + "sha256": "789f6da9fbc0ce1ce352cade9019cb9b17a85cf3d360dc0aca95cbeaf721eb19", "exitCode": 0, "nativeStdout": "1\none\n1 is one\nAyşe\n31\n2..9\n", "wasmStdout": "1\none\n1 is one\nAyşe\n31\n2..9\n", @@ -293,8 +293,8 @@ "path": "samples/tour/blocks.iyi", "sourceSha256": "f2ae3fc23344a9f94f896942b8609956979599387e313e98d49cb4977ba9dd17", "wasm": "blocks.wasm", - "bytes": 126911, - "sha256": "62b4d9b570f5485aa2d319fd5167a311a8e1c76e49d315ea05385272d6d20cd3", + "bytes": 127866, + "sha256": "b024efb9529caf394a9b41c630abb009f69a35dbc5d019ecbf8f51dc9df306d7", "exitCode": 0, "nativeStdout": "step 0\nstep 1\nstep 2\n6\n49\n2\n105\n", "wasmStdout": "step 0\nstep 1\nstep 2\n6\n49\n2\n105\n", @@ -307,8 +307,8 @@ "path": "samples/tour/methods.iyi", "sourceSha256": "f4fb9b8be821d24f79148d110edb8f6bd36239bab164d7be45bc4d3da29eba7a", "wasm": "methods.wasm", - "bytes": 160134, - "sha256": "bf95ec7eabc12af0182e97029cb9037daa18502038b4044f39253ddfbb91155c", + "bytes": 161051, + "sha256": "900fd19677f0e65142dd426d78cfe686ca7c4f60767cc3d9854549ccded70a0e", "exitCode": 0, "nativeStdout": "12.0\nfalse\n48.0\nIYI\n4.0\n6\n", "wasmStdout": "12.0\nfalse\n48.0\nIYI\n4.0\n6\n", @@ -321,8 +321,8 @@ "path": "samples/tour/traits.iyi", "sourceSha256": "98aaeb457da3a65d50c3ce5402f3378e431010d50122396f9a353b4d958fc8a8", "wasm": "traits.wasm", - "bytes": 159592, - "sha256": "ba83810977ebb13f0be4fa8375255b8d6a4c4ba96353f42512401ea06d059f61", + "bytes": 160535, + "sha256": "d414044f7f0e6ff94bc7b5ade6b095c32c968333c5c7e49acd2c8ea710ccd92e", "exitCode": 0, "nativeStdout": "3.14\n4.0\n", "wasmStdout": "3.14\n4.0\n", @@ -335,8 +335,8 @@ "path": "samples/tour/dispatch.iyi", "sourceSha256": "e9a5985790ff7c52c42846b394872bb18ac9040abfd59e9453d4ac71747fcfb9", "wasm": "dispatch.wasm", - "bytes": 134609, - "sha256": "dcd380f33eb32c1c484ae4dab221e69d43fa01a0de05431095481d8ee8ec95bd", + "bytes": 136069, + "sha256": "c619d9328cf1a563769a23b1fa9b75fdcd3e3432c5a78aebbd6590f77a587927", "exitCode": 0, "nativeStdout": "hav\nmiyav\nhav miyav\n", "wasmStdout": "hav\nmiyav\nhav miyav\n", @@ -349,8 +349,8 @@ "path": "samples/tour/defaults.iyi", "sourceSha256": "7e438eff3837000a1551861b7107a2a4f7f6f78988a283fec3174429a1f20844", "wasm": "defaults.wasm", - "bytes": 126119, - "sha256": "cbd2abebebe224d22ced7aa7d06c9c5e379ac622ff64cca62be365706f21ef1c", + "bytes": 127100, + "sha256": "c874918891eb024609cbfe95b478018e14ae1f53491ab22d3675e8bf8cfbf01e", "exitCode": 0, "nativeStdout": "Merhaba, Ada!\nMERHABA, ADA!\nBEEP unit 7\nBEEP UNIT 7\n", "wasmStdout": "Merhaba, Ada!\nMERHABA, ADA!\nBEEP unit 7\nBEEP UNIT 7\n", @@ -363,8 +363,8 @@ "path": "samples/tour/unions.iyi", "sourceSha256": "61cb534c8687c14b7392657f859b165eb063dc892ae64429ccc59dd241441466", "wasm": "unions.wasm", - "bytes": 134222, - "sha256": "bac598ec5c9bfb7d30c535eddbd7d2b3284d6dc72389791233ae57a0871ae330", + "bytes": 135190, + "sha256": "9b658342abd216814b620939a4d3506adf316add17b205b0d7725ed2c3e5b7e4", "exitCode": 0, "nativeStdout": "number 24\nproblem, not a number: x\nnumber 14\n6\n", "wasmStdout": "number 24\nproblem, not a number: x\nnumber 14\n6\n", @@ -377,8 +377,8 @@ "path": "samples/tour/errors.iyi", "sourceSha256": "af4c28f720136cd6c8b935273fa769fe234b55716da4abed70196e56d8b9faf7", "wasm": "errors.wasm", - "bytes": 159584, - "sha256": "9f4bab334b32c9ca883b781fa6647f8ef6f5cd4dabf9930999f42bac57e1c1a8", + "bytes": 160371, + "sha256": "bf4685973716b806c46817d9091b6ec0861e06f247781223e6991ded1e41c979", "exitCode": 0, "nativeStdout": "2027\nno such key: missing\ndefault\niyi\n", "wasmStdout": "2027\nno such key: missing\ndefault\niyi\n", @@ -391,8 +391,8 @@ "path": "samples/tour/strings.iyi", "sourceSha256": "704f192ecd578a9847d911563129b559b5b04cc276327f8de24fd1502565f542", "wasm": "strings.wasm", - "bytes": 159121, - "sha256": "3f87fc3881e0a2d3674c0d8c0e1ae9b6abd5dbea32c3aca8aa3c95e2b789331a", + "bytes": 160621, + "sha256": "6af479f7f4dd2febc2a18f5aed837b172b468b80f22e70f01b29d736bf5c54bc", "exitCode": 0, "nativeStdout": "10\nHELLO, IYI\nhello, iyi\ntrue\nHello, iyi!\n[\"Hello,\", \"iyi\"]\n2 and true and [1, 2]\n12,05 TL\ntotal: 12,05 TL\nitem 12\ntotal 99\n", "wasmStdout": "10\nHELLO, IYI\nhello, iyi\ntrue\nHello, iyi!\n[\"Hello,\", \"iyi\"]\n2 and true and [1, 2]\n12,05 TL\ntotal: 12,05 TL\nitem 12\ntotal 99\n", @@ -405,8 +405,8 @@ "path": "samples/tour/generic-functions.iyi", "sourceSha256": "2b0ace59365d9bb35c904102d1131a95f5787113ba585975a819c6a354666e7f", "wasm": "generic-functions.wasm", - "bytes": 150801, - "sha256": "4d9b0b77e65e3e8b700d72a4030b211f3a1d137ff4e029873414c5eb5537efe8", + "bytes": 151699, + "sha256": "46473ac6701e53a583ce021c8b0490161d086e01334c3b26f3088e92c98655be", "exitCode": 0, "nativeStdout": "10\na\n{\"one\", 1}\n101\n", "wasmStdout": "10\na\n{\"one\", 1}\n101\n", @@ -419,8 +419,8 @@ "path": "samples/tour/generic-types.iyi", "sourceSha256": "fe5f0b5626ef062f7af44196125d3b50d1914788fb1416d980d10e22f872aa8f", "wasm": "generic-types.wasm", - "bytes": 133417, - "sha256": "3e14278baa5d11be7f9055e13e565dd13b637beda249467bd0fae79dc94952f2", + "bytes": 135597, + "sha256": "5c3cfeed954628eb61366e149ad8b96558faaa70feb6b7ce63588796936c9bcc", "exitCode": 0, "nativeStdout": "2\n2\n1\n\niyi\na stack of 1\na stack of 0\n", "wasmStdout": "2\n2\n1\n\niyi\na stack of 1\na stack of 0\n", @@ -433,8 +433,8 @@ "path": "samples/tour/bounds.iyi", "sourceSha256": "cd5324bcc2756eef8d4ebeca406c61ecf12cfd5898b26a01ec8fa4fd1ef64d26", "wasm": "bounds.wasm", - "bytes": 128615, - "sha256": "b684d251752741a006601e38fa1049a9e3cd4f19ff213c50dd6941710297812c", + "bytes": 129541, + "sha256": "fdc11a3ae994b9bd087d03c63a8b98c391ff7a326cc8124b5d627a553d9211fa", "exitCode": 0, "nativeStdout": "200\n45\n30\n", "wasmStdout": "200\n45\n30\n", @@ -447,8 +447,8 @@ "path": "samples/iyi/basics.iyi", "sourceSha256": "2fab386bd172c15319db0a4e553008d7ae7114fd8cdef72e7a48a850c301c72c", "wasm": "iyi-basics.wasm", - "bytes": 209967, - "sha256": "c58a25d4c6471c5bdfae499ceff4528377a6b87dc5042dc16cf12e650ca29507", + "bytes": 213443, + "sha256": "1ceed0e4827fa6b8c8445d7c20558d0b0c304ceb052ecfc4dd3ce48ba6e3e625", "exitCode": 0, "nativeStdout": "55\n1\n2\nFizz\n4\nBuzz\nFizz\n7\n8\nFizz\nBuzz\n11\nFizz\n13\n14\nFizzBuzz\n3\n4,5,9,6\ntrue\n1,1,2,3,4,5,6,9\n3,1,4,1,5,9,2,6\n1,1,2,3,4,5,6,9\n31\n31\nhello, world\ntrue\n12\nKhoor, Zruog\n3\n3\n{\"a\" => 3, \"b\" => 1, \"c\" => 1}\n14\nthe 5\ncat 2\nsat 2\n[\"cat\", \"end\"]\n", "wasmStdout": "55\n1\n2\nFizz\n4\nBuzz\nFizz\n7\n8\nFizz\nBuzz\n11\nFizz\n13\n14\nFizzBuzz\n3\n4,5,9,6\ntrue\n1,1,2,3,4,5,6,9\n3,1,4,1,5,9,2,6\n1,1,2,3,4,5,6,9\n31\n31\nhello, world\ntrue\n12\nKhoor, Zruog\n3\n3\n{\"a\" => 3, \"b\" => 1, \"c\" => 1}\n14\nthe 5\ncat 2\nsat 2\n[\"cat\", \"end\"]\n", @@ -459,10 +459,10 @@ "id": "iyi/calc", "set": "iyi", "path": "samples/iyi/calc.iyi", - "sourceSha256": "3213a69b6f922b4d5ee4ac1ffb5696123087544e8fc503f4622c4ad7214e24a7", + "sourceSha256": "7310f0e547c6ec9632bcf318538cd8778d8c32409822dafd3b98c43fcbf4e614", "wasm": "iyi-calc.wasm", - "bytes": 198605, - "sha256": "1aeedad67db85314146f76bffa5e4d3e18d1780032735d26b5064b5d34df307e", + "bytes": 200618, + "sha256": "aa2cfc22916be0e807cad21a8d95de21cb0c097b45add05dba340ceafc629503", "exitCode": 0, "nativeStdout": "64\n", "wasmStdout": "64\n", @@ -475,8 +475,8 @@ "path": "samples/iyi/collections.iyi", "sourceSha256": "9b8bb4c0bf703238a08afe44995207bb1cb6292578a7d255b5f3ece0c2a80213", "wasm": "iyi-collections.wasm", - "bytes": 225717, - "sha256": "5bd53b43df4d81866f367608f26d432d91994971f3f11943508d8b0efe526c5d", + "bytes": 228588, + "sha256": "36964f3cc2d2ea02d38a0564a8ef13256bfc6ca1af838aa79dbb2b937b95d6e9", "exitCode": 0, "nativeStdout": "to_a 3,1,4,1,5\nsize 5\nempty? false true\nall? true\nany? true\nnone? true\none? true\ncount 2\nfind 4 nil\nindex 2 nil\nfirst?/first 3 3\nmap 6,2,8,2,10\nflat_map 3,3,1,1,4,4,1,1,5,5\nmap_with_index 0,1,8,3,20\nselect 3,4,5\nreject 1,1\npartition 3+4+5 | 1+1\ntake/skip 3,1 1,5\ntake_while 3,1\nskip_while 4,1,5\nreduce 14\neach_with_index 0,1,2,3,4\neach_with_object 30,10,40,10,50\njoin 3-1-4-1-5\nincludes? true false\nmax?/max 5 5\nmin?/min 1 1\nsum/product 14 60\nsum of nothing 0\ntally 2\nsorted 1,1,3,4,5\nmax_by pear\ngroup_by pear,plum,kiwi\nindex_by fig\neach_slice 3+1 4+1 5\neach_cons 3+1 1+4 4+1 1+5\nchunk_while 3 1+4 1+5\nfirst(n) 3,1,4\ncompact_map 30,40,50\nfind_value big\naccumulate 0,3,4,8,9,14\nreduce? 14\nin_groups_of 3+1 4+1 5+0\nmin_by fig\nmax_of/min_of 4 3\nminmax 1,5\ntally_by 3\nsum_by 15\nzip 3pear 1fig 4plum 1kiwi\ncycle 1,2,1,2\nas a type 5 items / 4 items\n", "wasmStdout": "to_a 3,1,4,1,5\nsize 5\nempty? false true\nall? true\nany? true\nnone? true\none? true\ncount 2\nfind 4 nil\nindex 2 nil\nfirst?/first 3 3\nmap 6,2,8,2,10\nflat_map 3,3,1,1,4,4,1,1,5,5\nmap_with_index 0,1,8,3,20\nselect 3,4,5\nreject 1,1\npartition 3+4+5 | 1+1\ntake/skip 3,1 1,5\ntake_while 3,1\nskip_while 4,1,5\nreduce 14\neach_with_index 0,1,2,3,4\neach_with_object 30,10,40,10,50\njoin 3-1-4-1-5\nincludes? true false\nmax?/max 5 5\nmin?/min 1 1\nsum/product 14 60\nsum of nothing 0\ntally 2\nsorted 1,1,3,4,5\nmax_by pear\ngroup_by pear,plum,kiwi\nindex_by fig\neach_slice 3+1 4+1 5\neach_cons 3+1 1+4 4+1 1+5\nchunk_while 3 1+4 1+5\nfirst(n) 3,1,4\ncompact_map 30,40,50\nfind_value big\naccumulate 0,3,4,8,9,14\nreduce? 14\nin_groups_of 3+1 4+1 5+0\nmin_by fig\nmax_of/min_of 4 3\nminmax 1,5\ntally_by 3\nsum_by 15\nzip 3pear 1fig 4plum 1kiwi\ncycle 1,2,1,2\nas a type 5 items / 4 items\n", @@ -489,8 +489,8 @@ "path": "samples/iyi/config.iyi", "sourceSha256": "e1c60e92bb4150097bed4d7986dc678380776ef09fc95ff03b278746ff121c10", "wasm": "iyi-config.wasm", - "bytes": 175995, - "sha256": "ae5cc6635a089a05372b0ba1e2c5c29e487f7f625fba8e19933579080b412e79", + "bytes": 177376, + "sha256": "05857dcac41717b838f6759d649649fd76b56b6ca844daba07e794814b1b39c7", "exitCode": 0, "nativeStdout": "{\"name\" => \"iyi\", \"port\" => \"8080\", \"mode\" => \"fast\"}\n8081\nname, port, mode\nerror: line 2: no '=' in \"broken line\"\n[\"a\", \"\", \"b\"]\n[\"one\", \"two\"]\n\"padded\"\ntrue\n", "wasmStdout": "{\"name\" => \"iyi\", \"port\" => \"8080\", \"mode\" => \"fast\"}\n8081\nname, port, mode\nerror: line 2: no '=' in \"broken line\"\n[\"a\", \"\", \"b\"]\n[\"one\", \"two\"]\n\"padded\"\ntrue\n", @@ -503,8 +503,8 @@ "path": "samples/iyi/derive.iyi", "sourceSha256": "ab33030ac91db9cddf89e68f39e93fe96296f028f313e6e3c25afa76851aa32a", "wasm": "iyi-derive.wasm", - "bytes": 127243, - "sha256": "843198831452d7035c9f99138fb988ddd3adb33f32cd938db2f46b7f770666e4", + "bytes": 128268, + "sha256": "158451a926a6df41b90c175e6f8a6864386a9f26001a5fab8d1e88ee404dfedd", "exitCode": 0, "nativeStdout": "Point(@x=3 @y=4 )\nSpan(@from=1 @to=9 @label=range )\nTag(@label=Std::Derives::Name @count=2 )\n@label= \n", "wasmStdout": "Point(@x=3 @y=4 )\nSpan(@from=1 @to=9 @label=range )\nTag(@label=Std::Derives::Name @count=2 )\n@label= \n", @@ -517,8 +517,8 @@ "path": "samples/iyi/enums.iyi", "sourceSha256": "98b275c766e680a4adc21a3fc80c18b94e954317dd4668a4b303fcbeea8c0c5d", "wasm": "iyi-enums.wasm", - "bytes": 149063, - "sha256": "085e1a645d59ff3824ec459d635f35cd97ee9e66968b1a2d9d761e00f1f7f625", + "bytes": 151146, + "sha256": "61a95872438a7e5b64b38c0d2d03bec8dadea2d309c927af0ea5836a6b533418", "exitCode": 0, "nativeStdout": "level: Warn\nspelled: Error\nsame: true\nother: false\nverdict: loud\nwarn? true\nerror? false\nat least info: true\nbelow error: true\nDebug Info Warn Error \nnames: 4\nparsed: Error\nlenient: Warn\nunknown: nil\nvalue: 3\nfrom 1: Info\nfrom 9: nil\nmode: Read | Write\nread: true\nappend: false\nnone: None\nmasked: Write\nwarns: 2\nerrors: 1\n", "wasmStdout": "level: Warn\nspelled: Error\nsame: true\nother: false\nverdict: loud\nwarn? true\nerror? false\nat least info: true\nbelow error: true\nDebug Info Warn Error \nnames: 4\nparsed: Error\nlenient: Warn\nunknown: nil\nvalue: 3\nfrom 1: Info\nfrom 9: nil\nmode: Read | Write\nread: true\nappend: false\nnone: None\nmasked: Write\nwarns: 2\nerrors: 1\n", @@ -531,8 +531,8 @@ "path": "samples/iyi/errors.iyi", "sourceSha256": "89e937ddfc973d79b5f00c8ea3b81315a68b5c2c6cf4d1bac4172a3da1b79bd0", "wasm": "iyi-errors.wasm", - "bytes": 137637, - "sha256": "8b4619f04af492b2207666c584aded0fcdefabd8ef0d206e021d40b2354a4573", + "bytes": 138685, + "sha256": "568f8fd704e78223ce04ae518ea433b633c34de8620851cc9bd85012d8c8a353", "exitCode": 0, "nativeStdout": "read 12\nio: no such file: missing\nparse: not a number: twelve\nor: 12\nor: 0\nor: 0\nor: -1\npanic: 12\nsuccess:\n open outer\n open inner\n close inner\n close outer\n12\npropagating:\n open outer\n close outer\n-1\n iteration 0\n iteration 0 closed\n iteration 1\n iteration 1 closed\n", "wasmStdout": "read 12\nio: no such file: missing\nparse: not a number: twelve\nor: 12\nor: 0\nor: 0\nor: -1\npanic: 12\nsuccess:\n open outer\n open inner\n close inner\n close outer\n12\npropagating:\n open outer\n close outer\n-1\n iteration 0\n iteration 0 closed\n iteration 1\n iteration 1 closed\n", @@ -545,8 +545,8 @@ "path": "samples/iyi/files.iyi", "sourceSha256": "aaa45bbe135b26d2c882122da7a4fe69df4bcba517a6f8ed57ba0101eda8ba69", "wasm": "iyi-files.wasm", - "bytes": 124173, - "sha256": "36b49dd306972eded05da6ebc001ecbefc37901f09d4551941a495d3a22dff69", + "bytes": 125156, + "sha256": "2b85382b6a4182d4bade780067738aca23596bea2e6d9a1646a3f66e0158461a", "exitCode": 1, "nativeStdout": "hello from iyi\ntrue\nfalse\nfalse\n", "wasmStdout": "", @@ -559,8 +559,8 @@ "path": "samples/iyi/format.iyi", "sourceSha256": "54f6992a74d0bff957fed60b05e8bd9d7bb16b091ea1b79e8277acd7454128bb", "wasm": "iyi-format.wasm", - "bytes": 305987, - "sha256": "96b91976e60702adfaa6d826605ae10fcd3074504abbf28ccd4e7ad6893bef89", + "bytes": 308041, + "sha256": "147d0c42ecc035df2e8e50b0fd0452eb7a81478c36091d89bbc1da13361607ec", "exitCode": 0, "nativeStdout": "hello world\nchar 'A' (ascii 65)\nright ' hi'\nleft 'hi '\ndec: 255\nhex: ff\nHEX: 0XFF\noct: 0o377\nbin: 0b101\nplus: +42\nzero: 000042\nsign zero: +00042\nnegative zero: -00042\nint precision: 0007\nfloat precision: 3.14\nfloat precision: 3.1416\nstring precision: cin\nwider than field: 12345\nzero precision float: 4\nzero precision zero int: ' '\nmin int64: -9223372036854775808\nmax int64: 9223372036854775807\nString.format: answer = 42\npercent tuple: score = 0099\nprintf: run completed\n", "wasmStdout": "hello world\nchar 'A' (ascii 65)\nright ' hi'\nleft 'hi '\ndec: 255\nhex: ff\nHEX: 0XFF\noct: 0o377\nbin: 0b101\nplus: +42\nzero: 000042\nsign zero: +00042\nnegative zero: -00042\nint precision: 0007\nfloat precision: 3.14\nfloat precision: 3.1416\nstring precision: cin\nwider than field: 12345\nzero precision float: 4\nzero precision zero int: ' '\nmin int64: -9223372036854775808\nmax int64: 9223372036854775807\nString.format: answer = 42\npercent tuple: score = 0099\nprintf: run completed\n", @@ -573,8 +573,8 @@ "path": "samples/iyi/formatting.iyi", "sourceSha256": "ad90bbbd17da587770609673949d55c990aee356dda1d437ce23394231ec75ee", "wasm": "iyi-formatting.wasm", - "bytes": 142136, - "sha256": "ac72388d20522939cc55442459d112285825966672679c36f5e163e1b3660788", + "bytes": 143143, + "sha256": "bd023ab26162567aac8c0e688897d08812255bfd9e71d50e4b16a658389972e3", "exitCode": 0, "nativeStdout": "last 30\nfirst 10\nwritten 99\nchar o\nslice lo\nhex ff\nbin 101\nrjust ' ab'\nljust 'ab***'\nrep ababab\nnil nil\nmaybe 99\n", "wasmStdout": "last 30\nfirst 10\nwritten 99\nchar o\nslice lo\nhex ff\nbin 101\nrjust ' ab'\nljust 'ab***'\nrep ababab\nnil nil\nmaybe 99\n", @@ -587,8 +587,8 @@ "path": "samples/iyi/generics.iyi", "sourceSha256": "b3ec6ebe033571c8bedecdb4d00a5df97eeca44b709d94352066c8f215f4bbe1", "wasm": "iyi-generics.wasm", - "bytes": 142973, - "sha256": "601687dad67b1543438b59ac2df1fc1948f73aa2fa70af53ea3b592ed26f0659", + "bytes": 143824, + "sha256": "f50fbc70667358f6bd3117167fd7f901fe0f116b2b6fc21a9defdab12043ff01", "exitCode": 0, "nativeStdout": "Box(42)\nBox(hello)\nfirst=1, second=two\nBox(1)\nBox(two)\nfirst=3, second=four\nada, ada\n84\ntrue\n7\n", "wasmStdout": "Box(42)\nBox(hello)\nfirst=1, second=two\nBox(1)\nBox(two)\nfirst=3, second=four\nada, ada\n84\ntrue\n7\n", @@ -601,8 +601,8 @@ "path": "samples/iyi/grid.iyi", "sourceSha256": "2f28278d0111d0ecc5c45afa5c2de9841abb5ad5f0041417dc97caa4fbc5338f", "wasm": "iyi-grid.wasm", - "bytes": 184691, - "sha256": "2322c849d0c0de208abdce4d859241ecd39fa93082af7de9fb1ca31dbf94a99e", + "bytes": 187747, + "sha256": "ad676e5b372c5034175d09f58220bc40833acb96676b153cb95b3cc60fd7737f", "exitCode": 0, "nativeStdout": " 0 1 2 3\n 4 5 6 7\n 8 9 10 11\n 12 13 14 15\n120\n[0, 5, 10, 15]\n[0, 4, 8, 12]\n[5, 4, 3, 2, 1]\n[2, 4, 6, 8, 10]\n55\n[3, 1, 2]\n[{1, \"a\"}, {2, \"b\"}, {3, \"c\"}]\n2\na\n[\"b\", \"c\"]\n01234\n", "wasmStdout": " 0 1 2 3\n 4 5 6 7\n 8 9 10 11\n 12 13 14 15\n120\n[0, 5, 10, 15]\n[0, 4, 8, 12]\n[5, 4, 3, 2, 1]\n[2, 4, 6, 8, 10]\n55\n[3, 1, 2]\n[{1, \"a\"}, {2, \"b\"}, {3, \"c\"}]\n2\na\n[\"b\", \"c\"]\n01234\n", @@ -615,8 +615,8 @@ "path": "samples/iyi/hello.iyi", "sourceSha256": "27cdcc173bc626bf84c26f468628026979b15bc6127e67594c5adf2930483a83", "wasm": "iyi-hello.wasm", - "bytes": 129713, - "sha256": "1acbae015df99f4903adef5307879aba69198efcbc9eaa7bb3195222ec7e6477", + "bytes": 130696, + "sha256": "20965268d4cb996ccc46053610de0fc1ff5c2b0a8e616f234d50dac815137557", "exitCode": 0, "nativeStdout": "Hello, iyi!\nHELLO, IYI!\nBEEP 42\nHello, crystal!\nBEEP 7\n-> BEEP 9\n", "wasmStdout": "Hello, iyi!\nHELLO, IYI!\nBEEP 42\nHello, crystal!\nBEEP 7\n-> BEEP 9\n", @@ -629,8 +629,8 @@ "path": "samples/iyi/immutable.iyi", "sourceSha256": "ffdb52f45c0426a876e109c9e26862d43d4bbc7bca547612e8b31dc5a10e7b9a", "wasm": "iyi-immutable.wasm", - "bytes": 195488, - "sha256": "58c89ab0eefa139a7792c940bc20a14f2cd685300574b2029d04092713b9d4f5", + "bytes": 197267, + "sha256": "6b58efb5ee61baef3e766191b9e1705696c9f6d278b37546bf0d06df928af0f5", "exitCode": 0, "nativeStdout": "size 5\nempty? false true\nat 3 5\nappended 6 from 5, original 3,1,4,1,5\nconcatenated 3,1,4,1,5,7 / 5\ncopied list 2, source 3\nto_a 3,1,4,1,5\nall?/any? true true\nnone?/one? true true\ncount 2\nfind 4 nil\nindex 2 nil\nfirst?/first 3 3\nmap 6,2,8,2,10\nflat_map 3,3,1,1,4,4,1,1,5,5\nmap_with_index 0,1,8,3,20\nselect/reject 3,4,5 1,1\npartition 3+4+5 | 1+1\ntake/skip 3,1 1,5\ntake_while 3,1\nskip_while 4,1,5\nreduce 14\neach_with_object 30,10,40,10,50\njoin 3-1-4-1-5\nincludes? true false\nmax/min 5 1\nsum/product 14 60\ntally 2\nsorted 1,1,3,4,5\nmax_by pear\ngroup_by pear,plum,kiwi\ntwo elem types 4,2,5,2,6 / 4,3,4,4\n", "wasmStdout": "size 5\nempty? false true\nat 3 5\nappended 6 from 5, original 3,1,4,1,5\nconcatenated 3,1,4,1,5,7 / 5\ncopied list 2, source 3\nto_a 3,1,4,1,5\nall?/any? true true\nnone?/one? true true\ncount 2\nfind 4 nil\nindex 2 nil\nfirst?/first 3 3\nmap 6,2,8,2,10\nflat_map 3,3,1,1,4,4,1,1,5,5\nmap_with_index 0,1,8,3,20\nselect/reject 3,4,5 1,1\npartition 3+4+5 | 1+1\ntake/skip 3,1 1,5\ntake_while 3,1\nskip_while 4,1,5\nreduce 14\neach_with_object 30,10,40,10,50\njoin 3-1-4-1-5\nincludes? true false\nmax/min 5 1\nsum/product 14 60\ntally 2\nsorted 1,1,3,4,5\nmax_by pear\ngroup_by pear,plum,kiwi\ntwo elem types 4,2,5,2,6 / 4,3,4,4\n", @@ -641,10 +641,10 @@ "id": "iyi/init_order", "set": "iyi", "path": "samples/iyi/init_order.iyi", - "sourceSha256": "8ed472b93db73e226edb292e1bcae123ae6bcaa67dfae2307107a20028525521", + "sourceSha256": "0eee830465aeffb6ce0cabe6230e1c8dd87b37458bb42f9ba9b567721dcdc340", "wasm": "iyi-init_order.wasm", - "bytes": 123772, - "sha256": "185d364aa2311cbda4c14add19b531eace60c1e336a3d64c85205f62a7858d8b", + "bytes": 124809, + "sha256": "c71d26e6e1579dd29cd5b44976cf9a6015ab83e04dd164075fa1fbc294707842", "exitCode": 0, "nativeStdout": "1. boot/config\n2. boot/registry, above its own `import` line\n3. boot/registry, below it\n4. samples/init_order, above its own `import` lines\n5. Hello, iyi.\n", "wasmStdout": "1. boot/config\n2. boot/registry, above its own `import` line\n3. boot/registry, below it\n4. samples/init_order, above its own `import` lines\n5. Hello, iyi.\n", @@ -657,8 +657,8 @@ "path": "samples/iyi/inventory.iyi", "sourceSha256": "8d17a1ab3590cbe103b0eedb8487c9df8cc2837e0b84b26a3c8abbe353af80d6", "wasm": "iyi-inventory.wasm", - "bytes": 215622, - "sha256": "0c81eccc6cf69bb58eb5f1d6c6c98f97ff7d00151f9022276a728c2761d8647c", + "bytes": 218027, + "sha256": "539236d4dd652a76671806850aec414c540083d9f1b21d90037981853f0501c1", "exitCode": 0, "nativeStdout": "total: 11.0\ncheap: apple, pear\n2\ntrue\ntrue\nmelon\npear\n3.0\nnil\n1. apple 10 5.0\n2. pear 4 3.0\n3. melon 1 3.0\n[\"apple\", \"pear\", \"melon\"]\n15\npear\n", "wasmStdout": "total: 11.0\ncheap: apple, pear\n2\ntrue\ntrue\nmelon\npear\n3.0\nnil\n1. apple 10 5.0\n2. pear 4 3.0\n3. melon 1 3.0\n[\"apple\", \"pear\", \"melon\"]\n15\npear\n", @@ -671,8 +671,8 @@ "path": "samples/iyi/io.iyi", "sourceSha256": "8878852be923dc681f060baf0ae863e04a30e87f123498813c37738c2c97d41f", "wasm": "iyi-io.wasm", - "bytes": 130653, - "sha256": "463ed1f747c8f509297ef35a5a6e6fb67e089a00464c0b6450f2f523203c530f", + "bytes": 131609, + "sha256": "5836629d0d408e7d5e0763d25608c69c95fd72fa14499f8bd2f9246ffbc2a75b", "exitCode": 0, "nativeStdout": "no lines read from standard input\n", "wasmStdout": "no lines read from standard input\n", @@ -685,8 +685,8 @@ "path": "samples/iyi/modules.iyi", "sourceSha256": "f4ea9f6e29e18cf9452eccc75ba8324c25d108f825b64765f44335c22c57e0be", "wasm": "iyi-modules.wasm", - "bytes": 125729, - "sha256": "b150d37a31db7df338514312ddeafdcc8c08f90bc5f0120def3b7b08a7cb0774", + "bytes": 126751, + "sha256": "3f62b81809aab9324b80610bef0d02d4deeeb9aeea7b33b66679e94d7b952d37", "exitCode": 0, "nativeStdout": "HELLO, IYI. Good day, iyi.\nfriend\nesteemed colleague\n", "wasmStdout": "HELLO, IYI. Good day, iyi.\nfriend\nesteemed colleague\n", @@ -699,8 +699,8 @@ "path": "samples/iyi/sessions.iyi", "sourceSha256": "d33fc3528bffdd710b785425e5b0559e606c53184c2234774d56fc7d9f2f55c9", "wasm": "iyi-sessions.wasm", - "bytes": 138729, - "sha256": "2aa3e82d9ae07300b532c328d8907507262da5cf162957b6e9d919d2b5bbbe26", + "bytes": 139540, + "sha256": "a727d57d37d0fef94b9250d39c4d9d417292225cc27704badf6fb3f74ccf49f6", "exitCode": 0, "nativeStdout": "three arrivals:\n ada since tick 1\n linus since tick 2\n grace since tick 3\n (3 signed in)\nlinus left, had been in since tick 2\n ada since tick 1\n grace since tick 3\n (2 signed in)\nnobody named bob: true\nlinus is back:\n ada since tick 1\n grace since tick 3\n linus since tick 4\n (3 signed in)\n ada since tick 1\n grace since tick 3\n linus since tick 4\n (3 signed in)\n", "wasmStdout": "three arrivals:\n ada since tick 1\n linus since tick 2\n grace since tick 3\n (3 signed in)\nlinus left, had been in since tick 2\n ada since tick 1\n grace since tick 3\n (2 signed in)\nnobody named bob: true\nlinus is back:\n ada since tick 1\n grace since tick 3\n linus since tick 4\n (3 signed in)\n ada since tick 1\n grace since tick 3\n linus since tick 4\n (3 signed in)\n", @@ -713,8 +713,8 @@ "path": "samples/iyi/shapes.iyi", "sourceSha256": "e3e4ca261b7f764ce2a168163c6da93909efc63d663fb1828f7b6d5a79b9f805", "wasm": "iyi-shapes.wasm", - "bytes": 194621, - "sha256": "ce5153b0d7d47987f25f4a8ae9d69abc090349c2d4ef12c7e240e671c3755e1e", + "bytes": 197147, + "sha256": "83afd9d2684181460bb4598b5fadd232bb9dfcdd995ea80fecc996544a847725", "exitCode": 0, "nativeStdout": "circle: 3.14\nrect: 6.0\n9.1\nrect\n[12, nil, 7, -3]\n16\n[12, 7, 3]\n1024\n0.25\n1099511627776\n128\n8\n", "wasmStdout": "circle: 3.14\nrect: 6.0\n9.1\nrect\n[12, nil, 7, -3]\n16\n[12, 7, 3]\n1024\n0.25\n1099511627776\n128\n8\n", @@ -727,8 +727,8 @@ "path": "samples/iyi/socket.iyi", "sourceSha256": "afb4e7913d7b5c01a6e3ba5f42b3945e6ede3a374552325d07fa51ac25fa43e3", "wasm": "iyi-socket.wasm", - "bytes": 322516, - "sha256": "a3da1ba9191916a504945d30afe72c50f3358a1bce634cae2c8d908bb6d1d4fd", + "bytes": 413767, + "sha256": "f73737f8d2b26b4f39b4eedd2958fb3b16648bd979191fc517b8075b7777d26d", "exitCode": 1, "nativeStdout": "server listening on an ephemeral port\nserver received: hello from client\nclient received: hello from server\nclosed\n", "wasmStdout": "", @@ -741,8 +741,8 @@ "path": "samples/iyi/std_iterator.iyi", "sourceSha256": "fdfedfc80d758e3490725c1fc6ebaa5648f5066854a28ccf1eb8cdb90b872fc8", "wasm": "iyi-std_iterator.wasm", - "bytes": 205324, - "sha256": "bb9096be2d7a41cf41fdc3145b94da1610154ed4088a4fd69c9e492ea33180b4", + "bytes": 208688, + "sha256": "92e59ce82a781f1fab12b70d2c721393e9aa4efaebf613fd9aa5a713722799c8", "exitCode": 0, "nativeStdout": "natural numbers first 5: [1, 2, 3, 4, 5]\npulls from generator: 5\neven squares first 4: [4, 16, 36, 64]\npulls for 4 matches: 8\nchained odds and evens: [1, 3, 5, 2, 4, 6]\nzipped pairs: [{\"apple\", 100}, {\"banana\", 95}, {\"cherry\", 88}]\neach_slice(3): [[1, 2, 3], [4, 5, 6], [7]]\neach_cons(3): [[10, 20, 30], [20, 30, 40], [30, 40, 50]]\nstepped by 2: [0, 20, 40, 60]\ncycled 2 times: [\"tick\", \"tock\", \"tick\", \"tock\"]\nwith_index(1): [{\"alpha\", 1}, {\"beta\", 2}, {\"gamma\", 3}]\nreduce sum: 100\nfirst > 10: 12\n", "wasmStdout": "natural numbers first 5: [1, 2, 3, 4, 5]\npulls from generator: 5\neven squares first 4: [4, 16, 36, 64]\npulls for 4 matches: 8\nchained odds and evens: [1, 3, 5, 2, 4, 6]\nzipped pairs: [{\"apple\", 100}, {\"banana\", 95}, {\"cherry\", 88}]\neach_slice(3): [[1, 2, 3], [4, 5, 6], [7]]\neach_cons(3): [[10, 20, 30], [20, 30, 40], [30, 40, 50]]\nstepped by 2: [0, 20, 40, 60]\ncycled 2 times: [\"tick\", \"tock\", \"tick\", \"tock\"]\nwith_index(1): [{\"alpha\", 1}, {\"beta\", 2}, {\"gamma\", 3}]\nreduce sum: 100\nfirst > 10: 12\n", @@ -755,8 +755,8 @@ "path": "samples/iyi/std_text.iyi", "sourceSha256": "c891f86fe35a876e7f8279c549a0d16a39f38715593fae69a4ca387cb6468276", "wasm": "iyi-std_text.wasm", - "bytes": 192507, - "sha256": "e5fea273a1e34bac60159c4b2a34021a5c6c06ede16af753e7496d00401483ac", + "bytes": 195805, + "sha256": "04241460a6d66a0766649a2f142d813f82856387e40cf1ae9035bf3972dd9c4d", "exitCode": 0, "nativeStdout": "cleaned line: 'GET /api/v1/users HTTP/1.1'\nHTTP method: GET, path: /api/v1/users, version: HTTP/1.1\nHeader 'Authorization' = 'Bearer token123'\nslug: hello-world-this-is-iyi-std-text-\ngreeting size: 11 characters, 12 bytes\nreversed greeting: dlrow olléh\nhex 'ff' to decimal: 255\n", "wasmStdout": "cleaned line: 'GET /api/v1/users HTTP/1.1'\nHTTP method: GET, path: /api/v1/users, version: HTTP/1.1\nHeader 'Authorization' = 'Bearer token123'\nslug: hello-world-this-is-iyi-std-text-\ngreeting size: 11 characters, 12 bytes\nreversed greeting: dlrow olléh\nhex 'ff' to decimal: 255\n", @@ -769,8 +769,8 @@ "path": "samples/iyi/std_time.iyi", "sourceSha256": "82a17d942f25fe20e124340ce9245293d280594fc4e07ee5a4e82dee62dd3620", "wasm": "iyi-std_time.wasm", - "bytes": 272786, - "sha256": "78a8553c63c8622d6d613ca92513ad0e54c26e1f46921de34c62e43992324808", + "bytes": 275376, + "sha256": "0a094095f5727d4557ada435e75dd3bf9cc041500621f24f85ad21b678d4986f", "exitCode": 0, "nativeStdout": "Reference time (UTC): 2024-02-29 12:30:45 UTC\nRFC 3339: 2024-02-29T12:30:45.123Z\nUnix timestamp: 1709209845 s (1709209845123 ms)\nYear: 2024\nMonth: 2\nDay: 29\nDay of week: Thursday\nDay of year: 60\nTomorrow: 2024-03-01T12:30:45Z\nYesterday: 2024-02-28T12:30:45Z\nLive wall clock valid: true\nMonotonic duration >= 0: true\nLeap day event: 2024-02-29 12:00:00 UTC\nIs leap year: true\n", "wasmStdout": "Reference time (UTC): 2024-02-29 12:30:45 UTC\nRFC 3339: 2024-02-29T12:30:45.123Z\nUnix timestamp: 1709209845 s (1709209845123 ms)\nYear: 2024\nMonth: 2\nDay: 29\nDay of week: Thursday\nDay of year: 60\nTomorrow: 2024-03-01T12:30:45Z\nYesterday: 2024-02-28T12:30:45Z\nLive wall clock valid: true\nMonotonic duration >= 0: true\nLeap day event: 2024-02-29 12:00:00 UTC\nIs leap year: true\n", @@ -783,8 +783,8 @@ "path": "samples/iyi/visited.iyi", "sourceSha256": "987608a702df760c9cb5f3c0c85a5f621553fda885504892acb2fbb67d57d744", "wasm": "iyi-visited.wasm", - "bytes": 174911, - "sha256": "1dc4239ebdc57a7089107ab86ab68aa3c0eda49181a24a5a03a291f29825ecf8", + "bytes": 176116, + "sha256": "096c6ee3b3198ec711291e770e4eb6c44dcdf808b9b095c067e6d58a6e1145ba", "exitCode": 0, "nativeStdout": "Set{\"home\", \"docs\", \"blog\", \"install\", \"about\"}\n5\nfalse\nSet{\"install\"}\nSet{\"orphan\"}\ntrue\nfalse\ntrue\ntrue\n[\"the\", \"cat\", \"and\", \"dog\", \"bird\"]\n", "wasmStdout": "Set{\"home\", \"docs\", \"blog\", \"install\", \"about\"}\n5\nfalse\nSet{\"install\"}\nSet{\"orphan\"}\ntrue\nfalse\ntrue\ntrue\n[\"the\", \"cat\", \"and\", \"dog\", \"bird\"]\n", @@ -797,8 +797,8 @@ "path": "samples/iyi/webapp.iyi", "sourceSha256": "5bba5cdefa6407b2fe87e8c84bfdcf195bf02177193fbaea3e646c143018f296", "wasm": "iyi-webapp.wasm", - "bytes": 166939, - "sha256": "e0e334dd8a7912b996e2957bfbee8b0222c5c29c1f901f73eef7951eebb83e99", + "bytes": 171353, + "sha256": "f02d415451f16bed548312611374d917535ea7414bb670ce250c3d75f8827592", "exitCode": 0, "nativeStdout": "GET /\nGET /users\nPOST /users\nGET /count\nGET /v1\nGET /v1/admin/dashboard\n1|42|0\n", "wasmStdout": "GET /\nGET /users\nPOST /users\nGET /count\nGET /v1\nGET /v1/admin/dashboard\n1|42|0\n", @@ -827,6 +827,16 @@ "exitCode": 0, "nativeStdout": "150\n" }, + { + "id": "iyi/cores", + "set": "iyi", + "path": "samples/iyi/cores.iyi", + "sourceSha256": "0f5c2670ab8af0eb23c403e053464e75c0fa2e4d053d556ac8c52331d526bc14", + "refusal": "Error: std/system_roots reads the operating system's trusted roots, and this target has none: Linux, darwin and Windows do.", + "reason": "A server on every core has no wasm32-wasi build to run. The program imports std/http, whose TLS reads the operating system's trusted roots through std/system_roots, and that module refuses to compile for a target with none; and its tasks, like every task, do not compile on wasm32 yet (SPEC.md III.4.8).", + "exitCode": 0, + "nativeStdout": "[0, 1, 7]\n350\nhello from every core\n2\n[\"/\", \"/stop\"]\n" + }, { "id": "iyi/workers", "set": "iyi", diff --git a/records/wasm/methods.wasm b/records/wasm/methods.wasm index faa22f85ed751ab855e102182979d7136cf1f91a..f16fbf4d9566cad5957472254f439df9ed49ea6e 100755 GIT binary patch delta 39630 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 J;W3}B2km`d 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 UiTvURc=V-QZuRr)JCC#Y4|30la{vGU diff --git a/records/wasm/modules.wasm b/records/wasm/modules.wasm index 2e03712a1cf68bbca6b9782d7c44cf38f3a9302b..0cf747ac167b869ab32871bafa60f1595183fadd 100755 GIT binary patch delta 34660 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 UYFBCPym{ANvv0!Za)S2%03dj9@c;k- diff --git a/records/wasm/nil.wasm b/records/wasm/nil.wasm index b42d2b7d331f67376e6c093af05243a194c9dca1..e60c633bb5d6b65d285d1f2816f437a0bf749086 100755 GIT binary patch delta 34476 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 nD|FzHfXyyL^!nVb7 delta 33670 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 ZRWlaNz1A_SX5PH(uWNk$GciH^e*nzraI^pb diff --git a/records/wasm/ranges.wasm b/records/wasm/ranges.wasm index 6455e66bca823e88c33c2b110de1bee11a71dbf5..8cc93c2549e4958c837f7031f02523c6928fa59e 100755 GIT binary patch delta 39452 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 delta 38046 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 Yr&Y|}%&gO^=ge97;J)G(@-6cJ1DWy7X#fBK diff --git a/records/wasm/returns.wasm b/records/wasm/returns.wasm index cf9d1a5cf8e554f516438124a124dd27410b832a..7dff27f72f103a030a3ef680c308c26e78deb4d7 100755 GIT binary patch delta 35021 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 z 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 delta 34538 zcmb`w33wF6_6OS4JzF+1Stbi1$z&2B1V~szSV9=~MFPk!7ehz_Bm@$&u(&V*K>?Mm zkw!qmb_E3yMa2uU2`VBeDuT;ZQBV;Capx-P`<<%po(byzec$_Dw7RR#Id$sP*{Z5% zrg`#${qv9PyZf;w_uMVZHW`0*#p1BpWLr>>BHM#QLc<)5)DkvGeTJpCJiXHr;*-1* zT~0Qq>-*_+WpvSzr(03uA=M)1`jVUl1=9*krxz4fO)jF#OerPE&Zq+$7`*nle77ux z+|HO!?jiR`omW>^CwZ4|!?i43mcpb45HHJ?CFcU7asEu#6v_Dq-Q7|c3lEW`5Vz#~ zl>kzRW@k-&sdegMIi=Mq;+LWbUMUv0#jTXNCGc`vylePaZsLsA`fX~M;*mFQQ`;&r zjkgM%9f-q=z@n^7P;K9)76QG~k3PLP0KI#gx<3j=6j``uI)hNsN@^y8O-8z}c$G54Kw$}3LZEC%3puBy%dd1e5ZgzXVd|0$_ ztG0Wcn@Ke^1;x$WvU7`i%swdSGoe7|=W3jzUFvleBtlVS05@}fEjl^ea=Pq5`?5OC zaku*$0gWbTv=_Xn-6xEN${}vqdwQwr2$tDzw+BF_H>+BYOMqHbA39*?Vcg|v>?_!sDlA+3Ed4qPlG zl!dsJ))HzV;`2jpdsUsRu&KGJjC4%*W>1cu55vVyn$m3V<};Kp?;!THz*V%jxRiura7D&MzD;;lq1}cCR-;bbUQ(DowEmX;^e%h4sf+6dFHxeqCVw9Gw*4hRjBi)YJF6j zzn@HFRf%cMcB^e;nzA}|bW92A2T)(GUWmyPaQXZSbztlV>`65(?tZpI{d8um`f}W2 z_LO>CyhlbpsEk)rp5%if4M@&id~z1#lR%)F*0|n#_?7^Bnv=?uvS61kl5ixdlZhnn z`CI7!ty&T?AXQdEHVvE`9j7SX1?v2S$Ji&TyGcK`Q=QUe75m?w-<#Aj%272*--mN4 zvgJBP>B;$|TATcOl#tQwR?_8r=u+w2r4DoFqRXD;?pGNxALH4=cBwZ#bJ?yvccu^0Aym*rw?uWE0b6!9XdHd`J67qXl$@~TuNU;-0n__ z~kV9D{h;!`rbvOA+^lyirg+~E$0eOHIf*h>L?QnK8c?yMHz zbwEATp$~?)cASChtd5;Yl#X8e0TRRclKQ`nw_&8d*^dK$HJfM(I(5QT>*OWMzY%(6 zPM3x&ca!0#eLII)OX)5{MyWqOGdk-uAyb#%e!Tkt@teWczV2GCD}jhla1S+$i63Jwn+WBfAh$f^|(WB>!e`$ zcOF$^2BffKYR-VCvd;&|2B}8r(I~f2(o^i-K&;!2fw+HQl!SpDd%WMU>xh&f5z#^5 zfqwdAL5BpM^c#o)h`K7^V!4iHrC|+!isBH32Qj`JtLW zbU^$^G#J*+P$k5h7VP5gV6>R^xi-uupK!y}bt4nIrqFzuq1Z`(G|5 zk0iI0F86jzFsJil)iZn;9IIw{PVj!gJI=dEePMVvAxuh3ePi9q-OAmv%-w=SYvrv| z!$-7+(77WL9B)xK@0#uEgb^KO+_Vui_{@<@!PYvelfl*jwtYu+)!Fva+4gq#cK0fC zdx>ptu-!1K71+KpDuC^^Q5}eF+UOpAbP1iIQb>pkJFfuay2<+C1PwH~4(0pKQzU12 zNFVj>nkMSdDM8`10e+W&&>(Z3Q9m9%kDXHs#xf_4P3=6S#BfZU~e1G{V6P z^M{Y^OI|Q~Y!dCsXN_HpK9P3}!?pO1Zn$o`ql~?;hK}2S`i^m3+5SCWjoZo4ST%kl zJF9+G;AW@xjJk6*l%ikO6>PcC5`?$^=@46 zE-!$sJ}P&Ut!_@+hQ`+E%h1@

  • at3cVs| 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 delta 38647 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 K4;CbOIn~`Wpg!+?zTf*stE=j4b?Tf`r>c8q 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 delta 35218 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 diff --git a/records/wasm/types.wasm b/records/wasm/types.wasm index b343fa9d0cf85ec15dc43abb1b20e614ee799da5..497c8d33e4b2fdd74eef74f3d8062861ca00330e 100755 GIT binary patch delta 39384 zcmbTf33wF6)<4`;J(EoK$udLsOcIt5AndCw89><-*>?yb36KyH$ikw?ghfS^wUq_| z1B%Kfivfa&2;zc>f{KEQiVBK|67cHvUPZp&sp_5?P~YeNzdX-#}(pAFizjH%n$7HuV~&jSLqeXOr`lil64>Lp8vM{z53`J**m7qz7;ql-bT>PVG? zt+koFv!}5=CueGIVM$JI*`z$W%ut#J1u~Lg<6X_% zuamx1Rq9H$xGXNU$fZD+%i=yJ+H#R*)K1iB9yQH#N+JV+*{}$*MMaW)+J`^vk3Z|f z*ZJem`S7P6@zZnOhp$`ghrb~49%^{kqke=-K7p#o{P0(N_znK}Iv@V9KmK1ne4Q6> ze^_`FhQqHgvr4PBbo10bVYCB(xfiXX3P!{ZtKe^o`}{f+13dz>XuXM9Vqi9VF-r~1 zF)wDBfw|_E_YLE7dwJ$rXWd|hSIws&=Rwv4J+OdGP zK`#hRihYN+JFtbf_Ajcj7qkRhoHigZ#f$&-7OsEaQu|Fyw{>NQwVyH@@a0cwkJ$35 zVrzhFOi)X&ivMW+gOa1oX8%jgM})l1Sg=+#K3+Q?XS4Ba7YjoilP0!7I~nwP-0}@z zlMz_twiUTl`x**V#QOH&J6Y;}((-&nNC;xtzE-M?M%m4}A5*$3_WfE^=(FtAn*E{k zS(p*x-I&#bHhP6O2tE81#EXhBF3+9RW`(!!wS4t0&DoEUN~jih_bwVvpD_lNxp&c$PItNJ{{4Fy`!CqNXn~v@>U6H6Ekeu@V8WM zKS7rNUv`JGkP!R3f@_;Lz}}Ia*B09o*ahu5`xMJIm4#^G(Xqkpcp~OKZ^vV`ZjmFB z>}U-+!3vzU9gl&dLyJ-aPzz|s?b_k&HqovCq9_>3AUB(SXPDv&&=R8hdJM^6@Iq-Q zBom8LLr@E8$8G8JNo_MlNey)?sbQ{A_f0n46-L)yso|93T;WoiT_;Ym-4#NLs3C*o z3UM<#d|pNQ%#A!%ALHsOst-(+qFJJ=*#4RaquW`Wut{+-`)0yNgc!Alv{&Lc5_M(swdtGld5LMD>ZW;mEdBT;Ztq$|qXkW}un zgX5HF&}h!SPRogF-Q+jQRjEdprZN|E$qaN_bd9;I_K;T6b{bvo5PVBllUfRKBgVlL z5t2aDY58rDzmt?jggnidYR+D*G(M`u?K4F7Np*3T3U9j9R11dA#ZoO8BA3O!TiYEU z7kRtTZtb)9F6>1uE+HA$4hb)@8tr;Q%TO4O!BNQcy;}3clw^ru0wHKT1C8K}Q*ACAsSAQS+mzH`SCA`MsDreaSTF+ffF_>3 zn#{#y2u=-!*M+9kP~r=v_>%gzKVRfxLNk?MuwwMGsW3iFpi;vTYfA6b2v?XZyeQS~ zia_**p%0NzW=DW))ea{Ou(mw;J@%58lTySE)ErN7F!r)`-jy7AkSuA(hai$I8GMNS z6)hq)n;p^yq_)6yUTP|PReL7&ZY&sesXf>ctxZ}7T&Jepf$NsEgwWSWo+iC}^B(O~ z+8xoGDTs|Ib-CKBiv6gToIV_CW~Aq()ZG@XB2H2>-Q1PgJ=*@d_FMWW_J%gNepbEJ zetJ@yyRux(8$;I-ZFT)S(exMfr{g-HK}TE{H*g0YAv5fUwGSHHjh0dxJ_r1p4T+~i zqxQH?YvjiDF9v_osMDGtC@rjI)#M-EFHebF+D{R~y z?QC!S8+%iGHnTU}CKk+^m?j^ve^3<$RbfJvwb@#9eq*y{d;@&hEC!k`HY2+mWp%=J zLRL1e&tw(jYHv=x>fPMkK=fQhI5T3~0!LwCyk%r|G{3E*O+`m*es8|dO6J$JZHHUU z4{eWg?fbT&+K~>4Q6G~}Q#rzsw^wbLWM{Oi9a6DhiR{>$y`_!n_&9rByV~(R>i4Ui z5@VP9jhHJC`bAhk`Olr&QX83fq_9(3-#ZeiG8wnc>$HdNSO|q7ofA5p^^^9k7OcCv zC^gW1o`|V78CIBKK`v}Ks0l1(m$dPnUt@c;^ezvv*R`!(Hn8`!eqGbhR7uyzQz2M| z4$$m5Df(l<`r?n&(z{i=58t-PpEA0R)B>k=QbL4-sZ7hJ;y!;H|J$0Hoyp$Uva;JH zpQ6o0DmQFZF%LQAbYvUVy=bjAKYJbfuqMUL89S||b^kd+7}JhdVXni+d$jsJ-j0^0 zx@d~eq02P;$(233u+ueNd%nfcvw*ucv6I@iyXLZ!HJQBvm?6;LUqI{88xq>Q-YX#x z(`Oq54)#u$K0n;6+>r~CczKp?l5B1A;$~Nt{xo73wQ`rYv$=&lKJCf=D{*ahuYV%9$V6T<;of%{h%E-*iwRIQ5Zld~=LYU!@gI>}F>1(!3_;pm z87@8QKCe{_#twC@ws!DQ3}ViZSf_s;0dGV|wBp`Xqb(WIBIXlP6L0^NZuZaU>OQ5t zKV*{q9F@B(_Rj_G@E)!A(3Tvx`-k2U_>#f*%FuMIDPIk375F7#?B})kVWVSzqX09q z7Fru(*j1-388!kNi*JYZVn1qG!@J>HGQ2r_@zn61jP25(Eonc=Vy8;s$lb^MYKr|Q zEq!Dkc2%1?vL5o%gCjfQ`s&DXTw9O&0@tX~6}a{r*IPR|I~kT1zxRxVaCv1(!R;< zg^_MDAq5$x--NXg_-?{LTs!7<#&t$s5xb&&mG>0NRrz<|N#tPuc7{sf#0~7Sc5t$b zeO1$B(sE{2w9hBs6DYfNN^4oz8FQ$la3K3yJ6xC&B=AVO7qm--^Pyx)(Og_F7Zt&g zL#OlzyeJ%fNvodHBuXT+BEKj*tDT#Ipj=rz750`Cw|0q6r3M>r7W?TUmyO)au!TU{ zJW|{X%?C~Gg7u=;)J%w#P2G)d)-TzN>$@ch_5L=UVxHYBNpcFB$VmxMn9zykjCBHOJkk8MX4#J@M!@#sYAYsVzB=grerJoXZwKTo@RNgL;U;xagL z1V;{WtXgtkjz4LlAWZ~GD4j(T;&PDL1z)Hd;^wK7Xg|zSCxy6%yCz8jaaOTZOi0({ zc6>iJUKt!hFtv1PK3Vb6(oBvP*)oS|@+>^b2$QFyRmC-(3~I5=L0r9-b;?*kHlQJ5 zTF6q%p}D*r-_BhqW$?#IHyG>-v@OdL1I_XYzw*^($!wt(zI<-a2Z^(Lu>B#rlk^)(oQX(k>FF{uWc4pwA>Xr&HoR&Pvt@}RM7c|c6Eh=Ez+zj zHMX#3&C0u2ePK~M-kF;2j2)ISIHF1yvZO|R+{4&SZNU>q*+W{dRio;ix-Eh>F&dz{ zn*FQ#Ti9YPaP29+xkmeBZF0Rw$&B{ua_(yD-Y!n%Xw$W)CVX8t#var9udf&Pm}IGA z^t91f#Zcn9oZBC(nY+FxXG^rB)f!t;GkilHV@qpZ-ngIRR>3Tzw#MWbv~2}!KV&&VY+ti&>D!(cy%TK16-Vir*|Zl%Auk%!HzwT7=%uw~lX*L1e0ruEUI zR(SZ|$NDw#yJ4M4$o;*b}NG_|^{&<%`E2$6U zZxxBZyK51x0pv4!EON6V96aFYp*Ifj#HoW_oH>|>7%hy2Fe1cz1fjTsYu-A(o57Q_ zPb9*_t4^$fhnu~dh4Pqp-(-*1q`!wyUa2)Yxdhj}C!c`3`<-eW_@oGnUE2MpQUcc+ z<&CE@*a_|Uslj-tNPfRBo;C{K&kPr<9OYYNNSrKfe7_!hN_*-3_ANKlIa(SIQ+T!; zeYmurswxhemF}MQ{9jZ>v8swbAvvtH=U24U58^z6%?(OB{)c3t;t49!S;`^^RlT&Z zO6e1Z&`+h~A}?x+`xBrcnu?aZGL#6Rc6j}S@J%`9Wg!4Qk3TNh_>Rx_};&fsaXC<3A&A- zTW1sz*d!nVV5wYQ}nQVc(2ywbP@+)%;~%M z>b=^g)6GpfVw>paPp1%_eROZQ6vVSW;$YKWZQMtxM49(d=gdupHE_*pDu#xI5YyvS zP7A&>jJbj*yLpBCaIN;;M;;8HHu>WRLDsH*Jd6X`>&)wP3p<-jMoc@~m{``HEsYY| z(k!k(5fP%<#7`!s2{ar5pNOW>6tgq* zrrtpD+|T0KR&C8^^>ID)SqE$||1HXi=aPWwbgpeiiD$ma~yo<$PSh4_h!aJ#=qA95Qjrh_?8VY)F-an?i=l+N=4Z)I?Kz#kp(ecBp5yQvbsIid7UX{%1oE?X z@A=VD#*DX^1B>Z?@O%Qz`cKZ6*$?CM0s0(A4mxJ@=&w>}QqTG7Syrv3ecdif^q!`# z2o?$qt?28dFw-gU4=|5^oys5EtJQv;OgZ4p*9}O=pI^V;{I9K}y)>&E$8c_SMn#&6 zbA9vyITry9o34FRMj8q()F%y(UN}Rw{EO*Sd*tGg+w<3mZ;kxr(3XGe3Nv#U1{FEz zm2Zbm6a$7FO>G#%M@t%|7Z`$ZOhfjSWqd&4X0XB-RWVD1La(@?p2S7=GQ`o;tnUW! z{d=|J-z7#YC&li$uE3eoMUQ^@t{csrc9$Nat{l3Q6d_V7I2duDUzaa!GDiv1Q;q~& zvEh3$O0RtH9VO-+rEZtSD2=~-m~GTjf9OXol>CrDDgDtO(#VvZKln_s8m4%DO4fe+ z;c4>Cx+^WooRe34=2#4Ke!sG;k)PY}4F^&4cbig_hWMfh^JDbAhL5o2qWyu9)~P56 z5i~IXG#gvgt zW&mWk3~)S$(f34Xu8KIvm|L&C94+@co}x77_P7`hh<5GOKD^c&o3_O3&DdtG@Aa1K zIc?7MIL~^qgkVjONh2j%>d%Y%i^b3F!3Th7rUDz?EmAi&E#ZoN8&%{r zB;>s&=z5hcWOEY*e+&?0K&w`53i8{xnV6^j`{yJ}%VsTFX|ex$*^lgdgfOY)l+&Ms^=v!eNo7Fn%YWVL8s zUX}-DIqvMFjtgB5m#OuA0|= zKh4~2AwlrJNJ;alN6iaMvv7l4O3hn0Qh3u&C=&cHYV;LjxN~nTwgz#VTZhDM4p5X? z6#yu>WWeWRyVN{0&2z$NtzOqjGE5S$ijmG_5z8J_{87Aw9hul3s4ys~s#OnZ~QBO;MHwD+*UyREzM! z1zXdbkh$n!4M{f4Df`;QDMQP=7dmCzyPZ<^=T0`2`0uVKef>~9mMPj8j_Cas@HcI| z2Og67uW@e}YuG;?Hsu9-$8%aNYfOA=jr*J6qx$t&IljH)WWB<;Z!qpBjQelKy?(sp z8xSx1R1(iJQpgXd!W8Ana79s-Nac1%>@|eGGVWmsQc1@IsbsiO-+9~pGlTx01nDSu zqU6sp?hhFEwYZBx(;^h*=Lo%}T~3}eiLxCvNjkJklB^dR_a}_|5##=&agR%ue0Li6 z>B+KP9LB6e-_2MYcQDsIM{ZZy5J$#y!bp4BE;VMfpBP ze?Q!qlvF<<>lx(a&8TkySdEh zqj3*uEA_N*3%`JGx~$i(Z_B<7vOI82QS`66v3Sceqtscy*^MRF;Uga!-P&DjoEaK`cFKeypNA0t|}}{ZXY| zi+VUt!5);D67?N}@afQG{n{Yb#j_Dp&7vFz-ojqDQ#q`jqGUrR6pGD1J_@D#&|}Mw z3a=iDv_P;PvT86ADb_wE@JG5T)h$6FP={ItJ^VKMdL%XiNgt=El-)!86s%2D6arI0 zLn!d49{`QOq~8TP^mz@~3K{{?^^hSfX?#H=VF@*q>c{v4(kp>l^!M~8PDLS5r~BxY zkQY8U1TPV&^BS$!7oipPSrj%8VJRc2G0S5xX^CW3tG|Ks33#$FBp!{X`xz1sZxa|j zvUCG|8|rAtQauw{hyb#>YbZ-$>-FrREXh^FgsyoQvlKZnYV{xt0fFfH14CJ|NANri zgKkKD*6LGm4S{+`13}yX-Tv-dfeL||EqlG=Hu`WhNT809^n;)eHN7$#15coy%@oR$ zUx)v^)cUZ2K>bxxL-cFoSUssG9=?qB^N9vN0=`rBGpn8+k;CG0gxY>!e%fqv8k!*B zcS_EyAifJpF-&#@F+o6pAX+T(w+2%hJV6kUM~W?x`i^1DDZO?D{m^71mg-rw=>?cU z_b_A@BJjizm7zrflNi=eQ7Yt^DAhWqB7r%$AHxFdalGOBH1!1#@V2nvYCA>o+>p(x z)%6^TLZHqO#O~O#_mVVL?Lr?34B7&m_{$iP?WOkNf7vr7>u20^)u;jwYnt+fpN(K~fue6M`|7`= zBCXBtt0+CNM2e{UI#f{z0z+hjInWS^2F)C~2z3H=hqQJ&%JB9-(iOM@>jNoQs_#Wy z5~%M=Vb8*Q6{W=N&N<``0`-`rF2!K9^;3NYp+;az{|my#=&|a#m;(enSK57QpjWe{ zIuLP4z*kD**v1G0tSBX74$Os40yCa|YOg5sO)omIc_uK4;Rwbda)R*cpAkO3!rZ0#j4xakoy0 zVvGTSNxx^3qRcS8x*t6wFo|z~xZEWEfRQFJiAz1L<@tm;+>b*ofypp@vZ8zE* z2~6TLSo8|A;jMvf44-=@9tWvEMtAbjCV?qj3i?%Plv=$I))EkL4BeF>iqb|>mFif` z2m*CyeKB=&?n644MzQLC7#aeT*lrkx2al`5s2oTUn2ny*n~r6%W`rsCD+*jA2kUvb zn!se8jWEFQcmufRfh(JTBkrVoLndlc0U*I_n#8A{Ou z0#iZ5+vqbvBQWV-H&c|w*ei%Q`xc4_Okzn(oSaDKvFbqBL0}SBw^sD-<5;xmg!A#3 z`Y;`u)aquKVgv!-aN+4M(8)c}EQn{|NCI`W9EMjAu6IcyuO5Nk5b$m?zdSw%yC69c zR39;35_^K6*N$T`G8Jdf6T1WKjjoJii4r$P;sS&j`@~j55@z`muKE!kmjua`Vbz=G zFsH2Sl9VLUWto6juQROO{iFta;c;<8o{>K7tO$WhXC$Rlzy*_k2 zOOZ_k&KDxtLZthAoF2(0ShcyD*d~dt%m)qQCd`TF~4SgOo>LjMUB zu|QdVKa3<~itWP)5!kkh=EB~@fPrStv^S8C2y9D5i_4EF%4{i$e1#cEU<;NlhP>w6 zI8@g{h``3B1?NC~(_^-J17;K0?2@|aC>}Vu=t*GpO6-vcY}e$74cUaiL98HfEY%BO z9f7SvN;+Wh3o_&^)ft!;1hyT5XxReBw@q`gQSr##N=MPvpc-sQOoPHP3Iu_|>uLdL zkD7w!_R7{sM%?RfArY8SZf?p=VtusdKhu`>|g)js6+lC9qAA!k1pc(}732m{&gqwFI`&lKL`4 zM@vylbt(u1wt8~n#zOQxQ}0|11c5DC5?_N+$OztmsZGGR18l|~{A18DB9e~&SJ#Jk z2yA_1(?JKZNjL3!4#Q4hdqNVwx~Vq$pLUzs6vLLtqP%rj0s`=1jXg zBf)jn|IEYhaYZEm49#O@(&N>;ppwA0Rj9R8Am=|}s*OTe5Cjerf`j0SBc@hogrX1x zG?GomoKzI#1g|%|^b|>t2i=2J@2?E$k|7GKg13%p`&!@ob_tLO;GT1^L`n{}S(cfVl;BXyA9~Y?EUxhgu$L1hsg(wIA ziiu`t%WalSNDH+qY>Firqb4dVZ5E3M6N2QJX0ut^LZ_%aZo^md$->b0aOtjuU7!FC z4Ef4Lx%9^;vFNTB(145O2KgGu3-W6qKS(z4BQ;PEBpVQwi9w;3d-aQx*!b|_m{pUA zVFyIZ^ud!^ryi4$T!LfZi&)kz7=ADe&W5X}VtNbf-EcLHl&Exvr(2>cqS6DN&el&& zX1#j^o$|{Nn6Zs1VtX8iJ0g+smFhBRQ+tq9)M`xFD6lKhbY@GB!{A`mjr7rlETK~m z;64Sj^9p$Pz#HsFB#AkngxFv^>VHI%+IlxJ7Az+!`67%zj5X>veODoC6fqX^_fRMm z#i)+4r}S?NSw^(`effmQ9*I%oi!gF;zOSbi;l$Ez)%z8(bkB?rFijxkbfT5lsnvie z8Wv}F)aOu3vhG*|#-_wr0zx9Z$3g@nHgC2MfgzbXkXj>MvU*VzxXw;+UlB%}IivDm zxpN}wqKz2Y#!5@N(TIV#42CL%Gjl|Vt~-&95_S6&R?m}yMkqHq!@=XE_T!@ZqY=f? z8I&xd90EmHmLx56tOn&VP?9}__)l?62MXChiF*+lD27l;BS4J% z0@XBBlV(vZ7)iT1YH<@#xP#EE3Ed90-X!Dr1ZwUkHE#kn3@8Wt2x}2x!tvyhM@&jj z$8+D{w1JScmXs0OO<=MKvj`XuFmZcOcvSE!j`bI$JK{QFFSHrRq+R;HVwS;<>0jdJ z7>-7ok#s&9>59cdaUA|gPn?SLf|DRkB+}hTpXDIM(Z{JC;!zxTeXJ-Ah`0&3rNB8x z0)t>s;(h{Vt%*S=mAF&D>=AN`qYP|~2^oq=dYzC-=gAWtQ2hYaB--J{v~*qYW^^Uz34}1_rpeujHe3+(JyfG~%lGN)Ihz ziL8U(xP-Yp3%{lehqN~r#JDO<+Qr00=oBc3n*fYXx*S&cc^RRe0;-0%kE8G^ac6yAZ7nQR5F~0ywNg=K`WVO; ztQ$!~?0P#1neWoZB261C?eM<-=RZ)OEg8Ij($5J+2tv@mip}t>#aT@E# z_kXV6oW|nVDLrmFt8cFp@dUH`Mx$T0K>eQSEM<@jvoGaoVB!YgvIF2K{?dqrR;axU zP?9=;E3O2^Gk~}!arp+|NIGxC!D-a$0E(mPynbjpi;wyf20sD>n_>?XwhhoP!wUZL zdEH)yIIMu5qU;FL>t>-Ix-T%5W#U`_Z!E>WDtGf*6)eOCl?dp;a-t zSuDz>vfLT0?7kREzWCBO0*j@GrjbxWS~4w?tVt-*l2^cX)>M{v>&MGj(x^PdFuOZq zB)F4B((fNZ2{J9YA3V+mM6^|*Qwb;leH`WmYZDwqgXijp5oKK>Sh`TqMJPxYVb~>t zQgHeT-CfRN8*V23+r<)S@NSQ!#?r-Fxm~Q4$wj)S9MLBtdWS^yLAz{MBrQm3$ztKy z9Vr$LSVk)M2{zEglsFVgZKfsLD8(O%><8iG0ACqgz6#jFW$g>}AuT!5tl&X`>hZGv zjUd+fCvFr!>bP z`#Y+@&rt=^D|5igCd&R*=_e~#{fOUbEi4kgNlT7N)OjUq$olDxD_J8}qz|mbX_0W> z!_s}!L*c+Bw>WUMzXR9$IZ&1j2g-`+z_pQn4wMzI|JFwO{O4hYLg7F|2XP8FZ4@m_ zHyLH&rj61~X~`kv_Km`%v}8Y$9H@;(L&6Oky>1X9B3_g<58NW^Vh$+&>XK!J`T=`H zkjR!O6fi11;vjfDf;MnQ^d6UyE~58%gwWWHX5~8(Vpdkr3_Bt5=aGciyAh@I0Gv#z zgS{sRX~|<~@>~!VG#f~@K)aB?kJxN>p?4P+MI_?kh>Qi1vz@)}opw z^Fo$jL=Q+i;+plB>P6DH*U%!`8tT>3mCU%$Xzotx(^5lAT5=X8gK|4fGN=^ubd5Ap zO!+4TMNY-FCYRX!o`&ye1yE9tkvCQbQ*R7ct_&85fK$6GgGKkd>JhV;qov3xn)I~r zt|q*jF1)J=zojpx{HH~fl5_9Vht6W@aa~B$S~(CMsk}~>yXq@uv3d=L5b6nuYE9); z5oAqrW74Ecd^7!BuzEzVHi$%)mfVPVcZ&)-FLLN1Il?ZYydo&c=c)XvAtECCh$P6= zBg-OukBAHlRU)#FL{JhiB3qJ@Ju(MH$T=iJ`$z;uGtF=`BP)JYUu2u=L}VX{@Q-Xs zqQSt1incSBU<&L8saQP}TT@*BjrEU@3EYv7v9ekk()SFyV|Q+z{oF&dp)f)vDVg^R z#Tdn$XoN!}ikL#-#TX~HNFsua`VP>=j42X+b6!S$j(*pDEX5;SSR%aR+y}9TD3(j5 zdxfi~in3!mY@t0%vWS6M0;xE50o#tS?~&MC1N#TCyWy>5ov;g~f{<_JX_NCbS`p*$ zAjSc6!%6#AF-Q+eGn%3<22j=&$0Ue$BzF)6eH$%A2PJ(b&df+EKrgFA>}(o*+8U4Ac;76 zP{fI2JP6rD*aL!Cw+w^Mqb^dftb+wx9XhdehBiU}MOPQgu4iJd3Rf8Q-lz*-EtWCs z7;p(2Bd;qKOILW2eyq-g5EbSvmgW&t3Yj+%1QF7U5z=ViF$NS2lpg;F*8`_Cnht6h+~AGx z9r}-RSiI*x;FS#e($TH}A8~s<3{PQH%m~~?YAcMQd5|?W|bCDunI ztIY=F7eES+FO|>f!I+++lS>7YvmNSUaAjRdazRSQ@X{!9LsAD)GXZQOekIcBIRJzR zV2N<#URLm#G&q;~8ju0J02C3w$=GCy_+1)B8ON~=1QEXzK@jmP2_QxOV8riAkVJqi zjiNl~m<~cVn(;Uffg%Ffu;?=CB7kKbJos~b5B~lr$c*rmd|q<&yMoW%2rDweR*6j- zKs^`PV3+jjWa_ySy%G+5Q97_Y>WPW)KYLMnumlL3I@t!h;g& zd=quyKv{PL{Agr=OiXbxLXx03nu8)7I1Ciwz!#%D!h^#>5gvRB6yd=ag=^9A=Rw+l zE;^5cBs}<{^kCpmMh5s51mQr#pfsE$3kMqQLKp`IWO{#4L=O+i9v9Q+6~aUVu^0@( zM~8%u6vxkKqyuGuObi-(O}IfI69_3-k4ksG2~lC*QE47YiVUzB1d#!binAccO%Qwu zz$3BfsOPGY0WLs5WPqb$^qh8jPDUTuQQ7=vFm@r2^aVj=fTPk`j&DK9Aj%9-M8Bj6 zQ1qAD2_els7BiWp2O}APP#Yh?t>I%t=FqFkN(|q3lXpd%2;`l>Mafs->RQ z6HB!*T=nE8Sq#4!HT)^t}6C)BUR!q1E*0WSmNq(M`q{;GnDyPeG5sgNDv4Jzf zrjckVd4)cHAxmbhbk9PTWEUsn_tG#myNVz_rf*-!(pap1av^g@j|jr{AhaPqR>$m& z&BJB2{@X%!CgKSEbU7Ei3s)2NFOOA+)W9R4fL>piF$xdC-C{j-FS^HbEt zsLMJ|b0H;1K1)1mCee|kGbYQ(>=NlLMqOlfS$EJUNNE@uXEq2@zkd2*7Sm3ILzZ|z z7EB_Q$2K=oxg;RNk^Bad?+H?TqMp2n)oUU$x6$A_;6;?kI#>;<{wO3@=;IeLhny$9 z<@0>fX6lGo>iP>z(qZbzG3XJ|KS289U#JUv2S|UoS{VM2btUPn*B=98=Z4*27_>g z(bj3yg)3woEQlmq2so8ihVi3iXOdADoipm4Q5T&bEzcB^=xkXI_Gs#yM@h;ij31A4 z7G#83qs0M(=$Kf%Mu8v}uhHVLK@c#DjNPk5!m#mV*edXfb!)T?-PceT>y~I%4*wnS zsN(zsl;lKx{9+cHVwf(rSk%eXDG`_^7h}YUUbUSp zq*>I7A=pldrKY#QI+voJtS3E&ffcL7-6B5;KWv4y&f}m5hU)_!W67yv^%*M|oc-G> z$~%;A#z{T*p*~Vy_85!Hq@2P^1zPCoKzd#WeK*z_Rwm`^P;aJx@EB{t#_NAR#@e#c zdYdIIi`#?seB2X8kd~1S>MTna{u$|@9!~8Q4_bGY)&1 zDE!i;PJS7WKUt?YUW%XAJX5C+S;~40maNm^lad_C%2k@mYGYh1=&14<5*u4<4GzaJ zG9?46zC~GV!PWTqnM3x9Aq#elz~!Z^b?4ADb>YaN+a}iJX!F*GrioG^cz5@3iNOvx<0~)j~HdJ@#;(Z z%oVJEz_Ws@*=mANtgYU z>it*2O&{nbbi1T4U4;MidN##n5Tn2(1h2lLFVtCsz%wMtnZElu)*$K?%scMzSEGNYvs4%rv>LZddXv?x z0eep$xSF+%x=2klxP^H&xT5GYLY~1shjXbV6+`h3iTz8zwwk%`6h3b2XW8#$Svx<= zejx?zSzp6cwR$EVw|NKl6(%5Qv`~1iVWZPuMo!^9{VgDq?)20Bp#IAmVR6Ef`26^M zB*+8(`Srn1!s53{{}6WF&`%aW^d!Wt>f4`WEuyx<5I+7Ev7bN=e2MU*nO^)nOGq!E zQ7-mpB3q{V*>XuAu@*`z^to%9Gi@U>0p@`Bfg_zJ#B6_gecxKsn{#gQ=J#vyRli-7 zNy1v|5$l*cP5AT?zqZ6^FJ^UcQ0QG9k+<}+bu6pJJMgR;{ynfkL{e1w6_fB^P>J|2 zE~@;VN!W4_`2rCYar*b`ka0bF;ChytCKRs`ijBdgZ1p6|#At`k7cKQ&&nm%w80_hS zeTyHvm<(GP%?3G?opsAo%*C$g4W42pQP0o_?f3J-{ra;{vD6-w6eBPD>8T*^9`yFu zQe8|OugD(%7j|5tAbM5!Ei|?hzM8HFRkQYNkM6E!-P+LS;rzH?JHmtSc=fUBJF#H$ z6D%0rBSU%hY<*8P#zSO|lZ;Xa;jKs=-vKZ4?+1)Npa~s<_O9r08(3CgH8u1GqZyo} zPuaj4dd5)~zqq~WFa4SpPCM`IEUy+blaT*RsE4rA0*PPrqrA?lw|KPP9g;x(3+KLkC`^eE4biZ%YBAt;uPI!b5-ClYV44ywo30{L z^w?(*K+W|5&#<DH^NS-^B1fPJQ?$WQ!*H1DlwO*Iv`BH?f2$`Z5FW%rE27E6|3nAHJra*n~ae zQ2pvA)+I^=%3y9Lc~VdX`N{7p9i@nR+GxT1)vQcwNT2L+|k% zVqHX48K+4zinbUy$V zTb@>xn71%nqp0${%42AX()_e+S8Xvh`jO3S#Jx+Q`z69TEw-3Rrf7o29^*i$yg?L~ zB{qh(ue7hRG_bg0C|6OUvSeB^Vmh0Z=9U&QZhi6=HYuFkO}@5l=1R;j`sZ8lLG3x+ zx|I!LH}nx(SyRD5-nHOIp5R!ymCekcGsPL0ua>12CFX7c(<6JKDdF>+tr3^vU-SdLxO2fo0fW98alJq8JSL^V&w zPUv%9U`fOKQ38%_1cGf2E-}|}33?A3cD0kb6lMAVijA@CfWi1O=Qdz0%Ax>VjotKM z81>F%X%vXcWH^G?yRO&0fS>8cU)KY7VB~A`t~*%I2x(&oB<2@FLSM0i)nm`R;mx6d2anTv;|)1f)BRfA8x%u)fT9x=zs3OLYAs0?qsmDbQ>>j?<)mbm;%-MB}6RzJ9tHOis&lLr$%@KQHC!-i7zNmOm3eR|^Jp;Qk_ zBU2)%+q^3-^gVYTj-3n2!JBX~7Fx?LLXf}kebhT@yYFI8hgk|rDhg`Py}~*(YhLNJ z**Uebud)YNFkZWnGp($2Qdw^8io+~Dj6eBB?Y?)}JuGltHhK43-5tRl_5Y_AaWp;2 zj)iUyoTz@{{V2rX476=qd~dHv|h0QJT$4{y%Y1t;~a z_nDJFds4saeddlML(`~v4zX^S_ISyFH7eLPLf`N{OAYUA;a01<#4|rY9m{*^AHUBU z8n~5&8v$J82do|SH$dH1$y?#}QE-+hw`3@~3>QKBJmdrwjPMrk93@zW3ljOBL`w!Djq(1eWiEUv~(Lwr2u6pJp;dF94vxaW8ssZx@ zy5Ji#6er-JALgpRe5CjJkTuOnK%A>PRmP*l2w1HY0L=;cIcGdxAc5(pum6yB<5%nH zUwp_Oil#3%sb9k$5nuseh}37EW=%Y_jWHdZAslRT8Gh<(+-(Q^5xj+I7X7Z)6kWsQ z;AHrXrEgGj&7sILG|^Cupds`$GD+N9@{UuMmv)D@)Zbfrj(Lmi%#v5sC(yy9@g{z@ zbvCe`O73lCxnZ0S!`qm`CheGMcn_0;$0$=S+glpqE%^-b@pbf4J9@murrwg*Al}uB zYwIn^8A87E^~^`@N<7wN zrr%hrzw6`Au(&~xF>{~Dth|lvn1MuV^s{NBtG4ALmE7qU5yGz{cn8uQ2<`__2*#U=6m74p6u3^ze?%+E_hv3YMW}TP}*$;J()0w!Q+h-5TsAS6F*{ z>4kqwFZ9wEGs$p3$a|#z3hQDfIjjLMkQouSkyb0x#H0Xq6Pm9;&QSk*O3C6*(>e5W zZX6s5>v^;2i`Jkn);Qal0QDS<@6RBuJ_qXq)K7PMvaEMPkEnrKA&S-kwvW|w9#pMC z5@G!~pi6-I8Jcsc&r-)x#Ib^(o&(l;ezl5Q+Awl0)_&_q5@bois z^)2AjgL&&Ht93zuTD#;E_8@mG?G4HntW7eZ67$&3dZTk}dQ19+xVnYZj- z-ObdkWFX2FqQs-kHrDml-#*6{HT{{y{sSp%7j6@SE>mf%zQE5zDixWVA|bnP?E{~) zqs%j&65b1Bgk3mU2634eE83uhO}_zGPtZyVlSTxnHCRW7GWFe)FbU-Y-V*Nt?*WZ9 zhIrC_JjZ-%ApK@sed{FtpA#Cijj)Db3~RxSjPW*UMEQa!@i1wYi2oI|XpjxO6=7+q z{@1GW46hm1ackhApM;wezf4YiG%r_5nbSmq_ThZ#y!Wkqw6<~|)t9tr0p3H0zg4eIm{MX6fzui+;Lp_M)xqMH8=e-eknP`>BwP(dv(RX7snQSEiLHVIyfI zNc#D^*}xsLfjM607G~+6vK@KG%jENsZNBO;TK27HvSmn^n-Yu|{l5Ozl-2Y0CTT^Y z5tvB#TOuHPkQA0X1!KcG#6WrsEE<_?peR_6iM)tBYnbQ1p5H03JjHYk{bb)XZacml zMjnF>XzVi1XjyJ&fuUdMo4lA1+bTUab6bWiLza8h((m<6kEaWd3l0&DY0`v-er+vl zZL}pOG0i^u$-b$ejT|y5N2Af&=o;cr7UhCOa`bC{Q?9v`dsgf*sA*eg!zJFK_C>re ze6d+J9M`}sdHL4~U1G9eH8sZHOPy-+`<8VZvcj$VV(P#wFQae%csCS6oiBJl#PgQv zb-Cj8F{M5JTQM?9Z1Qf2pK&FIXT9q!y_CSzH^R4xm}xL#@Ok|x-qs8ddJ}=^&>nIm z&3zR2sU-3!^6Jrd*_6y%J*boVr)@{m<@J(6x=z0=09&{ z+Tb_k=nV;`(PL#4c*ob5Fuc1O?kkNlwb{&3HSc~oz}(y+{>(k7-xidfGGzC>j`DiL zX70L=V@<} z^~S&XaAP*>jTC(FV#@dOmb|_9w(Q&B`&#Mi<@Y|+V7q8)6F84Z1d~kUU&hua=-X!d zR#tDxltbR8sHULyJ{5Z(H6ecjb1ouU=2sI^XiB z-P1Euh6b5zn`p4h9Aq)WgkBnAM#(@KCEnTK^}jbt_%O4V-k|m}`PO%H%47cdwlQ9< z+;@E79WQg8GL@M#)7y$KjR+Rs;|aaiM4Ts3Vx*;v&Jh+cagc!Vry5$OQw1tlcuRb^ z51Zx1VmSZGdd!R4?k(|=K5<%2{wjru?eU`hav!~F#Wa|<(qti0i>ctcD9NofEtvH3 z6?1$l<@h{|-pO3>mnrI-D6|Lkh)oM=H`2Lp_Ly75N?$hgJ&2p5;rEd4os&2{F}2-q zmb{a|96sZrTI7H4YRJ7M?>g^Whs`-=YOrBRGAEliU;CozFCG6o`+9pH{Qqj8F9v-P z>Mi-~^9KI^WuG@0T)1WWeR7{i4xMioNUz5+2GfRIfJ7pfJ$ce+Z0zncH(TCE9eOd2 zDJC{{#!|suViwE&;ExnnbZRKhtb{HPPN2+PqFgT|Yol9{h_bJnd0XJ!WR&@mmO0+O z3GT~O1I!rUg6g+{MDIL!^fHBgyF)Qlw=#MI&YKl|!H6S5Q-|1%+$zb9-KxXPXY{5X zbG~?5$*zb)9I?SP^NJZ}avvmAnn|nDG{(#0Ghm3z2k!z=9cZ66 zzm)U^#g~pVS;HV0;NZ=p!8}pDi1gGHPj>5&K?Bqa`#cA%4!@ev=%pDt={cBQWu%8+ zWwHG6Ikg#A*;2;c^Ys07c>CwrdHMyq&z`5-ui^g0JiRmBchA!&Ut@V3FAIA28tcjN z1|Zz)S)r}_e7*T~mJmzt`caqQsM;EQMsC4vpl+C7JK;JT7r^tLsD14>*22PnKdk@j z57s#*{7vvL#o3pY;)8gXAJKc>VCg*MHNEf#OXcTY(;vIRhVe~D^$R!HSw3V_?V&%} zLl*9MQ@=~)r+H9~o@n9eyr4#RTe!0Wz4u0aj*A2QCOAK-w1!t&vjS|_)iV!Ns9W$( zeH_dOs6WmfVX>j4F~q=`2Y63ix8QW^fPU1%8#o%g4JG1~Lriiq?0QY@4GUkzc&E4Z zCj$5^$BW0oBaUMtOye8x*V6*|UHsBZdQl+XnMg0JQCC^W9k!9Si`DpUm(k7Gm-Mza zKD6mkQt~>iwT_g}9k5B93KITpoWKN`5|B*B&43QFfMi$0kV|@LOuhed`6YoC))gU#h0k8 zy!EX}v`Fu8F(flXDaHN?N28vUMiLJy$^FH8V^DUP=?<5}Ul`xkI{e>`|F?=zd zAmJ1+7<)QvAaC!mw&4wFp6wE|cMT4IL?uh5BB3w*O{qfQq=$oGe6-#)oaggKCu>)R z^D^cPK84O4rIrHba|V}#$8oAQ-p+%af}r{r@CG{sU6>G<*O3( z*v@>u=W+x-o5M#ptpKe7PXXw2qYY8`z!K$Pd>Z>SmGM!_2EYpddQaiY0Q&eP65k7= zk67pn2O;3?0iai$HUne<`T*!HrauDcg{23PKIq+~5rD{eJjr~70)39+L8J7cNC?i< z>0EsteoR5H5d8u`=h|1=<0pch@Edply#jP9fVIK*FaUHo?FOFS-Z{FlqR^W<7l+{; z7QkJ^aVZ^{j_!;%Ms>yeK5!UHFV%b!Ft#&R@*1p&}qXd0G%$(pAN6n6MObd2mzS^B)zEcZYZaB z5>5rsW5l@o(9dEMsW4JHV%Ie=`G zM*|)}c`slL$}<7`P{y|plvyZi0DSpCX=H^w$~yt{7MJmWT`0dZ593d7xf>J!*8?5} zoB$yJ%h6*fKLJ<;cpeZ4oEt!|teXd*CF?1`20-o;7%IS^P58?8VR-Qfg7{7R)(Ai^ zl?!?eferW+K(C5>`Y1ln2ZVaSKreu^)!^%PD8Kd=Ueq3dhz^7haCv|NKplVX(cPLN8H{K8Y_?0OA1j+OGyD_1Cj` zriWguwZsX-fU_Yvnty{(ZvBCxJo_oU2{8Y%fot#)^2;~)D*Htfi&sQ`h~Waf4zQf| z;pzQ3f5*QT_?J#2o(})t47bp`UGOR1B^3zz2Pm6=^!}SIfP;WP{rKsMI5%9%1ywK;osRl23N1cC;pajGL8Ucm_%)k98k2v~wJAv}w3Eluc@k@+5U>v~wqxYr!9sjTYfPWZQ0hK=~%3Qz&z|Vjtb*2>7hX0>(FMRLuHMkp%nt%KK6#C=q zfd3t!T*fL1F#qmG`6Pf0_vim7Jay>)ACXrIaG{==e@}q00q`uK4q*OWLsp6H1WmhE4C2X&XQ3{itybK>wmAciHG20MkIx!|&v=cKU|_O9Axn0yY5jiZja!D++Ro3rh-=`KUG#d#Zw|(<)|nQw{+!wP0##*=*%g6iW(b z=9Eq-D#-IxDE~&iB6muG5@S)6!ji&@oWhAYB?Sff1^G%#pejmpDoe_9Cl)9JP?PqF zrj$kAdcmy13gvlJ1)*IVzjuIZHpl?4b?EHk-<WF8?rfz~7OI6MdBv6a z1?An8;iyfRjZPGnJP_3hx#a~p zr4yABlQhXwTsk4QxLkP@n0yRZiLx0b{1-1oSb0uG?u6n3g?{oVF*)UMRNiFeA~3>f z`2HVgg)<7eDJdwG&nzgIrgTOL{zAYOl;oBxV^Ez~RzP7|UZKqPuazsFH6#WH_&D|f zBL+!^Yel*8F)-5EU6fx@zHKnND9#YFC%3%Zh@#e1pIliog*rO`mE61v7-?EWdwcQK z!ii;`(y7W~vszYJqP&iZjF_k}yb-Ut_-1Bv<#kjrE6SDgC`>4XZ=m@GAq!?zDD;mg z$|skWA%H5B_Ne3)6c#IkQOKQukivatX<5Fq426n9l2ve;;|F=`&F3QH9FzHeUX)M*&Dobt-43jO+8 zc&V_YqEx9ujmD|CaOwnQgHb7`Mh~Nso1d?Ij=P}VK*3O?#782o3TG7N7szfX?SUw- zoS+QBJu_1o@dEB>prCA8X>o2vVQGo-E-+$*l^@MgPHsi%)WSR^EK1BAnv3GK>eI>~ zs`Mf(hK^qLGNYg@zc8;tsnXXB;2BNnOT6m=#3ugU$g)sYRziX+W=|_9&zhNAK9xP) z6z@RJ)Y(3kRvR&pXIRogWO5NXIwMS0j0D}-LMb^@?=qApwP_NQd0QIl)W5K}sbFaq zmMJrJr#`a_``nwAm?`e*x@!=3bZVYtR7J3f6yAAo1^P3oE2(G^n<;DQO}uD{XsLfb zl*c(+MVkyV-FNCY19LC$E zbQIR~Mk?vl>DC2+TJNL}9L}BW4t?@)-idYApBawh`!4#i;n3PuzdRftzjf2?Bk&&( zv-OrEa024iM~y(k-Sv4RcqZ$iZy&*vSWo@<2z*R%r~U`s?$WbH;;^@uK4K(q)2R2L z%>U_|y7-rQ_4JyNFs6@wd?Zg{ef7&Dd0L}>`Tq~{tw-?;$K6qxeM%}?w@RmJ+)4WK z9(~#oim}GQ6ITLuNmNFhVqS50;ru zos5Nt6p!>n(;8%OkBTNW!wYhWn-)6a9j)8P@EF$^5ronRBf)l-jf)^0tM?qk8}V_& z^r>TbZ2JH3j~?k?9LA~b+UDpljNwh4<3-!jQn9*F+qwGHF+7n?&_l-}fb#TaW8wRJ zefU@eSAjlzEKf+DnBeQWZ@Du%G)aGPEI!tote+o?bM8XjJ`SG@7U})RL4JxpZ5)E6 zSYJL4Ussx{9~;M$x|aB9gR6~Iz|dBj>}%?lRmY%D)6;YCVZn6$t{mQkm;HZDT3bt0 zQ50saafXC0LY5AS1O`S_54|O25GeE%L=0#Td(JugoEjV%nQ1i5wCQSh?J{3xSM6T- z7U3W0Dd^d!p8XL)-`O6`w|!fzwbx#2eII9?9^`VmC&kyrl+iY+pllfb7cg%a@l`Av zsvp6M(e}nsr}yNkPSj3o^ZASG8PA$tNs{`ILoMg*vE8vDJngoV*rL0}TQ{%w6-yoi z&`Dfs-k(f2$LIvc^XwsB#zLO|tWDx)o(;4qG>>b&)VMGji-HAnavFJ0G z?%}u3x4MtNKI_5*>{bDhMOqx2<*&QEhlg_L@Z!yz3rkAaY->IG_{ zW}}yqiD9@Dypk=pxHfz(+lI^GFzKdoTW_QxW+!hYV~g=%K{A2cSd_HsB@KQj#0y8% zM@j|zUUnEmTq(qiy<$iaKhz^_Ired5J+f=0^pi9tCy6bAi5c~0Nqatt#20C(_~pT` QlD5^Mp|Nj2&P1Bif70vuj{pDw delta 38751 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 diff --git a/records/wasm/unions.wasm b/records/wasm/unions.wasm index ee1fc50c094ed7a3591f1ff059c882c439342f85..eecb8cbc0b36b277732de7fabb89f9fa4c5bfee4 100755 GIT binary patch delta 36119 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 delta 35475 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 Hqxk;;2^2qP diff --git a/records/wasm/variables.wasm b/records/wasm/variables.wasm index d7502004d52d537cb2af807b82baa917594933be..1db3aceb577c3e6f46a3a0bd9ff5963fd0985a5f 100755 GIT binary patch delta 38797 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 From e81f9390c84f7a0693242e2f490e12478d537d5e Mon Sep 17 00:00:00 2001 From: Serdar Dogruyol <990485+sdogruyol@users.noreply.github.com> Date: Mon, 2 Nov 2026 11:40:55 +0300 Subject: [PATCH 4/7] read install.sh's platforms before the semicolon 0.20.0 added to README's parenthesis 0.20.0's README follows "Linux x86-64, macOS arm64" with "; a program built for macOS runs on macOS 14.4 or later, ...", and the generator counted that note's clauses as two more platforms. The platforms are the list before the first semicolon. --- scripts/install-targets.mjs | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/scripts/install-targets.mjs b/scripts/install-targets.mjs index c1a6652..4248245 100755 --- a/scripts/install-targets.mjs +++ b/scripts/install-targets.mjs @@ -174,9 +174,12 @@ if (undocumented.length > 0) { /* The platform words, out of the parenthesis that introduces README's * one-liner: "Install the latest release into `~/.local` (Linux x86-64, macOS - * arm64):", directly above the fenced command. Anchored on that fence, so a - * paragraph about a platform this record does not carry - the Windows - * one-liner's, under it - cannot be read instead. */ + * arm64; a program built for macOS runs on macOS 14.4 or later, ...):", + * directly above the fenced command. The platforms are the list before the + * first semicolon; what follows it is a note about one of them, as 0.20.0 + * added. Anchored on that fence, so a paragraph about a platform this record + * does not carry - the Windows one-liner's, under it - cannot be read + * instead. */ const prose = /\(([^()]*)\):\s*```sh\s+curl [^`]*?install\.sh \| sh/.exec(readme); if (!prose) { throw new Error( @@ -185,7 +188,7 @@ if (!prose) { `repository to take the prose name of each target from.`, ); } -const phrases = prose[1].split(/\s*(?:,|and)\s*/).filter(Boolean); +const phrases = prose[1].split(";")[0].split(/\s*(?:,|and)\s*/).filter(Boolean); /** The words of a phrase, and the parts of any word that is itself hyphenated, * so `x86-64` is matched whole as well as by its halves. */ From 8205481210b2e661f147c373688573e1084992c4 Mon Sep 17 00:00:00 2001 From: Serdar Dogruyol <990485+sdogruyol@users.noreply.github.com> Date: Mon, 2 Nov 2026 11:40:55 +0300 Subject: [PATCH 5/7] give the every-core lesson the searchTitle and description main's lessons carry --- src/content/learn/every-core.mdx | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/content/learn/every-core.mdx b/src/content/learn/every-core.mdx index f6e547c..d2de910 100644 --- a/src/content/learn/every-core.mdx +++ b/src/content/learn/every-core.mdx @@ -1,7 +1,9 @@ --- title: Work on every core, and what may cross +searchTitle: "Parallelism in iyi: every core, and what may cross" order: 9 summary: "`spawn` stays on its spawner's thread and may touch anything; `spawn_parallel` runs on any core and may capture only what is `Share`. `Server.serve` puts every connection on that pool, so its block is checked the same way, and `workers: 1` keeps a server on one thread." +description: "iyi's spawn_parallel runs on any core and may capture only what is Share. Server.serve puts each connection on that pool; workers: 1 keeps one thread." rule: III.4 sample: samples/iyi/cores.iyi breaks: share-serve-capture From 1223cab10d4f4302185b80c5ba3044d65ae14797 Mon Sep 17 00:00:00 2001 From: Serdar Dogruyol <990485+sdogruyol@users.noreply.github.com> Date: Mon, 2 Nov 2026 11:40:55 +0300 Subject: [PATCH 6/7] =?UTF-8?q?keep=20the=20agents=20page's=20summary=20un?= =?UTF-8?q?der=20155=20characters=20with=20AI=5FFIRST.md=20=C2=A75=20in=20?= =?UTF-8?q?it?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The merge took main's summary with this branch's runs_where, which names the write-up rather than a count; at 159 characters it was over what a results page shows. --- src/pages/agents.astro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/agents.astro b/src/pages/agents.astro index c6084db..b2692be 100644 --- a/src/pages/agents.astro +++ b/src/pages/agents.astro @@ -185,7 +185,7 @@ const diffs = [
    From d2545b71d38bc6ba56fb4ff94e0594c9919ea227 Mon Sep 17 00:00:00 2001 From: Serdar Dogruyol <990485+sdogruyol@users.noreply.github.com> Date: Mon, 2 Nov 2026 11:40:55 +0300 Subject: [PATCH 7/7] give /playground/evidence/ a row of its own, at what 0.20.0's records weigh The evidence page prints every recorded diagnostic, and 0.20.0 records two more, share-serve-capture and share-reach: it is 293.9 KiB, over the 288.0 the tour's /playground/*/ allowed. The raise is by hand and only for that page: it gets 320.0 KiB, and --adopt lowered /playground/*/ to 272.0 KiB and /404.html to 224.0 KiB. --- scripts/budget.json | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/scripts/budget.json b/scripts/budget.json index 004a100..0a0b0ac 100644 --- a/scripts/budget.json +++ b/scripts/budget.json @@ -29,14 +29,15 @@ { "match": "/download/", "ceiling": 229376 }, { "match": "/agents/", "ceiling": 262144 }, { "match": "/", "ceiling": 294912 }, - { "match": "/404.html", "ceiling": 245760 }, + { "match": "/404.html", "ceiling": 229376 }, { "match": "/why/", "ceiling": 229376 }, { "match": "/install/", "ceiling": 229376 }, { "match": "/learn/", "ceiling": 245760 }, { "match": "/learn/*/", "ceiling": 245760 }, { "match": "/playground/", "ceiling": 229376 }, { "match": "/playground/iyi/*/", "ceiling": 262144 }, - { "match": "/playground/*/", "ceiling": 294912 }, + { "match": "/playground/evidence/", "ceiling": 327680 }, + { "match": "/playground/*/", "ceiling": 278528 }, { "match": "/reference/", "ceiling": 245760 }, { "match": "/reference/std/*/", "ceiling": 344064 }, { "match": "/reference/prelude/*/", "ceiling": 229376 }
  • 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%0Dk$ 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 Xx*bZaKBf%NlhJ5X``(h%{3iZi67%Pf delta 42838 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 b5w}%Mtem!(+b7jbpFVHNfuUdUQOf@T-=(Q0 delta 35287 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 diff --git a/records/wasm/defer.wasm b/records/wasm/defer.wasm index ff0860b3f8d9f858a1ea24a55bbb53b450d06e2f..82770bbf52e00803fb00435b98136005c85dc686 100755 GIT binary patch delta 35300 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 Mw65c2aijWw0BQSjW&i*H diff --git a/records/wasm/dispatch.wasm b/records/wasm/dispatch.wasm index f2c65b779e2b0f1823645af7dd5a595f3336cc3d..9102983baf6a3accbe599ff823f8dc2bfb3be352 100755 GIT binary patch delta 38365 zcmd7533wF6_BY(sJu{i?lVyf1B$-J9Bq1d1VTWN~WR-m}1QH-21W1A`A`>&TdcXUBzxVmxHxD&kb+$Tn>YP(m z-80Qw589VMZm${16pd|A$1sml8OC>eov;YPHvh5!5 zmXrwenLTQm;z~H@M_&mql?9F93bT z53dh||Kx{XQQKKE*fzDm;&#`s;=B%!R$+`8ZrLqo$Qf zY6D1wRZ6_}5>Ip(3zfThuc{wgz0aY5~quKWk8E1(+4cBzr}MD^XEJhmIPPHE>zXI&A@x|=yLHqzcsy4%s- ztCralEJqo$skbf5Q11vHlwk2*U4H``pCh-DA*=4-lvul4@w!XWAqVbZj|{zu_xJz6 z8*wAA8XGdubtS-7q@sim$1m#KkcYW3<8oPsobIjK=+_7qb^J=bdxG4|TQ3>91Vx5= zt2U?wq0Ypc2H>{!){P0{uMLfd@pp$#2>y-_L2_JHqrzNr%_cQ7EIq7h6C{_EU`8K1 zrH%>9^wbm8%e*x=!E4k$k(p7S{0X`^GA*iV&5be+s82>Vi`w=l=#P=j*g@6f zNSa)=_C^k_3mkx7z1#j0D?4gQbDicd^@eAMIu3EFo$7W+dwJ6;^}HiN-m*%)>L{`7 zR#>Q-9}^eSR&I#&Ah(s{)HP9~lN_)zCeR9)wXGZrYlfA0Y-riq$_~}%X&vLX5rzUG zSj?Tuk0=oId+_A}A5M zBZM>u+_Xv}?cJdyh&s|y?ocmtz$>dL>v<6@>2LXpX!TCg9|#9$WAPVzt+pG?XcXt=fDDXs45lLl`@+Zcj{PpQz6zX0Uzgmx+xnugNT2&AGQZ5^Davjo1}+dc#RR2O=B& z1S5$C(|iVd?4fSECj@Ow3wZ_-Xee5kU&sIU`IXg`D?(U^x-hATJ*i$ux{DoFi<7sp zr__*?RCZczma^XSBp)#HrQ~>;>uSNI2Lja#Db?Qkn_}+>CzW9~86MX`!U7*Hy)>xMealR#?S*M(yT#h+R@Y^7LVKYU9-POs#z; zbq-@^)E4PKMsmH{%2kY*98apP8oeGPw02VlUq~Ob98ar}jXSe5wF4W!#xP1}#t!zh zdL&~Jd%CuLrj6+wgKpp$mIV%VP1ZUvq&3|QhEq-3;M1Bt0Fa^CUUs@x&1MXC+|aDh zB|3H7Y^und8SGj0&YZ>S<6R1YHj1zEg3tij%icEUaWn&jgzsL)c4yaN4-oU z+RDS>^Og*GxZ@QyIIkOfRqdbG9G`dOdDv^}LwUEbW9p^69_)2Br(HXIPHoo_pL;qd zh8-tzh_SbW{?JVkQ6p~kfz1u?VQPfn>)K^~Ct`80U4ys|s1dyM0- z`a}D%?1Vb7Lr#ND0dhRK?i_b+CS<*?uItbXU7zbP8=w6Swpcs4ctZ%4_zjle>0DM~`*A%HC9~yY-c?tW_u8n=aR=wUOSp*xyJChqQ1m?RxhI zG5!a8G;6ReaQseptlKHZ|8Wl*iKk}=e2(wg4WAG7EX8L?FB)g}UfxFB7CefWz9Lw_ zibeT`x!T$5rlDu^q1XQ0>#&u^zIQ-dTx!1equjaO%*(dui-P1~-gb6QH&`2qL*}K;GrSZAfgRAt@<5Z2h|}O1^S;2_ix31A>%TCSV#L&gYem5 zsU-B1VJ(8*C79!!8h7hB`RZPEc1f)4y`rwXbu`wl&u{I+zEHD=cg1Jv@LYDKcFXXd zOs?6hLO{|}WGrl<_*lKi0$P&eOVu;7U;I}jJ5OxpJLr;o=#qQ7d%Am+xV{jS zVNz(QQ}Wi(daHYno7^OlpgZ@fw@q+`yhoZvhW27ijf_iBH%$l+{g^=TS?2get(mZx zeWtd&tp(IAye$u(TW)Kbcrn0d5h>lJk-BGH+^b%=tvAhcR(`U4Zm-%u{{irPkv|ll zc@sO~vvOhy`&|8a;#Slb6?DY@_DI1VhQ`#%+t>y5NRgYpSDRV5h8Yd@gQ9`D0Z;E$ zn@{N|<1%B)5caLPqzoLU0Y-a4&^{X=egXtZ@&R?H{d zW1#YIGZfShrg6u-KCP7Wo>APAF58P6B21qz?u*Z$lFmpmy-KnOF}tLO#+5exak`wC zo)Gt!(L`Z%ZF<879Lbm1L@d~eZRJvTf)`?1lnx_l%S&6(<*8EY?VZvQBr|(P9Q#P^ zHKSefo1{8z6&?CXBr-H!a)^k!2j{yPqu8hFkMvnPpzIYGtTt*^5Tm4#FuN7ym%+2i zB5%*W1D}J+^I_|KUZ{WH?g1*#vb3rDIa{^ZSW{dh`3ovg{R>VJv6p4;|M6aChPY0tb>TqADFus(!aSD_i->X}Eb7W{3QPdD#}Q`tV$%Ke;`u=IU(%ZWp!$|P<42EJO6Ubk%YpcA>BvOBnWa>Yoz)fN zBpDfcO=gie4`<@u3AS%lRrS&>LQxtW7Kk5d3}7*=5=s2D&sVz9$iRhd7LGf8buMbr z{SmL!AJ)X}g6Y`PTXDpZ`&Q6?o*#SML7)z2VKNC5lGQ7#!t%I08`q*gQJ`ZIXLs94 z9BrKK)3IL;c4N;Bap2}BBXxH7n1T>b7%e_D0#6uW!e~_z681b^g29k1s^Kab<0A3l z9O8+<=|Jl1iFAj%BT76DcO=dW;pim_vK%;)s8^gW98D}pV(O4pML~Sq=XhRycGUpY zvAik!S?#nu8K2{pKaGu^^R5>C#C-B&{tw)Y*ycI-u^(!nKiM5Y`~C=X=g6ntB!yKo zWSs8M$NhH&ZWVDLr>&y;@?8ViPpaeYMEU9l_4&jm>|g4LyNAkEi`AWX_e;7?UE(C+ zmYYc_roACD*0Ff88gWlb?2^TxNWh6BLw3`L!?9$s>b+-qgWrgi`wEn|bB&?nzts=# z>GxMho7;SrlD&)m4<2vSyH`Y5LLx&asRiy7^{Evta6{$Nifxun3O|N5=0>*|jxBrL z>amsGSgg8zd5qfdzL0DScRW}C=N-e5u{)&6rhp*?oDkkeNA_X&W%*Fu(_Owx44LnK z=+F|3%!nf#IjCtj#~;SbOUBtQ43co*`(Hc4htTP;g@m{>&hSVq<{6%=3bhf+{(xPk z{O1tA#x*nokrv@SWehAU-xj!dH#4SP?PGrRGr2EadrP$WvR=dBKe$?gxzl_2VGiEHRZp^?k zS^f0RbhXi%@eRxyNHX0ff-57TVh67-^yKCJ#jT?NZ{T?vcZZNIO?Pl3Ob)8QuSih4 zt!)vvoOewbiaeHQM~0;TL+!n59ZddYBQ21P>*vBcZheJXu0i_x7^{5yGVq$ zMyvf|T~8S+PS%FZpt}j?_(>hRAtmS@yt2ej)(=!-mZ8TJpxo&=6?kSfOTY z%xk%mZtA4U;c$8{w7htLnhNe0OWl2W@=w%6wW?|vIP0Z6`P&2P+Kq8OPUi)xt^B*7 zq3Q{$(lT)mxT+2=tCISKBb$0??K45sz3%}GRu9%OLDg11tqb8yZRKsGl^5$vTltWv zdVOu>8ogRox?#CIL5y@Sww_mr1+vk8O0?+?AzCjBGQD-i zU^*5+WaXzTceurS-awz;r_O#jru{k5=AvnzlWOr+$$i4f9ApUZJaL`wjhvloDM|I4 zWZkBOCRa(-w(=g5fni(P%3Jg*Zgui0Le{7{sCqZ0$ZPhglQwk@*Hx!`IraP0J)4pU z@y4d!@}_-i%;sDJPn#~_2XE$#vo;To5R5qcVY+whQ{UX|A<;axjLAk@K!G6l8cySSW6CQO8>_lC9}JK7Qd0+$sprAg@v` zGO@`ZSh!!(;|{Q2A)|T}+PM6!GYfk&+&1>kn(aNe>z!TJinbyO4DSx*G{U{rqgz|L z@8h;Hlsrbgq*~CY(4hW+8dL2_H;BC0o$|2oT4sk^X(`0&B9n%v52&N7Tf}Xo5Kfi6 zzTV+B+_kg`DG0Oe)twxE;WQwK{;oQKZB*^s((&1BTRYsvn!@WVwdS@_? zh(_G^zIOfk^`HTmzF-IM%>(l|HmX6}TlD5J;a{m;#^0|HLT@QCj`TGz=NblUIe)e!ja!B_hX(MhTMYtHz3gz`^#jRFvJF&-s zNx46A%M9iw1)Z>y8#cmydvbJvwAPI0g8 z(o>vMy}rvGZlpQPE7DZBcN_InyeuAvUSi`+qTXY-L3?&(T__2{0v zXo$`BCPngW3<^dR81I<9JB-;w@QN9Ni6Zy$*~{K%&K@&oZ{I#Xd#Co*vsLPv{R60n z5BDe1YVh0sR8l3m#;=N1SLO1-WOZuI!(_A21GwW?qjovqSI45OQ*z+`KyzZ7ucvRn zIi-?RIG!*kb7SAeQ#tktv@l@!eZp-b_i~eoDn~?;#gza$nlSWmlf`Lw!@Gc{OAdBz zCcG=v);odNv3pF#$(c_Vi83tiA7*E=N3+^T|7M8m4lNw6>q-4%C|pmjoP zfCp4Q`Am%18u?06nb+rLxbsxAPwjrVFI%CmJlqVAlb=4^f~`}(IUMi1m#;Tifp7-% zS{$o+ll2N$+~~uxmYU&ENj%nng7%9ZQrO%-<9i(5*CfaNM2OAJtAAC6p!*0PfHgqj zIO_@=2~pS7-Q(j+rPqg(5xS|240UV}vhlr>2+5&QLwtsYo=nHktL&jQ=@R}JO0Zs9 zwrpKgnAdvBWJ2hFgb&e6%jPZHHfzzMS@V_#R`55FRPCwVPJ?@bJHt<@j(WPxmj!w% zxzlFOD9SA>D4$a~Gj~>L!ThP^Gv|~Q<`&N{ZZ@|v_x9#FEt}^w&#fpA(0~+ZrW&ckEsU^?2Yu7%rjAge+_f-Cy?$xa4-0INh ze(Kc*3{?IbCNX9*LvHcR99+QH52b(Yg6BK_5Bop0j+o@2)MV z-xnNJlO5`iB>cl4S^g8%eY}HwZi71hcyGGwIG#n9)5ntnE)j2VV23xdg3oP`q{HAl zq8|9(NhHhO;Cv?p$yISlKe3Q-51*Js7u%bhWYC*j$^vnDOkCc6b9e~J3{em$iaO+t zSmNk?l9QH;%T{qYE-t@_OX?|3GDut&oNCBb+XOLhtBX%LxzHN44k)VQd@OH1g62OJ z^~wp+^jIXRtHtQjak?S(oO60OU6!40N0;YM^G+^_i|Z}k>Mky2;_|>-e2mxL;$!Un zwov@-3}WB%HkWxs0Ka^jljQt^lZ^cbCs`(1HR5vqAHu?YY?3rmZE?}b2Su&^)FPQZ z&v5ox;<80tj)}`pXSgn--{Bo?dxuk=cqfaGz92}FJ_w@GlNi@oj_fWjWoI*zX%@2W zl5{_^fh;wzCJ&)M?2E61;n3N}#CQHIAJT7Uxqs-FcJJ~ItKQ`@_q;oUC=<_d6OK5? zfs4;25bz<vipr%t)ses#^K4e7G))8TZnT$n_cX&18S zvi?GEx}3kzjxMgxIIz38l!?m&;_|Av{O}oPANe`w+xj_YI4&-~h)e1h95_f^7KqDZ z;_|k*T>FAcne-*6T>T{%c2>0HuQ)JAT*iKt72IvVBt=^#X_}h*w$p6&r&b8zGJwmp zQZk`IeDW0^?lo~~c#%u%dyx-tiD>P^<@+bq_b)aKxVXN~K&!Uf*E{UN-|rF;=2Z`T z>oi-()lU)W-|tdWe*ph3b&$9$_@OtoUKFj%KS1a%HS9-D(oS3o#bwQp9JlYsSw!Og ziId#&6K7v9TJ_@ct+>SfoE1X4JSR(1tfC%xKb9*)&7W2FGgqeSXD)QBxI8N^@BhqY z+kRL%%RwqdtYFL70n5cAmvWD%G<-)qUi3+QY%sN@eLURg>Ce4|e zUtBh2=DRQivN3(KeGMfkNs371P3b$Wa|}yMx+PAM?gfM;gng&bx}|h;N!TY6(XZN_ zF|0dlsny4@&b|b!Z5F8>a0{Ey>&HRa4LrLb*!YvjqE?3W!1A3WSLYyDsklI|yo22m z5K_>0^eI(`06|3=VdePuZocpRve>P|2{6=8#cE|%ouMD1fF=?@{&T75T+ zL`CV?h$Hhb)IdX)qCrLJCPvunCVUD8NJSYh@V5d#!Z1&3%s3V0ToxCeG7h#fv6;|; zit-D`TCQ6*Hej(Sb|SSL1m)eP9DUpt;Ix0cSOOo2r6c_L&ooh-|4}5G2?l={2&q{6 zaoo$OE;VqCpaB)DljDYCYWkqbr`NEzz$v}Mu=sOaDa`u|MoLBLm_eM%LkW^JR&cWF z^AJx(adV`_k|Igi7MSsnkKs`XdY$(g0rVe2Bc=L0MoUFm$Z=sC&jIG^c+Da zSAU2Gm7wRujoH#(CWXMk>lKF>f>B1L4NFzXF0vP_$rP zl!T4_a?vlVwt|$3k|hRy4Wic@tUrN`N>EGAYO!c<#?EF;u7o<#16;VR2R9EY*{2l0?Nw24`AG(lTKPOLZ=+ zOvONs?I=l=@ghc~>hW*|Dn_`q*S5s7INjQV`rVjxdSK903{mw1CFztgx{u$SPR~I-S(k_N=sqP5ns2EZ^-6CnN5?G8+PkrN{#c-joT>UnZ zAQgl7zyOibAxWyPK=)J(i~@ zR1EGzgC*%f19=zbgNlJ%g{1*KnO(bKHYx^w>tso~T`;riIT$?^1L-Q1q&1S(Gm$wA zBYeJ62OfLzr;1nRJ7|4A- zV385bal8RPr(zIn#yEQ!{WicXQ8AFmz&yr4evH&i#X#OMU6MwNX|+@j$LOgT$aiK) z(z6s7zV9Sf{Tz0uR19n?SVtLh8O%(@Kz;&^oxlh+%I_C+cSoL*e04fIZ?qQf79G$pQ z9k8TPF~nxhz0pl~VCtw4KA(JQCq<_vv}z^7v1kAk^WFw51C zfRT!U?5yoiVsU--NGpKpkkCz0X>c$q2KC&V@J)fEV&HSN$Yi8yUD`9fvE>ogV%3LW zMk)sB7tnf|&`PS_kHJzgkb987;3=jaozMprWuM5^&jTMg3TCkc!Y^B4Kvd)ckV2dpD%K&~e=JBXM}=D0y4*D4*ZvdoUN}}0zu@N8H?M8u;STMD zXjc6>8dT&LgwkIx(B4X6@j+aPYYVjRQo;TVcmpsbu(#YjcHD zKClw&_1~Gxz3M-h>m495IMb(Yp847LV&Xv~X5uEVvP9m6(~6;#6;s5^Wv?YqC_%>r zviW+fOH2flwfYi#gi25ofjzPT+6D~V#HR>+J@8l*Ov9M?G=VQ&jhrh+g!Kivhf2^< zfu!__z$E6uxJcFM2wf^hf(k|)>jWJCG;mZ5d^Yf5#=w4z!$N_=k(xJ+C8lu;^IKwI zN07+=JhYPMAQ8?U^ zY$XhND^=0C`(}Vo>KDL02C*?l=cZ9ygwnDKAf*a6B*dyXN+|PXA?nXDmKb8`i!QoD z0&5r|S%w;oq!5dx0jx2CFv%fyODCg|5)x*4H(ZjY62=|ku=GHsf*PKXSW7Di;EmLf zILjGrQ96rfuWFmpS-xWxlIk58HOmdDXI3Rb3u?sLhmQp`$P!!%0YR6wfsI&$0lVS+ z4z|W_@qn5uu+}bFK8Ce4%1o`c&<9%OzNfH`d$n{YUCO>?A(AOW~We{f$^! z*Ub>L!KS>ofgsKzWmq9IZiAM-x&=4y)?vkpBj zLXD6gVd6N}HN^5NoP}%H4VKJ8D&P$-EJ-uL8{J{a%dkIh^nfM*(Ei<+_4S>AXG4tN zvmsdNaUA21;=7AnNK<+cS2W$neh1`I4BdunfO!N3t0q<0xhP_ZO$YWO?V!#@5sTBd z5sMNexV}YeHk^U|!4a+pAS)5ZiD$oa&IbR$^s)TtPj_KR^$4CJ+6PTolSnrN41`ct z6011f8?~qmmJwso#PNyU8>=Lgz$5O}v|E5+)3iAmEWLO8O_GGQQ*yb`%RK7U7EP1m z>W=m(>PWPm<3X5Bgml;CG!ce!LTLWRChg-4mgq}?moQiKWQ@)=1?J@9VuiSMXmfFT z`x4sC;H}IVO`~_YkWzkydQ9MxTcH;g7fn9zynwDLcfv5?VROZI-0_fJ#1042^j&&M5#E5d9X&J0K7=+N3J*ySf8-#t(E&M4QWOEXJ@1 z?Gpk|W2C>h9ng6bm|3%E?P?}#?E3{>fKG}(f=?R^C^=g{fUPir4q`76OQ570u*83a zW-6LVr>PZ!RWcW?_(`aAB=8jiw?&JhUvh4Nm|IB9s{oAz$oVoL=>&{jhU7Hh)XT1Zot z;Y)ZBQ$+-Y=%owRD#^JNpg9Ek1)#A2#it^1PeH}G4yY-Fx&@F5Ld`?PM{JTa7%O%o zLhb-;HIX+21a2e6Uk2ns1Huh>8jwSgv?Bps8_;DET^J(pWs;WE4pi~&(0m)sq|wwW zMC)U;;-5w38v@TG@EWwP5|8r~#BdwB5qUNQmGf6XxDBTP5(5Ze=N}X2%lKu8$MjSp z%X?h6VGTgJ6peJBq$8)7lGbR$vza@)&rZsTxGS}Y2&xeED~OlCxXXf>1w3HBUdYl$ickfsFr8j!7=N^(97U^@Z^ zVUqU&7~c|=BSilOP&D)L6Y%*Or%yU(#m+7MUI5Ml5Jy?@igqXmU!`@}w2yLF|Au!w zB1tX4#WqGZi2n+M9Ya3KDKoU5xhy@hFJd=-4WRvz#F8dzb90%y$vgm49tI$O2tM|q zICCG>=e{Lc&!CXAJfF*4-cNubtH+-K^a^2|J>Yj41fnz6H3IR!#7t;-bi24&z@|Hb zxFS0>XLFV=FM3St*qph2c`#qJ1AI>!mG_NGyKOpZq*2*rR1Q(46}Y;fYsnppj#yDF zOQv;{mB!LintTa)fz1^4e?cj>AeK_LbFt7 z8LwmQ6q_RVdE&h#lBG3;bx|1uA<29J85Bv$H8nXM^TUQjw!uPxP%Q#J4dKIDhXm79 zyBlNvS!Y8)=NK*_jeBY5NXqGHU9{2`EUxhs>R=CFIrZN5L{V>Pe2v}1*VyC~ZC4AH z#+qp-!Q$g<%z-Gr#-t`wQecNU9n|6x^?Vfdked7~tp-P<20+K;BmR17GG8_X0%R`= z)JIS`HTe~PgPJEr^D~ZnydlZ!Cj@Tc4PM89Q^i8|8rLH=nJ-?i>1yyrOEg5!di{j9 zuO&-p*_$S?D9{2$0Tw6{7Fdh{u_>bGX4-EpS$f2NQmurWAvO7!mfZ?#LX0+?E-Bi= zR)(SO7KS1fxv5s&V5&`lrg|{IRHCk%N;DvWo9e-+08@#EX{raK{HF3TT_87=E`un! zLALXrg+cT>U%j_S@zpyu`2`x^cCJ!tasW!q$#%UXZiVfJ6$A_S3@O!@d`z^t&mRgD z_qJ%zIG_)A2hkJS`14pOSdK^1PEhyCH*Fd>t;&s-Haw0~&m_w>(W=_AG+!Kz=s__Hw0mP)M4k8Y5YIKq^rZ{7HImdy zrcE5%AZQ|}zEQxxq%hP3+)nV#qQ0CWuUg3A`D+`m!(2pkz{guK7tg8B3lI1=jrKXg zbBM@Z(0RD$9~B6ZghZXY_fei&A&Ptc(MZZ$y5|d&o{b_!h;h$9IwX?39SMLu`Y3M% zH2t1$h~u7rG&0ch1&aJ0+o{Fc_jxR_Xfh_!YH3W*t-E8NYusIrptvZGR46dS+EC0V zEcQebN&1}@fMRa7SQi#b?p}I(AMiYOO1Onwm(U)i&2Gn1eB4-N+zzh8U~5GlJ5v~v z8+8V+J6rD-yOw0`5c4=ta#jG^7K$g|L2Qe3=nH@zfL)S%5_Fjma1y|AAa$KVFWlnG zVR87pi}tR3I+hDHveD*KCEAiRYY)D{M)LU7Eay{W0$rm)&es}&aNUkJUvG3mFSt{w zKy4$`JwWjVYB_fa zXWCw|3w9j>f-hFOLZ6_`ldx!m7aN_bV2B87it+QIt`I}dYO0$;Z}&x;+iHdIPG`(M z?0`&DtPrL!fdQnhWnks%tq|%FQ3~lj1qklFE8wr_-K%Y1uFKY_8V8@F^B7BwuRM8dzTlYKDJL zM-ou_i2DWfv|H&zo*q3K;Lf0xGU%%+HP}ZQ48@c+ilbwRf~UgbXyQn!2aW4?0C~!o z%{S(m6m;y3=uCcx;LYfyt3+fy0je(A{T*4Nt9cLr^wcqe+;%bF+9&nZ>O11W=tRPO z1ROW!(r+M>;8Q?zlw0+(>w)zRc~Noz>VB#?236+qV!w7J8Iwllp3 zqrq@pt4;Yn&W>{cP`3~&IYD>W)zLIAXBiOOVW$AW9abQKIs?=;;#mh2_lVWel*62@ z59kj2JP_Prb%idW%^g;>!3#H$oO?h&2o;e6wsQMO&WM9}`b1Ek0(J>#(oPyV5C0lr z$9fvM3&Y|DJSYs<9c^yFgTjDiXmbOKwv=>EH=s{q2ZaT%kemlV$1Ny;u2<3K78Gsg z>(GgZd=|EedIuupe*lIXa3nB1;tvV~Ce-Q%+zJFYpg>^UCAAp;HVn~q95`;lgTjKx z!PJcqzW~84s4JA3q+3w5L4wJ*+d(-97(T@3#gI$U<{Ikl6=-u4Jp zdBnfOC(q^Z;b_c5{w2}3yQ}7BFd`0_VbXW;T zPzI1Z$|9_q-*x2erg=bp|D?8|D{CFw?l7tHJ*l!TmY7*uoc3W?*1*SmQ#mX(nJ<~! z_<=6D8ySClEbY#c`LXPgSlTP4CjUXY?%{~kGIDC+t#Ks3O_Lo+>wa+`iC6b))}7f+Az zA9a{6kLN611XrC8rLh=F>R_>V&JyFK*(s!vHQ+0+K06J>2AEH_K#19Cz*oMsS3)@h zpPX5mw>yh#Ih*#bkc0jeP(sF?YUXegcf0h;|pPTQA(A-b7oHAJFFO zUn)PTx;iw&w*sIZ^Kkm48X}qkAfNmkeq3~ILz~BX4kvQGk2ZG#(Z)?&a0y4q;YZ4( zizFsCM^ED%7$mt$0XU+4+Ka`t*2RgeP0x*Z);_aC?Kf_PAvalJ2oSGm)BE6?c-#s@ZnDBo;JFp_p6DA{JZSVTFmT+jBc-I4 zy6)q|Sd!7^W7FH6(B@+wCvF%d%`?X~j>Z-zC2b-|0F7%Ncur~!`?9#sd@&lw?;G%8 zA#n8VrvO5Yr$~*BVBrhVIN^;iqJ2o44H516sxyuoK$wQFIvK4@J-O@9h&(+b;lE$R z@_TV<4Ye2hva|%A=)cqx{RLVHE{R0{t9HFFOJ%*a)P5{S#OJL%KF`3>hG-M}vFQ;b zNMQRI{UD~j*N^3n;Q~9v&}zbm6pfx;3Gk)0h-=nGB%!3!G^*i%^0lQehq_jy&6m7> zyv^C0BIaCsfEc9}^k;GGg0`SPODW{5%>s!kJ8Q!U`cX=SnbyVtXq=!rgI*4k`?{Lqu>cxbdf(LdBS0B_$@3` zo^n|8-NJfA3euJ^)B64()!w=VQTzq8vNI_Ii@HTxVZo>VbonKSjK-+w=`#Hd(VPQW ztKcE9x7CjCW@|$SvK&^eRSkqT1M0Nufh<8DR;N8P5V^1#Ia5ySg;mOGGxI zP75ByIz-hWY0J&KndqI`@Ih>h;OZR6^*n*;d#-Z-xh8eBmNA%(@o?}cKlmyM9X(bj zldG$>hX=DkQMFEh3zK!QRNYTwLs&}GFK{h+>NXv$RIk!n3}I=umx(%G>oS}rYx9P% zuqgUMuv`(yz5(p)7wt)qv;Nw9Ls(YSJR({gNEAC1*n6~gLzz1&3!TWT0_RI`79uU|o|x^c&RT&}_rmq^Rj6 z$Qewo!;%Mq+!>-jW{AVxAmF%HZM$+R;f zBmk?)_)vsv#N3ce=^~5P_i$}6pZCequY28M#u+~cuE;7Clexp2BfV^W^ z2;~OsA$UJ^AXo3!T90HNs5^2bYs6G-;Yijd`Y}?YQJ@^{B~V50CU41LAHwd$tzedZ zA+{&AhNGCb7uUW`KyNjqecJ%-Pm+K<)?Zgpscwz)u-uM)s_SDRcOAvXrENq!$~^-$ zAeDLr$R4A)N3%vjPY_{OrhQrnOH3Ti!lE}IQstq6tlFZ{Q2s9JYB>8r?~0T^010e| z_U>rbJbF5Gk|*B47C#2)1zK0U|2(Z3c|mC)niQH5pis586!h&o5#dyZZIcvien=sO zbx72J87GO0G*$BhA?y|Hp|LC{Z3m`BiTE1OU_wcX_>xJ) z&uB#ch7aYkc6lu8(UZ@x79fzesPZNj0wsk%@g6qw9&{HW{U2ai@R_hByvsS`*c=4* zH{+Nmos&NiK+dCW7o%_^eoHmNt@(Ha)GOMM@vJO*G|lc)0e0)9ogU9TJ+jEvo(T}t zh34m3Q&mf~hbW#CWB(0`93@|Tfm=E(t^+OfttYTNR;-myU|pl9683mNKmD}lCLmC9 zw2yJ=$rI2iMj43Iv{p|e>8DMAt-1$U<}DVjQv_A>#o%q`f<3~9qrX?Qp0}|a+dS&% z6>ate%-q)TEJFKw1Pj$_ZewA-7#izGfjZEbJ~qdsr-x6>QR5p_q{gRa#3|K0;x3pG zhXAAb_)PfI8d8J$|3a8yAKKi%z9j$BI_5Jc%g~1AvjM`DuH4-9_rjbf_;8-jXJd=n zQDXYzW}UAEF!GtY9-uRyDM>bxo+4(7$=plr9rc+~WJ)_>jnO`&-8qrv*#=NoSIKf| zJO@t1iNuVr(-ejgvOg8_ZX>x+nlUDFt;6hA7TrdPZYLSt#)xjKc(*+Y;2@uCcNDNT zt67CY@}33%E81rTEGOtPF~%czPrwsAp1XP4dWB{#J3wArZSW-4 z5}A3)B;>hsgl@vQ;uXh&I_>x*mKa@0qwFMK!Z|F+4!KL~v|lG-JDH*-OlF;AW6O>sO1*py?`T`^_C5ctCf7!X9wJG8nj4DEoJ)+%Ngk@(6ZCzFe%F$jf zVr{XA{=0~^U|(p>rl8eFE1be6W_U1M8#J^$tVpqsA=oI=ERQR4EX5`Tre%*}kDaD{ zJB5uNG6|xeCYZ}&k4-mN6D^L|<1pbXgmGKqVrkb(n;}ahi#wK55#=FEmL((BVl;9s z&0~Wd+WM(%N(9-LjBD8`OR*<4`!qa`U8^;p#)h%8+R|w(n^U}t!CUYPKu|n4jm^zi zfcEW(Ld$B46x#&Zm7LU~La_`ewuCU7EFrNkXyc1n71o~*i&-wjhL^D1h9{8{W@EN3 zm%;lk(!p!g_$L|(PHl7v^CZ%KkamNX7XVy|jWZv@%aDFmTVKL9>RaU>L2~Obv9G-g zO9-~Sl6+U4)@M5NbQN3V%dpB$on$3Q1`&zU5}))Xem2k|Rtc+tGnTf++T+vlD>FMK ztGFg0w=cxUyR=RPzXFAn4$5lO-zOpCE#l#mv>OnMbdL?6`p!ER-G6_pf9FkKuan=0 z6zu=aFh7erz8m==z?fkZ46U^urSPm-T5&1s*+dNJ1jf8`xR6Mv+sm|+wg8(Lk1|#} zQ_8Z~8tr;1OK^Nn`dhyxsm(j%OG{ej43>n0QJ)#CpousySZo-M_-3zk3d1o}-vZT- zk48t@sTr&R8>@Xa1D>%%i!8&fn6+9?8H;bUqXEQ6V1a{#kRA9?F2faU%u+)DG7!G0 zT~}Jh7KK}j$|{S>wOMzv*t%cuU~XoeJag9k{JI8rve_&IuRzG3RX%fSc|qN>MeL_A zx&Bbyf|YC_3wp6B+4O7elQYbj{@=XYK)Z4udm~~`&=lqUE>kQPYnbxuVeR!*?4hw| zv2Rq)gfLl_7_%r=79v^Y_x}p`kpT<|puF~1z+@awl`~rXY8EShaZ&*p%IK2I_%?m?SEZ@V$_0WXauN6w{Mjr z$6;L-VqYSEt^`=K9d@nC+n5eHECAY@pyv%}bBlrj(vLosci-W2M6<-KVcV^WZHcY3 z+>o<^hJN~~{QQpAe=Tdw4r;U4vW~2yws$S-CBGb}c@D7HF#7GK63eXC5c@dIdw?~I zvRJLdl;yt9ZA#G|CDCoQYE=jD{R!%mevGLcIW78ZAUB26EG0&p^2C0h+@4u8m3L3$ z-Fs-+*YK(}q`$SVy+4QSv4)uFN^4&eU;LN&ViUiDfxrcsM{W?Xf`MYAim%k|KzEfG zyYkyB9HrEZDi#w7GW(@o*?tU4UgEAvlz@ROxZ;PL%ovMDQQ70XWcTk(XtkIS8L*&*5vw=HiDBi=s;OK7fbu(+j&6-~k zKV5qh+umnZv(1{Rkle+DwJ~cVg_7<3BlBZBm~{T`0u!)MN6t0o&__S|H72o%F^7L1 zq-kOKR6A#4PCM=c_w0{Y(K9%Vbs4?W&$RX4 z^{MT7bC(ozGy_xUDu;8ug{Q0?B$(ys0N|rK(5FMu3H@5z=;RppA0%pBy}*psi$moU z!!-0mZi8Z&6FsjUtM_c~#^`t32JL9-!)G^kCRm_Ib5kt+id!d@)40Vs1^32O zp+e(;zRvg6`?4E)(Qmp90j62#Lh72{fWzt&DV`vLmI$5lh7YOX3FH^{LV|i zQ8%nEGDAOu+ZVXlkWzdZyTO0<>)ieYn|`%!$Q$iXlk|Ia!{F)BVjZX0p`WT7@E&3& zjg><76&RY_tcYxeZ6%E#dmD_}G%P|#x3GWsW=t5O{F`F~Vvp9@?9k(#kWMy=f4P~V zLqN#UPv{M$CkQVv=hvSw%)Bl8Yhw**c4JnJYd{V#mM{39vC0N4vb50_!!r$KTElLP z#gyvr+P?sq*~X;uCsM=r=h#OZ{$~m`17nUn&CtQW=?EC5ztcc*LTMpQjx{2YUN~Ub zvT-yH&U#YCy9V%UbNys9T^QL6Cv$>L#mzKrTG&W><{;;oI-7EEN8fN2zopG2Yx=*j zeKWc>Jq3?54E{c5%^bbivwsWY@1?&%-N*G=;RCtLQ4W|7~FOf$Yqcok`B=WECM#v-n{M#5)s_Z{OoAYI? zQ-&}jGRU_VHH_H^IEI)pi5m!pv^$KN83e}k>Bk11 z|IO7Op z3_iah{Icfy#MJqBf%LKzeKPIH1xO@f*%LRr^o`wX#%7BjsmTZEH7N!g-`MF(h3w{0 zEcSz4bfSQrsLv`-GIoh#y%41HZUmx-+#Y5Ra#!JH{-kBhw?DxBnQDmP17dq0uz|$r ze6s(H>fasmsk)KSbT~6B`kfJX$qWVfZsbNzS>LUSJB=6#z1hWx7hg*;6n;$Q8%!gw z7;Yx^L0qJfwB{Jfm^6L`hMTJNF>4~P$qpl-(%WNn1#okVPqIjJ`jRc~>g=UE7klY; zi(nMc7fh%*_w>3LG5_sO zdclnH8i`XN&KiolTy>zv(f@TKM*VYMyJ3@>LAM7<2e~DUl5Waw)qdK|HsCSHiaq!N zbU(T|h&x1buweyyV+%d$lYpvXdnUMqg~f6O^wP$UU`$ zLo6}5is&8&JNFGMd_z3cAsMIFXty3>t>tBFwR;b-BXaZgTCXQrX67>+z_ZoDWWLFS zP`ZtMlz@)_$ZuB=d+BOTdy)Cq99K3NKL)wk0ydWB_+=L*1gMSa5h;oBcq( z1|(a`an>L*T#x;A)vvJ8iu}uyb^kiXd=~lpU3ClIWVZ&%w;irKb%y z-&$99@hr<#zidM(v^DCbc=M4>Nm)7xL|m>YV_ zYgUN1<_b&oZ2;^H%Io0!6@?!6(VNWZg{o&z=#k!H-1ff;Tw^>FYl1@WKcRWGZL)S^t#P;^m{%F8V(eCt>!iq`uW@!&GF_=l-*e6>7j=U zqopSpqj3YAZi1i0^X&Fes3!`&-f|2|{XqO0XAr*54BXBxl0HYz*EJ_E!=(UoM`0zpRkE}zX8;=KZ6OnEt4jzJ6N?<-Wq0r63*g`0Q@)!!e#PM?! zy0N#o2nwR4mf+`5D0@-%p}dAdx2HZrq5Dyu>39_q%0FhnJy6!-EJ?Q`eDm=^?>c-4 zozQCypGTpC=6;-g=)krdhZ;HuWz5A(Vo{$6T6)u9CluNv*Q3z81K&rX&2Ka8S~}x8 z1chD%csmNc@b5kp+PXfCO&@LiUI9J!Up{Fd%tCMKdk%%($oDo1-$`L!X$!Okgm`X^XZG|4{N4cN1r&Ng*&8UO;Prw2>tKu&g3@_8EW4cW7g!YI7k|!;cnz{)#{j=&&L{zy{QfKYHa)DT)u}XaGIE=_m0a znEWv~B9u4&)^5SHq8vs^dA!*ZhoWOp z#-cokV*Cx-5C1z>gAt+pb^v+*AbvoP(if%OAxZM0JdQ#?jJ*7$!Gg#j`gdlm-{)xb$pLcgbp&xBufwAeQo8u4jU4o6?Y|v`Iw(UEX5J9igABsY6)1O>N z__5kY|76o_^bPI#0$^K!`tmyM$`#h3D}CkcJPLis>>Cs#4;f>XE`&wu`3drIi(Jw^S&~Fsd~a)pbP|vm1;u63HyeM%&%fs> zco9=sMZuJ!eE#3_NGAX&FDR}klDvk7grj1U^YteyOjZd}@(Yj`o~cg#}Q1T2aBQ z{LIzR=br86gkw@@eh8n8)o3a1uT zO2I)UhtwGL83pCjr5>m>>mp6YrNTF@ps+})5@a*yluHkxT3%F82-Tk>f}+ZNbV(Tc zCgZF*71Q#?NPb1LsH|d6d65o?wZpSXdv0&3HJU{Qlc(jE&zxB)4MnSBazPm(Cr_8k zjHZuoilvokPb#P=%AYw!+G*gXmd>11P+B2f0093p)XX`U#L9w6rA7Fyhyls3fO#fQ zlTrZTrjj}luK4z%uF@FPD&`gy&5~|M4OYr8C@(52sE{_IIifnN68%DY+=R|jCtOQrVg#d6LEuPpa3$9- zE+{3H)}h&{le8Zfq4x>YCX^Rd6qVmzBsGpCVtfH~*38m^%Ho-2Qg1*I^%c@&RJehq zrA95kpmOGn;>pq@0Ki)*0Hk`9Jv!+=2Dnup7@ndTlr@ zdsy!cKi~;wA1#jIztQWfwP(0#&`+Dha9g>*b}y5&QU)~4>Nmf5AktWe4mYMknt)rh zw;3M54Ad;LoGA}-YoE$;yuHH+-rZnrh%Cp&4S_N@Ng&ptT9qujnhuL0?5Lswl256Z zaJO=x=#(cE0uI-X%5pLrp?xCDO*)Spxd?tTc?e2|=q}q0qRejp)jT&-#wo;KBVin)1z&7Kw*A+Y=7_a@P$eyGL3H~7krexx~O>1ERU%ocT zf@gjcwS^YkSuN1^Sn$|zl6J`gt54R#ta1t~)UvH|UZ)~%VPOHDM>~n}bm`E2=FHM5 ziPTkJr1=gV{25iZ@Kmju1WnUku;MvFv39|V8%ZTvgiUtEOm`4tzrkrdVo0-6Ezc%* z%$yOPB@$H!jxTGV(^1OmBwV%&k(?TcKJFBbr|Ci*M(Vv zZx2*tcWN)#pl71Npr%gyA) zOuH>uPLh`}ZDBB!T*|a3g5e&^w0{KSvA}XICPi+qtGs9ywoCaObsw|PBDsp$3QMW7n%O3E#Qn^g z-wQjTH4F)r(q{hcGm8t?vdH}Wxdj!)Scj)p4w;t16wol+=Px%JGU plTw`J7eV?4W-XXBv%GR6vs6qfpRO@$;hY&W=5MOIBUBzK|38jxzc~N^ delta 37773 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 delta 41783 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 diff --git a/records/wasm/exports.wasm b/records/wasm/exports.wasm index 4ca4a8f2d8792764a97ddf51e4998c1c30ec2fbd..b0bbb150aa3d10e03c5a8f234b27690c62592e70 100755 GIT binary patch delta 34134 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%0D%yb^*1C;MjXdO$#3P7tsE6`Iiu0z3V zlln*tVPbkel8Qp_LAnusK(9QST!U{Upge;@>9iA47^SfPfH&FPA(?-#puXJ?3onI*QH;Mjz}79sr}6jWMP_RZC<|U%g&l7!!Pl$t z`D~mi2cszfun?sb<*x*Pk8iQc=nijV2;rZHy79LZG&@jsqFfH4fBG&sH7wc&Wr-i! z7=Mr49YpjGG5LAa|3DeF47nwQek$5ED1MaXDC<#bhN2P6F#khBH2&{{ z_=(dxXod3lL-=?eugBO#mPs#k zx*LVw(G);n(Jwx~Mxh^fZpLKL@3Nvcp{v!eF^`RY3H{N7+OlK#I>uE%SpeUeKuJK+ zP94W@V^$x*=ZN&x$(A~3ygduGPSk>kcG|{c%-)N>B(fZZz7?_oh5lU{Du!XC2cu&3 zmkiIUnOt5p(^n^i^_|AQXv{eldGiLac?6%jcZkPNkvVy z)XoCyRTNf9!%(U87fq}3Nz+jk9ak0ICfy?_YRapMN`2CH6F0YVTD4C)igvkgu560~meo{EErjaQWx#k#vcZaF6>|&Ad~VHy5~b)VD<&6-&yMHu%~U(u|>vS~A?RaZ#^0WL1{ z6;&3JNvb3twJXZX&_8-BEP=Si02P&$RTP7_#IMtB1#ogr$rN9;bTr5!T||9mQRNKj zcU0Q+l$zLK)u}}#KB+5e5L{7HDUC(7(pOXh&F2u_S6!%MR5WLi6~#dIqUkHIs;Ttp zfH&=a?BYm$K2_2cA}A`JT3A_8Q7uJ;Ls)T9IU$Q@NG*(JWl=c{&=<|gMOD7Sic+b_ zKusyDm|Rp=B`pM?q>{XM18Vq+5Zte-u)1h+nNNDogcMf!{6&?;Q>8NiajQu`5)$6g zONx&`?{j^=SyEfnU@-j4_P+9>Drp3orIkJ(OkPzjm4&vdq~*i~0|W^k1B6eR?gmxT z>wpMb_mJ3St>|AY(H|a38WdGk>0aEN+EZ)FXVCEapixxJomSVO7Lc26=^<^#oqG+G zDfdawquEM2i>q(utm@l(Nxz`VzhPBcSuqp8#@AbwHRaMsG=u}sjFS2akC0XX$bF-* zsJde2v|{NA05G@YF4A$-XH`xsua-U|C}dcou{ZWrmP~_pd!n^gZ?hI{@UIa`^hQXc z<9{c;7Ro?Ubd+!2tO^8V_S~YXne4H&1yYt4cPmTRUKqoy_1oWOqm=YWJ(4IXHHj7t zJtL)BCM$p$+>Z`2E%j51(M#<4uonc9Yp-|-XsbYw&=r;=gJf_MlcYTD!27Hl>!$tiKI_Q3Yc0>R z)TAEhwY(bEXx5$Idy-XiJNDFWJ)(WW9fq8fm)9_Hkp=^_Bj@m?*n!%2=kT+rK_2a`^DNn( zH->jPSnGM7B_$2vW@sRRSchum=b5Y3umqAn&R0b8DNzz`I0p(A9`ghoq3t=3FKCU_ zPM&8idW;&o5Pn!Z5+ze~*V+T3mihmuscrlLOIC6_-Jo^;fVFnr7}A|NO{2BjKERBO z(H{H&wi&C{e}IV@r+xSV^QMkZ2^u9dfs&dNw6qK0o2Yfa0Qb2`n|=Y`oV{6Fe}VO2 zw`gZB!0fkbzg~b(6>2FLS?9D#+`_^FJk@m< z|4YoHAaQ8ZFR{jKx_0*^%>N8+&n3JAxXd<_r%kDgWOn}xNxkRvKAlvHQg zO3LUy+g8k>mDa+3Saz$BIQSN2PQ|p6>e#|U$XUw;j)XbcD+wJw0AF?s>{{y23eS-i1 delta 33757 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 M&)q%jb3RJ>KZ!6Y$N&HU diff --git a/records/wasm/functions.wasm b/records/wasm/functions.wasm index 0f79fa02ebd1c582be4d2d447c6064aa3881a453..2f99c47902be59bbe299367fd6e1562b44cd2c59 100755 GIT binary patch delta 34812 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 diff --git a/records/wasm/generic-functions.wasm b/records/wasm/generic-functions.wasm index e4a545c31f593ca8db909118fb8c951ea86d3cef..9941ac5df292370c0d8ea5cb651625ac827d45fa 100755 GIT binary patch delta 39967 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 BB7pz^ delta 37678 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 B>D>ST diff --git a/records/wasm/hashes.wasm b/records/wasm/hashes.wasm index fe458395abe6f72dfcffc534207ac5e766cfa35d..c1c1da5ba674bc33a4b6fd7ddbf655b18f919a11 100755 GIT binary patch delta 43369 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 diff --git a/records/wasm/hello.wasm b/records/wasm/hello.wasm index 905d488b0ae82d99de044a0cec9c1bc4449763cf..774e2f3630f77674cab25fbe160d5fa24a1edcc6 100755 GIT binary patch delta 34063 zcmbWg349dA5-Vkhnb`&P_kX|te(0I*s_N>h>ZgHKZcB}iwI6wbKgm^8G`qO0vZ%OvMhRW!v6RpdP96A&upLK~YK4Vg z%ei0atMtuSQeR)sd>8M>wLD85Z{8eHc03Ta{e&yworhcc^LG>gq z+et7lp-_fBo5ZHQ98OY_9)QsR{O}-Q`saTxDjNeJuS3R+QhX@TWHTt z=lxEwe#~`*fV-l?!(lDcNPWmg>o#i7+cP6BXhKr2&A0P4?MHjJLC4krAnjl7bC$av zFu01l@4{bVxvzfhmAxL+Y8-8%5Bv$b&yf**`YPxi?L$ZV=u3ZsriQfVd$r*q$t9=P zUCCX_#HDP$OMi(~T>D6JgXS;gj^N?pu7?EGJ=!ZFJyJH^fgWi#sePK=Yxmm9J2IB$ z@Y;P_?$9!w<@P-)TwY5}^n|lKrG?k#Rq~X0?Fr}jWEV_>-st1C=P7Ys=8GstPn*|~ zr?|8}sa;~>QNS>zuQ$}k=MIQuUWc|Rbco;R83x+0JS74>Ta>4TqZOW~I5UCa;Xdwya`hA|K1iO43HO#~ z0#eVkC1LgaNRtwtXY)WN=H;%<1dj?gTDNNX(H&y$CYV=oZJ~RfVsqW2Esjpq)P!+wM|)xs zaZrW(c8k!X&O4!E_pmEeOD5`u=t+FLb~$IoA=5boNc-4s(CeYIKaf_Zr`&B{z=; ze6_o!vQE>Q+zWtc=jp8aq|spQJoSB*5#|{AJmqnWb-C%UrHVgd^#%Lruvp?8c*HA|D|nB?adEp|4iM; zFEv$r>$tLGt@iJ<@1lelc}hJD1TWaGeV+bOtQ68qc3Di9Ij(!P7cvUarOBT80w?aT zw7d_2GPl*u{NAQZtsLCwGvbOqp;^>NE6iF?UEa-l5M6F<(-qez+6*O7Xm($^4bA=z z2JGE-nn#Z8y4pNP+Ro;Ov{vnwDC;&fJ=UhFUu5!byV0%W~b)Uit0y`kxJ$BvvorYW7v`O&7?o!z{{rY%S(!QhB#2p_MP6T)#UYzJxw{uSbx3VZYpyUGO2w*9fig`-Q_9@=%ezC6oT0^%R_;cESy5%%K7Q`nl*PG+bZ3AA%wVvGvVCW^? z=i>T(_a3;m@8JtMPGY!@X>~n@VWekz>;$|lpJ?9A?}lq^Pam#-5_oaX{3`_>D+PY3 z=OE?4PA#Ta@4u0lLt-u@uIe>`NKf|as~p*>MHKYII3o)#^XIj~-i0vR`ra-1g{H&3 z-{614DiW+B1*_eC8=(9(zV^*e1S{|M#(CXR`4v7=oVy-Tx{j+X*F`w)TJ2PNI(;oQGS}n!zU(enFcstaX4smkvyH{-Vi8)y~sMT zmiA-RQhYAM&!fU)nJ?HIA&`KbzhCPzvP0ZUq*J2nr0|@V>FT?zEf_f?>J-)cG1n^s zc2WC!WG8-6OB>b8`Iw~Isja#$U0JtFyM0v0kk<(2I;|ZaH8Eiu31av@MjIp5_hFCQ zb@Vu8+b(U*=z;v7+S$>4aCKjsi%oFTz-#++<-A~-e1XhY?zKrpE(Nui>wWFyb%PT= zpwYUit_amyZ7@p?*V9_NF+Je<)5p}{`p%g5aeeIiT3mC+PH28X$S7jO%d(VfybKfK z`cT_Cb~GI3(%9}{PfNb>z6)BXalPOMRpXLKs@3D#(e3EC#E>_M#CJ)1cU&G;=9uvx z2T0uNPdJdaYSO@TfxpVfuug}09W)`KK6vH#lQx6dn#rSay)d~K zuE{r+^Y^qBH*Q6}bx}|LbW=&uUXF&VcpHC5J6P=HuQ$C>ypEdnY*V~kb`<=bfVjk86vV~&KN}Dc5p^7q?xa0WD_cJ<^hVfQ!{s^)CYMl?G2dH z*BfiNFi6&y#dVcYm|#R_hI0{Xkk0miMGQr2;^V@lM&bG*nJ` zN4gc43t{}_W0HbLM7MqY*l0PP>zwv=dH0m(Nn6_S2Vy#bxnvX~VO%q79DiHeLf57r zW<3uJHyxcF!YP+LTiKb?@#RV~;!RaI;rdfm5hiEc94}4Ig1NiU@K&!yqv=4+Rt2|_ z^P*^yispC2Wa#s~p5P_OOdcn8YOl=iL__ce+59Q3-GV~d@Mx>fBQupjr}zOmAQ6n<%?2N z#473K0wBDcwga>$z#|og*tIBlpMWz8+9zo5Eo#R<(?W0R=08pIlCDHzLVe)6ZVxrp zNIXdO^LJCWP!rYq`eopaxl}ev2p%w;<-R#{edixM`=GrhUConSeW1=$c1R+s{_r3; z&@Oca7#-NNtey>ygbZo4AqU7WVY7U11CG9F*j-Cdo^qMG2AU^GQXlrWdCGgT>htF* z=Z$L60JBJ%Uu9>a{xVR#NL95jwmd&jzjE(boA08iQ6KOI=7Ma~(=1wFN;;$Ut88J% z6hvgFL5OzQZo$)rwPN&baXso~(?EL5(`~+bWl$unA?)B=VCo(y;C`v?KoIz-oQ!$6~#_tNwXhCoP#u z0vub?h6uh`QWYaurQ5tA!WYDt6-%e53ovW|bBJ-Fg|j@(77-4GY1HSS#nQ}3VHD{g zfV8|Nb+YhgJUS53CbFm4rTl-pc0`bC|E*(d+i&TddPpd53UZ0uE8T_>rC=Ae?{7)Z zFll@^=@8-Iv(1gP8;_U@iFaA+zN}OH_Y}VA%;z5%>F|c8IV6vbd$gs?dPN0TlQI{z zSC%F5@3ns~%fz+W^6pSiD_ov|M#b`ETvsmd+Qt~G+6+RhQosN4#~&d>F*~6yF^D(MSQp%M7AQJ#M_UBTeS|TRnae zukZ>AX?ip^BNDS{Ms`sAf{~c5KyZU@8O@nWav0(I{}8Qh(d+*uT$TFW+Kk(Jr~ZB1 zA&^h+(w@7mCpjEnkul~fQpAE8qLAGPQLiFm(}sO83@SWP7-pm}DCne_yf6`tm1vi_ zq6=32eJgIAeHHt^$^fBQ{d}yAQcs5JrqD(NEn(hn3QiQzcH;b3p#OFjgrT)UHY=-L7jZO6XJ2yK5zKp5rcz9wT6sUBxq4Mzj8LEASGWtghIVvS za-?Y$7zmJ$SEVV3c4;B2Q_!o`>Q=;J#OmjA|2#N`OSk**nC?^O)uyX>nt%?-w(w|( zP#WN=jY*Wt-`$u_oA8YRLF|SgujwgT;hp!AVZOYxBZNu0Dg^C_K(y)(%2#h5|Rs}-rb5t@{kR8GEPj-|%Az6vu zr@eHTbjQF%L>A6$BGPdtC+2`Snf48+RY2-D+eFU#S1NtDY4Mn#;Y~4xYz#-zSW~^s zw_vWZK}b^qlR%D&BN(8`QJHj9o0myPJ$U!r&PMFm%sz6VbfAwSJsYPi^v4_uQsLm3 z@as1}9xJyu{_=G0^LshA&F6P%84ZQlyj3)`=ih3Z8#?lDv{MZU{!hi~f#n2;4?dgg z3(@2QB2_QOaD7e9NQjh$Q)%wnO3gG9*xWsPvDx&!$Xs6%23wRD{;CQ_|0aA8)&xa@ ztHco#ZSIy8BgDGr^W#Jb!_?vk^gGEL8)5_SCvE0EkGoCiWN%id4xRGacNCcJTPyw9=tw1ZX4UM{+{)tW zy4tGTITghVXH-|!RZhz-TUge9er@i&4mq7VBM>7vqRc$Af~+NO_wrZ>!|( z0eO4zpcpXu;qKI7+{0p|TjXuOyuB-LAx#3;xk)IYHwh&^kihUmS)nxiBs*i1wfdLb z#O%65qJ#gCpnOrbzCV;jxa3C!Zm_)7$=mivgt$-3+dm~R^ie_CRo;r_?T$x<5Z^v3 zSob(ANJ`~x{b9jnzihoLZy`s-upN&i(&)pFw8|oJ7dRR7quAJ23U3s%j|;Yoe-QS1 zU>cm-+`VpL+CY<7ynaLso$#0#dcb3|33%u+Va2Z{F!87uEbpiwnJRB<{d^ zZK$96xVYs!E+}t!TujLU*?LdjoKFZ`7kQf^Z>yh>vwkX)u~#Ft*B=tIe(njkI4VCADWYW2_qGuZ*GKt<5n(a=pAQk+*%vq|RY6j1|XN z5>T^Wpy@?3Eyj}ICNvj|CP^^*xR9XgxM1IKTu5+Mw)isw*k0Zy$lG#xJNS&~_nN$Y zC2!%+wg_9ON#AM5G~dH<%0f*W^z0bA-Sg~Jy7A|->DK5KDooGWUtlyZvweiyGPz0e-k~{YM;ql?3sbons_EVGv&p>Rr8i$+xS*@8uD$?YO&5LCECFsTlk}*7^AWgbZU1ffqyLIE4s4AFA&dE)a&g6-|H%T1u_g36HhrZ zJg9#-1gB!+`=Wm^KD&hx85Om(wGi-Xd=rGHqL%+P z{xQFsvByxMcK_s zI@?MF$sLlp+BhYFu_+0FC@CAYkv}D;N*mh>9E|M&BS>Itw8t?rLCZ;WJd!^Vx!V!ZR?lh0TNvRMh`uZ`5wQ+`=Jf;I zg-n#leSXa6yV6=}oA1j!t}|pTzwRU2(U}e-I5SA&Z0= z%JBdZY<>&P<;V+x?+-5)0b?P<1=99ZE@RJ`Vx2&RiX%rb{yc>F8Lg1Q(I>;}shEMj zrvqclq$zBTmyxlkn8=R#jMXBp(33UBBN0+DkhUpT<(PU9QZZ(rWnmx%A^EVzUttU? zCUbolW3NfEl*R;1D;1OZu3n6tH<4#yIVvF^35AvvFm{XdHCv+%4ot=58atG+rRE%b z55=hXO>8F!HAX6=G`@fgNyS927$P&h(6$$Zp<*Iu3}-AB0+|{64RoYp;%~YNKN!}b zBJj{(T?c}nrADmrddvV7v-heI*z20e83;5gCUV+@fF(iG_#TW%#l+W5Wo(}8%o}^d z7F0~+S3s^K`$H?RH{xUPjm@&D)P%*K~%e20~H4imbyEzlIDZj<}jaFkBW6)SS`Z44cDrU!P%NZLl zC(zcI3_Yos$h{SeJt0GcH*Uo$O~pk147TG;wm*h3M#V%P#(@4Oonlbd7>aaD#l)6X zGuAH1N}nS{sF-*i_-~|8YGWeCq+%koMl#k#B3a{Sk&IDM_h$-Mz708QffS0*ZhRb* zO2x$9I2zUuF@(xN+NWajr6~_~NZNl;G4WZzR~f7u??psVF_HHS(mwdTxoPoDAcg6q z#kYctib)!G)i`x98x<4Z9i~Gzw_NB0C_u%;kGKl|8E{m9mrJRmA7d*KDZ)WN1t%(I z?+pVO3zOF4jd#MVR7~U(@LsqX^<<6rL3b)9@)jgEIF2RPWsFHheMl~6cXmKpgiHP{ z0d|7yTa&xx60gYK_W6ueN+fUGfoY+lo{-4ZsCNzGJQ+SpMKwCp>PO3=U#J`hji@Na zGSN4H(qL_Cyb}^qQ8q|qI1=#9=!%|dW~ylZES=PRMbt<)mkH? z+$)hv<9{H*f80n5$^gl?Exhm*$yaGCMFybaaLCo==Y>}$pbao16-S8}miB_do_GN= zQZZ*@7$!FuUzY$6LQzfsBL)$2l9k5&=t;%wO~~%1rE@??h$o$|x8x5B&K!Z2oC5 z^$;{kS4DRlE6hSaHaMua8)oU%Quanab_v;483`b%z(kP!A*(g0Ylt8{EZ+7AZcT56jcd!H$iQl8+MG_f70_+o*&s0zz|z#1-OL#OJAb$=0jJ* zQCxhT)7ApSg2{R(vo&B!L}P=~X0xN=r-3!6)Alk37LAQgd_9KbiFg&4ek^i~{*lTv zdM^S)FE0)aFf0iTVmK{SGW?1dmWE1(qA@)*!gf}_#>S^aeFBG_K?Dz>D~r>cY`jPR zbpVEahFlcS`-It+!li_SePPI7Omq2QNSX+N=?6m|MtF%ve;D!wJ=e|)``Z_R5s1vi zeJAu&`=5mV(IU4{o>2Q!uNXSvYX))_ONTYhA%O_u9r{r_Ps;BD*gGKhd!Ps{GezV%z*hOdT(ZNn8uzk0EP~*P|S~b<_m(9}eccJWh2_Sfmed@T}N^ zo8+F8-yWwXmcyx^xk;}Fg3r+(aPUlj^IMgh9|^o@SuAmBvqq8G%8VyE`yBgn0@WAz8AN%)Jqq z)xe}w6MZYe)7=PQF_CWpyV(*!8Yi!S^qzhIt_uJ?Q_v=!Y3MHOax(xcBmwC}pZFcH z>o&cWlehEd-YmsTI0`xk?8n@*0Ya>^golwr;s}&{1Vbgfk7hcW$>*sRhP65ut%Rwl z^d#_Q0_UMsNPXOA!Dbk-c>$oY0J(nyB$FV`u=ywbsBJPUOH0!Uwi ztN_FhvV=pZtP=FhefJt^j)Z*p_HF=^T{hhl%3Jd+y>}?ja$ko`-=4Zp!zjJshRpqh zU%x4oC-`3mYC55YAyd@=m9PL6KhZFEzk0@65^@J%YXEa!4+y-0C43D?g9(A1Si)&Q z4vBuuT?w)_1dMqK#8_!^H5itgk<>D1e$txIlxeyC6oeGhYoH( zAPWex9+0KPg1LJwgNqaFNx;?<)eJz0UBbTs*(#`*`&|IL6EFl5{t$o(olrSS^sQ~n zab!lg$+*5KIwW7Pp?y2r=g^L)Ymc?Jq@?7T`kqMcy|x~})O!I)7=_D2DDIiJ8?Mj^t;bPV@+Rt9iRxP@37c{G2*sVS z(r|+_Xk9{K?!_zhEhQ3K60m&<8i;nabgndQ~&H;T)JL#swe!+N{Jv zdjXkiR@R!8kIc$fROyUf^D#2>I-xQzjpHe_B=U+lS`|~85cs@G)=xqvz9^28FH3s| zp~N#H(y3EYdJ3(Pyln*GQc{VoovioK+eGo?8zSJsd|1>3P^XBbKO%|}WO|An2Ir%q zx~kyG9Hqd234wT*uuz&iZz3j?7erwoVo)F$WC$-Th@y;}k*aTt;_(h%uj`S3`#sZ7xA9lmrd^5Td6=HD?_#%fXf^4YE|Jw8~`vSC`VAv(x{vSAspAv$0{KQ|Z(3mQC#QrKy`7+KoMs0%x7mv%}|xrr3q zE<{RC2|~%4+HMRa%&^@wgX|(4hNb&cmdUn=f;qwL*2o6w0eOU%$dSkwFfGThFXShq zXa{Hb?@8(F!hcUj368H&T)rG7;!>d)J0;=sXczTLRFxmSQ>GH)Re?xPX-nbrv1nk} za}=u~F45mfWKNghdkckfsB0XYBwYr7q#!c-M+qvz4Hbbcn&~n#BNNE^eH8^S~?c%9VW5GK?YGH8N`c_)(9H8aU*((uCAnlN^TFt#SlnBk(C z(xR%!)F#VZ0?oNmx6&mC$IjO!y)+6;xafp!&0^Mm$BGvDTB2iQJQ=-)+ z{8y6nZdtFVP;3;*PACYNLf)b;zS@Ek0RekJ|O>=ji6>A4oq%q=)fF=!GR!g z6b9IUO+_NNg;5-|Ov6IJob7Nui%qREDdZZ=tlid%{&d&R7I>yQNi$LwrBWxkPLzo$ zj62nuvFFLZ%7iK7JlIjC35PQP4}m}gSh+Bq=X11&>i2tis$bZ!Qdr0HDEh^b>sLwp z3R}+>b@yxtLwlSQ;UfzKkh%8)nn%z{)a_;idKu7zFjq=Tf-aK`Le?=h5u~0o7)8v( za?Ar<*+ctWF-gm%812v&nM}5sy98Z(5I-?t%f*CQK+kxPi*-sOJoC^NYn4H`2))y3 z;EREAXv&%U{&jGZVT6jy#-R|+*m5yr?pM$!lMs`D5DS__pwq8FZ6nkQpv2m?TsVq* z(t7!X;W-3^Smz9ZE}$(kwQQp=_C_n5U=h(4`U_Q8O4YNmyA!4`+J$HfTdkBn>mIfN zJ1NT)E2SwcU=XQi8M+GbR!Z@RD3#=%4utUOmGEhd?;Z~fCW=YtCMZehJ_j%+l6me$ z2jTZC#Y}o$MO!3&WB5NnD0b9NIEYvPR!YBj7ie;K@96@Jp_ec{4bXZvu#sV?nTG~l z^kE4+(LWDxmPKDlIDm&k6WNLKMp;bUc-%!MEQ_H)NIrp0re_|2B5}?Yd-gVOP&Rlu zrj0lxcqJy8fsyAFh=fbuEFUF0AfA>$SMC>`lDiYpq~0JO0E$^o;I2o0Z-8doGEB?%D?z)BDZ8$Bg# z#N6LtknWTLex}v$8DRziOd_BleO8+D1#}hSJuAhdo+1P620~`xhW$A(Bi0 zehG!5H{ESyfRE8ZWPoSI?0H;xt`-^KSvmX;5EhU{h5#Wlz_Zd=?tcM;e2)kPM(8EG z07Rd(!|_n!oQPzeaWRw{`i;rlQTiSP0z#~;Uy-KgWnF~+TcQJVWp9QeU}NTp$G}Y; zN@*ecUX0fPexME|7IX-S@5jZN?Y7;3%HFKMl+3%t%>@^hwvQy)5J#PP#?N|m3idE! zFipVHQ^W$gO*|E*bfNsRJ&v|-DdLIkzBt-?rKfyLqV5%l^puZ?HFkp-L;MN_scBx6YP&(&P*v8#NcpurWE!IwM1mJ z*C%^%z(1O3Q8%l3g554 z@8!uZ;h-aFn%aK@2hGyM(|9^xpy#A@gY$Xy_ zX5a`MVVd0ca6vkcFL&%SY+u?`DoOA!x=aZ}J1OJa(6c=en?TP%sG z0-wB%b}8Qh_>F#d22b)Iq4xClMoP*NPn4c*Xp7L!5uH5mpe<%ywsEwJUUKGh#8YST zC1MkoV`Oa!^i-fNvbJoy>5oO}m>ExBAS8dib0&{V6z-5Co|OfWNYnATkX$d$8%uLO0KD;DsfOkZ4lm__1QanJCT^gmj1wW5JO? zh;fX>xC>pxS~F3)n#&Y@_Eu>40b?bxhND+&lX`9wb#x z0)I|_D2u12i3Mb`zvME#WDghR3x)Yn{fUn0=!K-Ee zOK3l?cWlGk@mZnHcI1Wy(ydbzfO{VjSb`ce#T#bRfEtX6%e0NHwBc&}_1KTTKN@{OjtLmtmUj;A7=veGr)^<_zPv5Z z=~a)W(!32sa}mSg&e?TSpzQ4rQoW#2pDQzm~B;q{!LpX#_>p?O2z@$GNp06ey%+q5wqA0@U#>I%o^?SdR`7hd<#ye%-CkY)yA=UX%5eD z+(G0;`te>kvEP})V`AvrBTCH`{ZFDle@p*2=#^Nv-Yl25iSZHHk}Jpt=fd$v>lL}& z8}lhbLb>A#^j1RutRK(i9ir(k*2?BRK`JU8_yh&APVT^GrU~?+0Qy}T>=Ak{A@eGY zgY{24@EawUX98s7_3JzG!Ra&MiOQ?NW260AfDC`HKGqSkEYm;g$h*qH-V30=Aw&H$ zVAoId9-VkeOluPP^I)#}L!Drk)%q))cq$*Sf7OX+@NRl^XMT;8?3Vz~@%r@6d~lb3 z9`Fd^#3USw(BuH%UtJHM0v(gHS8G@Rod%exM8Q8atH+Yk4L0Wl+bgCXKWBKVe@QRD~;L zcSXOs`lznlH$Vv4HAu+yBxGKYko$>2H$KFWT5bG|#O=;ML^30eHge9cd}78*1gdh) z6(RsIAc*&HeM}y28FCL1_Tl>IzT7)tUNjn`ukLkiP%qjxDcAAejq#MmkrYE?_;&_? zRQd#b`EotH8}AU?8j>nguHdMT=*BZc=rLQF$n}@|^Q4SsE;K5xpaNia(75CE!`*nx zd~CK5Tii+vB1Nz;`eHjg*LtEjNYl0O3Vyn$yEy@iub6L}Ti;Ma%TpT=d z9gxZ`K|WR3133#ZIHL#mrVH+O3+{$fP>$Qov*9HXOT};x^x$jGx;J7TGSH||B={^!PJZ`z&=CKn zS$@JYiLFr~iYKK>{tJ%x(vVLJ!$!pC%$^*Ms&DJb`*bZN?8%^kgo$6a`0>Vg zlJFD{gX*M%g802vdQ5+>FZU`<4f^kWc~Z>vq*yQIb3B}dIKk?P2EDBhYuUT{2p=zq5$4&dWQ(sz9xBbdkLjQh&$nq+gu?SXxtCydt?A4mIQ+A!H#+Pra; z&M24JvTa#$l*&XS*VZBKbN$5ud`2^}JsIA%TVZkg^%%Q+KSFmdJi+!g`f6C+U!=x2XndrvDuh@3q(4-MFJHW`pD5&a89VR&;GZ`{Zl|Aa z06nb&PdDf{4d!Wmh&dPI;@W~s=rKGOsQKy|)aegXe3DK6VT$bm#Ku-Qa5XmVry=2)p;AI1*$HyJ z*e&|VA>6Haw&>G`VBUM^_YC3J7(WqPfgY=dp@)8H2yf1N>dv7&yX{~YPl^o)NB zeUy&4NK>di^`v3E^^LUXDq#ce}SgLd2Q;O@--!{=Fg7)pvSNx7pM) zkNT%8@r-kuYUg3huJpi0OFa|D6(tB*@K-=GmY@s^qV$=R!9a^LLQ?uw8c9Gud6jYJ z1jV2Zz(4;R__x7ulS%z+jN8>PB{R0pq5gKjujF#|me=r>g$asVjwl#ck!<&aR==x) z_emfn(+RDB5B)ezP3HEPFz0yv>k6LMtd~u(+toY#OC9QDWssgZo3}Dx8wfTYu%g*K z&kr^Zbx)nr3AeLhIilW?qv|zG2=4TwYcdr~tn`WzB;y1Lb)n=KskBKGd zYmK{dt-$yJT6e`{-Gygz^`V#WEmZaONBu&s{Vy>HMlDE&Mv!Rq!#efoNf?laIhQIQ zt3d{9gp;dpz~YKAal(xI2>PB0?O;=(p!ki;TW7^I&_r;1#CE&tSn4QHS_p=qc?LOI z{qd}>SMqkT2?!^3zsj+nGiIQ@ey)<=*v5tYte)Up2?-J;fq)NS=A~bGh5U1LM`g2o(+sPS%G5?F zuF^jC6MJZZJ;C{wLwyg@j^K8?L){5+9qK##{WDPb;G2Rf`mDFh&`^;U@)7!iCuFluc%31HMEt zJR}5=h1rMK%;U#6e@Y*@fVcJIcX?J2W{Dt#!DLJgG49Tz!2ktc2}524EBeu%8NYXP z8NgXV@g4}=Vl!NG3{DiT<0;Jjtxc3-)vQ>~v2Z=D+6b$*lUvn1vu1S-bm(s45Cef+ z)XRYS>lAC0b%t;Oh|j09_9Y+rw{F+gUYBAf>kj z>uS|x7A4ySGz(z!ExN#P!8urpqvV=%=%*i7nv>YtoWnmWX;~P@4W_z%tlG_1t(94` zX2Oz9`jwI>hL+1}u{s8$Beu+?PAs;q3Z+N}5S~Uq(lms0t`iHzfS|b)78$Q}C&uLB zyY#^~;iW}&;ei2Iz+Vfmq@x8!319=W60k+U+U5+vvjYBL`B9L! z1iIt~DRcD%(Jx6&ExJlA+FH_C)>irjv5(-*^lA=rLbwmowjo|{!Wtl;N~&oZ`aP`KZ!f-PMHZ7ImrgK7 zmRmH8K|g;rX~)wTey6!N!OBFETWsmaum-7;AuKK^gg2&35n2U})ilT$OC)wmy!3lm zlR+0bWwIa5MrT7c_@AsA5r=;CQ(3cLuIzWeNTM{fvzK8KYpMetA8=pnAq~T|G;0?9 z7Qssd3(|!#{}y((Ngv2tPHexf+#Heu3oODw{8$-NunRaZ{l3?!+??jDn)jd_V6I;9KXZ`{T4QOeE!DFOWm&^%>SA#X3>{d1tZZXZ z1rn+0`*qIorvF(?t-z>LW|}et_8dW41_ljgCxw>WlsGd((9gL|Tegb91G14+@k?&M zg_tFcY=x6G!It1wnzk%#COu2ZI!k7Y5B@e_x=O&(R+6>+-`u^K!&;t#KZ=SmsrtY+28UKWvr>C<!SE7DlE=YpT~;HDz1?nqxsRoqr}hVZruVHDyAeJFO;v z?uEeiTi~GFM{hbX1*WGfk`SrIWbmD+$)_vI@AT>ebAIaN{M-iZWG?tqhz0_M_JDq| zX(8@LIuAsTxkaoCWW&IdhB+HSPa#%J;t0Xyc9U7Ng20?U!1mf0NHj1|MG$etaIj0!vdD z*agz7D2&N;A{QW$$YoC+cNrVIt>$J+JYka$&}%8oZen9+EES43XpiPLh=O*aew-Sb zyF|HO$gShZD}fk+UOi!YSs&?Tfuv>5cObw6nQD~j19E#Gw1I?nekJgT8rU6*sk)NT zayTn12AmP+WTpUOH*#f9#n`RN<3wme@5wMV@pqD{h^JJs!8G%V>1J{tBv_hBtIib0 zq6r8v#u8FYVzt z-Z~6wJo&#w#HfEPYFBJh*U|wY$)I#1E$Ni+X}xeIzmqrU@2})(emY;G7jmfovg7S?QaJe@xW#iCsqZl1u4lU0gq^Z1>XF5|)4iaHz>nQlK? zJXlW`u4FyJV0$T(y5**mtqvl>RBV3q$5->LaVu%MaT*$iZHqlb>E^a~QCgAJ4+san zn-1iuk)u+TY9IeatyaLKUpOIr^x^zF_+svHEP_p*r4bxU6%PL(+@iy$*6`5C_(~1P z7lGur2%J5HoPV))_^Sp!UR828A0E`m{WiR^@bHQI_;n$QzWH$S9{w{|7B%Sc`*;gw zb;IGjeLPoHwl*A|ae(jP%AtnCaS!ABp~|ray+afKN_oCPPd&sh#>C;zUGZ`loZHxy z=35RYJi_!iP2$XF=p+5j@#Yww{`tK-o>V6N-(do@~ zdr;^Nb&sLYIeJti-Z+6!XpSTDKR}EBTZP4=-WH`j3VmsXUM<%gB_5?E3cV}Ng+CVJ zwQzp+B>t|r51m%vw=Q(r{0WX^>1g*7PHgGawmZJoPsg+q@i!}aGuxY4cwG+ac6AV+tTKv&|A@-$i*8WQI>YVYnh7MCg%I*s@Og^n8jQNq~6ek8`nQRwJkJdOeADB$OrjL`%1 zGCagAN7;%(55SM0&=c=v6nesaumV$oG84O1df*ua7`>{h7R>3TRCl7#PWD!8u4qR% z3A-lRX#IggJE(4;^@|rpVU?s+SVy@B!W=}Q<<*94K`(e}jnW;&!%^skO(iI_IIhF8 zLQBgQ&{KxbgjH^VX*Z(a1xoAz6iU_KqEL>lL7}%F9Y>+J9Bpon*N4&zjY5$oDOKK{ z026_z%>oSSV(cXpdiT)fh0qYiwn%^fNuKSeclWFU6Z10y;g-9YvF*$7mM0YR(+jXP zOmV{<_!jwE6ACN-13rLq429hsfYZA@{)%1){1KEVB;NlghF1{?e9tuj#(RSpyo$Q{ zp?7oKk8%X%zd`i$N{%s05Iw74B?xbRPS!Jau^z~8Q2Bd;EAa=w#Qc1Keiu=wKgR&( zCwes;AEhHoHH!HuSc>q6MIS|pH2GkB*6x-7;?!wY~TZE|Bm9k z4PQb-$w0Xd#rzyXeJtn~qXhT+1n?hFeng2`fyhJg-++txIf43Lb^ICd_}ek>C^w*( zA9|O=U(tW}H}G2^^ad0S+gOF**?Wjo4+O^4q<&da&$pX(tx%5NyW zHy}BApW~zSbUcRkLXPWp=E!v<))vkA4QsMYrw-o1D17I-d- z2PG4Q{^uGhrgrR?@Ti<=rBmx>6wRrdT3I~1wB|EAzD>d21;v)bFTB9FbAM40eLaG{ zIZ@3HDvZgt{JO+!_BtT+|9G>n1?sB*(mM+aR88%)s=8WMi0YiW+8S1hN^Mn9U1d%2 z^isAAt%;M_aopxtm(`ZC_fe}ZE~_bJzo1rBbS;fuQ@oJH+sv^gVHdP3OXssuxR+Iy zRMbr?t?9#NqcwG5ZD~zu;)-Mt(<0J zywDtS)vy9oW|z*cs$R$@po%eys-~8gmejI&L{dDflxe7xRhHEjl}#_IEG?Z@I*lCw z$S~D{vRd{UnnKRJF6EZm4$Q3d|@^HMfIfBGfv@lOS`q@uLA zx`?!>Vc3(ilB$Xd3{QhiL;o!R6<1VLl@!;OPBX}!0BmaAv>Bzf?7ct__A~0Ui>qfb zPYCuly&1i^sb*&Jv{H5*YT#Q{SIy?2T3uQ^4U(?&6G3Thk%8KW=A62knMG3alW3M! z*3?y(8i3CLm|0ppr%2csU#J7VxMXHgbyZa@%S5ZDq_~ohC9{~%Y*rUnLf;$FoLXE{ zT2wWi-DIL>_$#WW7FX1;M*zWpHvz|~DXJ}=T2ac*T9Bd|n5SeW`wkFcDi#$A>auyI zeONoxYUY=g&S8U5gO%`K%a>Lb*RV1)r&pK4+GRDh?AG8`4cke*p!M`>ze({dKw@Hy zxvya#0U}LY!0_yM^%NAa3;;_iifd{N-|I{5nRS)3NX5z2qofu>ni6dWWa8ukb` zC0l`pAcD%3rR;t*+p=eHEuB55c3~g(A*#ZS7>_V&Ma3;^t7ey#;J*?VENGS1nG}T5qgoTIAEJfFx`NcJ}xt2VSW$V#Xc>3WB zr})E4dU#MmNsPQAnR)exj$hIE~-fWax#bc}h}de72y;5Vq)bT`g3Z(VJMc)R&yb+vr-k3<6zI!d!1*tZgXw+|Mc~*!q<6wo~_S&9lvO3tKaoHPjB6B+W*$| z#Ou6IyY?~JgDY!0cgmntlrN>tag&7Cluj?LuF20AzCvQ=>Yd-f*El=qrEl;qyraJP z4c>-#(w}>SdpmR%Z1TDUv+0sRtPNN%F-mV^gsytro4l2h*NHSv*6(-|4}I5zqI>Ur zaqFg6y~#WC?)rUiVyGVa`8RoTd_Key{8|#Tye_@-#jU3vd4}inUV7mfp2-XJ*=H~( zz4f(ccuU?#f8-4J^1k}HGkC+5Pygc#Z^irRtC5nQvTaF;P=$CEB3^ zC|QVvLBL`9jpy)#l;Qe6&hge0MvT1~t6a$_lq|ABUYB-W5Vh(1zc_;YUvb3$Ml+|n zloluYFKO~ScFyZMQvdWEZ|4~mB!M-jqxGz}@S3-4^#O0ePS@$v-@=@Z(bv7j(~_@G zBt4|a!C9CjAFIDg{l@8EyaoRouP2ix{=j)Sgrj=$O^l7M)-XbiVBJBXC zuR)Obr^RPWXU%A9#h3(?#+n$Jc=G#IRaH!P%oe$4hI3kltj&yso#tRYE)s|`8)fTq z$FvH%&vKLqXobCK09M!8$RT2dt?i%JD} x4iOS~`ZSq6=ei64O>{D;-r?6P{|7cg`yv1U delta 33604 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 IXFi_&FTsghwEzGB delta 62980 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