Silk

Silk standard library

The compiler-shipped modules and their complete public documentation.

ModuleImport namespacePublic declarationsSummary
silk/allocatorAllocator5Foundational allocation service used by higher standard-library actors.
silk/boolbool3Named primitive Boolean equality and negation operations.
silk/boxBox7One owned heap indirection for recursive data and values whose storage must have a stable size.
silk/bytesBytes8Owned arbitrary bytes for file contents, process output, and other encoding-neutral data.
silk/charchar8Checked construction, integer inspection, equality, and ordering for Unicode scalar char values.
silk/child_processChildProcess41Portable blocking child execution from structured byte arguments to fully captured output.
silk/effectEffect32Builds lazy computations by transforming success, recovering typed failure, supplying services, and controlling sequencing and cleanup.
silk/executionExecution4Independently owned, caller-funded lazy computations with explicit external parking.
silk/f32f3250IEEE binary32 values with deterministic representation, classification, and math operations.
silk/f64f6450IEEE binary64 values and Silk's default floating-point arithmetic.
silk/fiberFiber16Affine Fiber handles, typed outcomes, and one-observer completion.
silk/filesystemFileSystem58Portable normalized paths, whole-file operations, directory traversal, and explicit temp scopes.
silk/formatFormat17Decimal rendering and complete-text parsing shared by every integer module.
silk/hashHashKey7Deterministic seeded hashing contracts for hash maps, hash sets, and user-defined key types.
silk/hash_mapHashMap16Owned key-value storage with deterministic seeded hashing and open-addressed lookup.
silk/hash_setHashSet13Owned unique elements with deterministic seeded hashing and open-addressed membership lookup.
silk/host_inputHostInput10Explicit access to process arguments, environment values, and the working directory as bytes.
silk/i16i1660Sixteen-bit signed integers with explicit overflow, conversion, and text policies.
silk/i32i3260Thirty-two-bit signed integers and the default type of context-free integer literals.
silk/i64i6460Sixty-four-bit signed integers for large fixed-width values and exact integer protocols.
silk/i8i860Eight-bit signed integers for compact values, byte-level formats, and narrow arithmetic.
silk/isizeisize60Pointer-width signed integers for offsets whose range follows the selected compilation target.
silk/layoutLayout6Checked size-and-alignment descriptions used to request storage from an allocator.
silk/local_schedulerLocalScheduler4Deterministic single-threaded execution for structured Fibers.
silk/loggerLogger14Typed semantic logging with replaceable stdout and bounded in-memory providers.
silk/metricsAllocationMetrics6Provider-owned allocation counters that can be published as ordinary copyable data.
silk/numericInteger2Shared compile-time addition witness for generic algorithms over primitive integers.
silk/optionOption8Optional owned values that distinguish presence from absence without a failure channel.
silk/orderOrder11Compile-time ordering witnesses and a three-way result derived from strict comparison.
silk/os_child_processOsChildProcess2Native ChildProcess provider that executes directly through the platform process boundary.
silk/os_filesystemOsFileSystem2Native FileSystem provider confined beneath one explicitly owned platform root.
silk/os_host_inputOsHostInput2Native HostInput provider for the process command line, environment, and working directory.
silk/os_standard_inputOsStandardInput2Native StandardInput provider backed by the process standard-input descriptor.
silk/randomRandom7Provider-replaceable pseudorandom words, booleans, bounded values, and byte filling.
silk/raw_bufferRawBuffer8Low-level typed views over owned allocations for implementing collections and storage actors.
silk/resultResult11Completed success-or-failure values that can be inspected and transformed as ordinary data.
silk/schedulerScheduler17Provider protocol for preparing and atomically publishing child Fibers.
silk/sharedShared5Explicitly allocated, single-threaded shared ownership with callback-scoped access.
silk/slotSlot4Explicit initialization-state transitions for one slot selected from raw storage.
silk/standard_inputStandardInput11Portable blocking reads of raw standard-input bytes through an explicit provider.
silk/standard_streamsStandardStreams7Complete-message standard-output and standard-error writes through a replaceable service.
silk/stringString22Valid UTF-8 text, including owned storage, byte validation, and scalar-by-scalar traversal.
silk/u16u1657Sixteen-bit unsigned integers with explicit arithmetic and conversion failure policies.
silk/u32u3257Thirty-two-bit unsigned integers for fixed-width counts, masks, and binary fields.
silk/u64u6457Sixty-four-bit unsigned integers for wide masks, counters, hashes, and exact interchange values.
silk/u8u857Eight-bit unsigned integers for bytes, compact counters, and exact binary representations.
silk/unicodeUnicode5Explicit Unicode canonical normalization backed by the pinned Unicode 17.0.0 data set.
silk/unicode_tablesUnicodeTables7Generated canonical-normalization data for the silk.unicode public façade.
silk/usizeusize59Pointer-width unsigned integers for lengths, indices, capacities, and allocation sizes.
silk/vectorVector20Growable owned sequences with allocation-aware mutation, stable sorting, and checked indexing.

See also

On this page