Crate std

Source
45 modules · 113 traits · 15 effects · 3 aspects · 236 data types · 129 functions · 3 macros
Description

Silo standard library — the silo:std package.

The stdlib is a single package under the reserved silo language namespace. External consumers reference its modules as silo:std.core, silo:std.traits, silo:std.iter, etc.

Modules:

  • core — primitive types, option/result/pair/ordering
  • traits — Add/Sub/Mul/Div/Eq/Ord, Display/Debug/LowerHex/Binary, Hash/Hasher, Default, From/Into/TryFrom/TryInto, Error
  • collections — Foldable/Mappable/Filterable/Indexed/Keyed/Zippable/ Chainable/Concat/Join trait hierarchy, plus Seq/Map/Set aliases, the Iterator lazy-iteration protocol, and the generic helper words while/any/all/count. Holds the non-core collection types as submodules: collections.vecdeque, collections.linkedlist, collections.binaryheap, collections.btreeset, collections.btreemap.
  • iter — Iterator adapter methods, Peekable wrapper, CharsIter for Str codepoint iteration, and iterator constructors
  • format — format macro (compile-time format-string parser)
  • effects — IO/Console/FileSystem/Temporal/Env/Net/Http/Tcp/Panic effect declarations
  • temporal — Locale, PluralCategory, CurrentLocale aspect
  • ast — macro AST types (Token, Expr, Pattern, MatchArm, Block, FieldDef, VariantDef, TypeDef, ImplDef, TopLevelAst, …)
  • reflection — compile-time :type-info surface (TypeInfo union + its Int/Float/Record/Union/Enum/Newtype/Alias/Quotation/Vec/ Existential variants)
  • prelude — aggregated re-exports, auto-imported into every module

This file is the library entry. It re-exports every name in prelude as public so :use silo:std <names> resolves the same items the auto-imported prelude exposes. The prelude remains the single source of truth for the aggregate list — this file mirrors it.

Modules

ast

AST types used by the macro system.

bytes

Bytes — contiguous byte sequence.

codepoint

Codepoint operations — Unicode scalar-value methods on :impl Codepoint.

collections

Collection trait hierarchy and generic collection helpers.

core

Core primitive types and lang-item bindings for the Silo stdlib.

effects
error-report

ErrorReport — a pretty-printable error-chain formatter.

fmt

Format-spec machinery shared by Display/Debug/LowerHex/Binary and the format macro.

format

Compile-time string formatting via the format macro.

io

Byte-oriented IO traits — Read, Write, BufRead, Seek, and the SeekFrom union.

iter

Lazy iteration protocol and adapter types.

locale

Locale, PluralCategory, and the ambient CurrentLocale aspect.

matcher

User-extensible search-pattern interface.

math

Numeric helpers — generic Ord ops, integer arithmetic, and float transcendentals.

option

Option combinator methods — the Opt trait.

path

Path — platform-independent file-system path values and operations.

prelude

Auto-imported prelude of commonly-used stdlib items.

reflection

Compile-time reflection types.

result

Result combinator methods — the Res trait.

str

Stdlib Str methods — prefix/suffix, search, case, padding, repetition, joining, UTF conversion, trimming, splitting.

sync

Synchronisation primitives — Mutex, RwLock, Atomic, Lazy, Barrier, Condvar, OnceLock, and their guards.

temporal

Duration and Instant types — pure-Silo temporal values.

traits

Foundational traits for arithmetic, comparison, conversion, and formatting.

Data Types

Abstractions

Functions

Macros

Macros

format