Stdlib coverage matrix

Auto-generated. Do not hand-edit. Re-run cargo xtask stdlib-coverage after changing the support state of a module.

Columns:

  • Interpgos run (bytecode VM + tree-walker fallback).
  • Compiledgos build (Cranelift) and gos build --release (LLVM).
  • Tests — at least one integration test exercising the item.

Glyphs: ✓ supported · ◑ partial · ✗ missing.

Module Interp Compiled Tests Notes
std::fmt println / print / eprintln / eprint / format / write / writeln.
std::io stdout, stderr, stdin, write, write_byte, write_byte_array, flush, read_line, read_to_string.
std::os args, env, exit, read_file, write_file, mkdir, mkdir_all, read_dir.
std::os::exec Command builder + output / status / spawn / kill / wait. Stdlib + tests; interp/MIR wiring pending.
std::os::signal on(SIGTERM/SIGINT/SIGHUP/SIGUSR1/SIGUSR2/SIGQUIT). Stdlib + tests; runtime signal-handler bridge pending.
std::strings split, trim, contains, find, replace, to_lowercase, to_uppercase, starts_with, ends_with.
std::strconv parse_i64, parse_u64, parse_f64, parse_bool, format_i64, format_f64.
std::collections Vec, HashMap. VecDeque/BTreeMap/HashSet/BTreeSet declared.
std::net TcpListener, TcpStream. UdpSocket partial.
std::http HTTP/1.1 server + client. HTTP/2 deferred to v1.x.
std::encoding::json encode + decode + Value.
std::encoding::base64 encode + decode.
std::encoding::hex encode + decode.
std::encoding::binary put_u16_be, put_u32_be only — get_*, le variants pending.
std::sync Mutex, WaitGroup, AtomicI64. RwLock, Once partial.
std::time now, sleep, format_rfc3339, parse_rfc3339.
std::panic panic + catch_unwind.
std::errors new, wrap, is, chain, join.
std::flag Set with string/int/uint/float/bool/duration/string_list, --help, equals form. Subcommands deferred to v1.x.
std::path join, split, base, dir, ext, clean.
std::path::native SEPARATOR, join, clean, to_posix, to_native.
std::fs read_dir, walk_dir, mkdir_all, remove_all, copy, rename.
std::bytes Buffer, Builder, index_of, split, replace.
std::bufio Reader, Writer, Scanner with split_lines / split_words.
std::net::url Url, query_escape, query_unescape.
std::slog Logger, Field, TextHandler, JsonHandler with escape coverage.
std::context background, with_cancel, with_deadline, with_timeout.
std::crypto::rand fill, bytes.
std::crypto::sha256 digest, hex.
std::crypto::hmac sha256_mac.
std::crypto::subtle constant_time_eq.
std::sort sort, sort_stable, binary_search.
std::utf8 is_valid, rune_count.
std::math::rand Rng (SplitMix64).
std::testing Runner, check, check_eq, check_ok.
std::runtime max_procs, set_max_procs, num_cpus. mem_stats partial.
std::tls rustls-backed; ServerConfig, ClientConfig.
std::regex compile, is_match, find, find_all, captures, replace, split.
std::compress::gzip encode/decode + Level. Stdlib + tests via flate2; interp/MIR wiring pending.

How to regenerate this page

cargo xtask stdlib-coverage

How to interpret the columns

  • A module is marked Interp ✓ when at least one of its items resolves through gossamer-interp::builtins::install. A means some items resolve and some do not. A means none of the items are wired.

  • A module is marked Compiled ✓ when at least one of its items has a runtime symbol declared in gossamer-codegen-llvm/src/emit.rs::RUNTIME_DECLARATIONS and a Cranelift import in gossamer-codegen-cranelift/src/native.rs, or is dispatched as a method via gossamer-mir/src/lower.rs::lower_method_call.

  • A module is marked Tests ✓ when at least one integration / parity / phase test exercises it.

Cross-references