II.1 Modules
| Module | Purpose | Key APIs |
|---|---|---|
std.core (prelude) | basic types and functions | primitives, Option operators, List, Map, Set, Task, stream, iter, Shared<T>, print, env, now, sleep, panic, unreachable, standard interfaces |
std.coll | collections | Deque, Heap, SortedMap, SortedSet, SmallVec<T, N>, Bitset |
std.iter | lazy iterators | map filter flatMap fold zip enumerate chunks windows groupBy sortBy take skip |
std.text | strings | String, fmt, Regex (re"…"), split, trim, parse<T>, Utf8 |
std.num | numbers | checked/wrapping/saturating operations, BigInt, Decimal, Money |
std.time | time (§17) | Instant, Time, Date, LocalDateTime, ZonedTime, Duration, Period, Tz, after, every, at, cron |
std.task | concurrency (§8) | scope, Scope, Handle, all, race, any, chan, Mutex, RwLock, Semaphore, shield, node.background |
std.stm | transactional memory | TVar<T>, check |
std.io | files | File, Reader, Writer, mmap, Path, fs.walk |
std.os | OS | env, args, exit, signal, process.spawn |
std.net | low-level networking | Tcp, Udp, Quic, Tls, dns, IpAddr |
std.http | HTTP 1.1/2/3 | Client, Server, Router, WebSocket, Sse |
std.rpc | service runtime (§10) | Ctx, Client<S>, Middleware, Next, Transport, Status |
std.stream | stream operators | map filter take skip window(d) batch(n, d) merge zip throttle debounce scan dedup first broadcast; Broadcast<T>, SlowPolicy |
std.pipe | pipelines | Dlq, replay(runId), status(runId) |
std.saga | sagas | status(sagaId), resolve(sagaId, .Compensated | .Completed), list(.Stuck) |
std.ser | serialisation (§9) | encode<T>(x, fmt), decode<T>(b, fmt), decode_view<T>, Codec<T>, Repr<W>, Encoder, Decoder, Format, formats.oxl/json/msgpack/cbor |
std.orm | tables (§12.8) | Db, Table<T>, ref<T>, many<T>, migrate, Pool |
std.kv | built-in storage | Kv.get/put/delete/scan, BlobStore (large objects), txn, watch(prefix) -> stream |
std.topic | topics (§10.5) | Topic<T>.publish/subscribe, From |
std.cluster | cluster (§12) | self, members, find, pick, on, shards, leader, lock, ids, now |
std.crypto | cryptography (AWS-LC) | sha2, sha3, blake3, hmac, aead.seal/open (AES-GCM, ChaCha20-Poly1305), ed25519, x25519, ecdsa, rsa, argon2, rand.secure |
std.auth | authentication (§13) | Principal, jwt, oidc, apikey, session, asService, asScoped |
std.config | configuration (§14) | Flag, Profile, DynHandle<T> |
std.obs | observability | log, metric, span, OTLP and Prometheus export |
std.reflect | reflection (§15) | reflect, TypeInfo, FieldInfo, rt, Any |
std.comptime | code generation | Decl, Expr, quote, CompileError, readFile |
std.ffi | FFI (§16) | CStr, CString, Ptr, c_int, etc. |
std.test | tests (§18) | assert*, mock, fixture, net, node, disk, clock, snapshot |
std.opt | optimiser hints | likely(c), unlikely(c) |
Implementation-defined. Optional parts of the library (D-8055; DIV-024, DIV-051; D-4739). This implementation does not contain:
std.net.Quicand HTTP/3 (§13.1,impl-quic); theoidcprovider instd.auth(§13.2,impl-oidc);BlobStoreinstd.kv; the moduleimagekitfrom example V.5. The cryptographic primitives ofstd.cryptoare provided by a library with the libssl API (impl-crypto-backend); the list of algorithms in the table is a requirement, the presence of each of them in this implementation is verified by the referenceoxl doc --std. The availability ofstd.web— see II.4.
See also
Source: docs/spec/oxl-standard.en.md