Structs§
- Toolchain
- Toolchain
File 🔒 - This struct is used to deserialize the “rust-toolchain” file.
Constants§
- CHARON_
SYSROOT_ VAR - The environment variable through which
charontellscharon-driverwhich full-MIR sysroot to use, if any.
Statics§
Functions§
- driver_
cmd - driver_
path - get_
pinned_ 🔒toolchain - in_
toolchain - Build a command that calls the given binary in the correct toolchain environment. This uses rustup to provide the correct toolchain, unless we’re in a nix context where the toolchain is already in PATH.
- miri_
sysroot_ 🔒cache_ dir - Where we tell
cargo miri setupto build the sysroot for the current toolchain. We use a per-toolchain directory because Miri’s default cache directory (~/.cache/miri) is shared across all toolchains and gets overwritten when switching between Charon versions. - setup_
miri_ sysroot cargo miri setupsets up a sysroot containing a standard library built with-Zalways-encode-mir.- sysroot_
has_ 🔒target - Whether this sysroot provides libraries for the given target.
- toolchain_
path - Get the path to the sysroot, where the
cargoandrustcbinaries can be found. Prefer usingin_toolchaininstead of this as much as possible. - toolchain_
version