Skip to main content

Module hosts

Module hosts 

Source
Expand description

What the host modules the toolchain ships declare about themselves.

Each HostApi implementation in cove-runtime answers with the table named here rather than one of its own, so the description a run enforces, the one cove check checks a call against, and the one cove trace reads out of a recorded file are the same bytes. That is what ADR 0001’s “shared by the compiler, runtime, and CLI” means when it is taken literally.

A host outside this workspace declares itself the same way, in its own crate: nothing here is privileged, and SHIPPED is only the list of the modules cove run wires up. An embedder hands its own tables to the checker through HostSchemas, and the ones it does not hand over are why the boundary checks a call as well as the checker.

Structs§

HostSchemas
The host modules one compilation may name: the ones the toolchain ships, plus any an embedder added.

Constants§

CLOCK
clock: monotonic time, waiting, and work bounded or repeated in time.
CONSOLE
console: line-oriented output on two streams.
DATABASE
database: querying, and connections a host keeps.
DOCUMENTS
documents: a filtered, read-only view over a fixed set of named text documents.
ENV
env: read-only access to the environment the host supplies.
FILES
files: reading and writing a rooted directory, whole and a line at a time.
HTTP
http: fetching over the network, and listening on a port.
PROCESS
process: the run’s own arguments, its end, and subprocesses.

Statics§

SHIPPED
Every host module cove run registers, in the order it registers them.

Functions§

module
The shipped module name describes itself with, if there is one.
shipped
Every host module the toolchain ships.