Skip to content
Playground

Standard Library Catalogue

This catalogue lists every module shipped in the standard library, what each module provides, and whether a fuller reference page exists.

std is the root aggregator. The std::core, std::control, std::data, std::io, and std::text aggregators declare their child modules; std::io also re-exports its children's public names. std::num combines numeric roles with its frac child module.

Entry files import std::prelude::* unless the prelude is disabled. The prelude re-exports the operators, roles, types, constructors, effects, and I/O helpers used without a module qualifier in ordinary programs. A linked module name leads to the page that documents it. Not documented means that no fuller page covers the module yet. Provisional means the module is not part of the stable surface: its spelling is expected to change, and a program should not depend on it.

Imports and aggregators

ModulePurposeDocumentation
stdDeclares the twelve top-level standard-library modules.Not documented
std::controlGroups control-flow effects, nondeterminism, errors, and mutable references.Not documented
std::coreGroups the core roles and operators and defines id and compose.Reference
std::dataGroups the collection roles and the list, optional, range, and result types.Not documented
std::ioGroups and re-exports the console, file, and network I/O surfaces.Not documented
std::textGroups byte, character, string, path, parsing, config, and Yumark support.Not documented
std::preludeRe-exports the standard names that entry files receive without an explicit import.Reference

Control modules

ModulePurposeDocumentation
std::control::flowImplements early return, loops, and labeled loop control with effects.Reference
std::control::junctionExtends comparisons over Fold values with the effectful all and any junctions.Reference
std::control::nondetProvides binary choice, rejection, search helpers, and result collectors for nondeterministic computations.Reference
std::control::throwDefines the Throw role that associates an error value with the effect raised by .throw and fail.Reference
std::control::varImplements effect-backed references and the get and set operations behind local mutable bindings.Reference

Core modules

ModulePurposeDocumentation
std::core::cmpDefines the Eq and Ord roles and their standard implementations.Reference
std::core::convertDefines the Cast role and the standard path and numeric conversion rules.Reference
std::core::fmtDefines display and debug formatting roles, format specifications, and standard implementations.Reference
std::core::opsDeclares the standard control, range, arithmetic, comparison, and Boolean operators.Reference
std::core::seqDefines the Len and IsEmpty roles and implementations for standard sequence types.Reference

Data modules

ModulePurposeDocumentation
std::data::foldDefines Fold with folding, search, containment, and nondeterministic element selection.Reference
std::data::indexDefines the Index role that maps a container and key type to an indexed value type.Reference
std::data::listProvides persistent lists, transformations, slicing, sorting, and mutable-reference views.Reference
std::data::optDefines the nil or just optional-value type.Reference
std::data::rangeRepresents bounded or unbounded integer ranges and folds over their values.Reference
std::data::resultDefines value-level success or failure with mapping, chaining, and fallback operations.Reference

Text modules

ModulePurposeDocumentation
std::text::bytesProvides byte length, comparison, concatenation, indexing, slicing, and UTF-8 prefix decoding.Reference
std::text::charProvides character comparison, string conversion, and whitespace, punctuation, and word classification.Reference
std::text::configParses a provisional, small sectioned key/value config format and reads values or source files from it.Provisional
std::text::parseProvides an effect-based parser-combinator API for reading, finding, editing, and replacing string matches.Reference
std::text::pathConverts paths to and from bytes and displays paths with lossy UTF-8 decoding.Reference
std::text::strProvides character-indexed strings, slices, searches, transformations, and mutable line views.Reference
std::text::yumarkDefines the provisional Yumark document algebra and renders documents as HTML nodes or Markdown.Provisional

I/O modules

ModulePurposeDocumentation
std::io::consoleProvides stdout and stderr output plus warning and terminating effects.Reference
std::io::fileProvides text-file reads, writes, metadata, scoped edits, and host-backed mutable buffers.Reference
std::io::netProvides host-backed listeners, server request acceptance, and byte responses.Provisional

Numeric and scalar modules

ModulePurposeDocumentation
std::boolProvides Boolean equality, negation, and string conversion.Reference
std::floatProvides floating-point comparison, arithmetic, and string conversion primitives.Reference
std::intProvides integer comparison, arithmetic, division, remainder, and decimal and hexadecimal conversion primitives.Reference
std::numDefines arithmetic and hexadecimal-formatting roles and their standard implementations, and declares the frac module.Reference
std::num::fracProvides normalized rational numbers with arithmetic, comparison, and float and string conversion.Reference

Utility modules

ModulePurposeDocumentation
std::testingDefines lazy assertion operators and the assertion effect.Reference
std::timeDefines instants, durations, clock access, unit constructors, arithmetic, comparison, and formatting.Reference

Yulang