Module ockam_core::compat

source ·
Expand description

A facade around the various collections and primitives needed to support std, no_std + alloc or no_std targets.

When importing from the standard library:

  1. always prefer core:: over std:: where it’s available. (e.g. std::fmt::Result -> core::fmt::Result)
  2. use ockam_core::compat:: equivalents where possible. (e.g. std::sync::Arc -> ockam_core::compat::sync::Arc)
  3. if you need to add new items to compat, follow the originating namespace. (e.g. compat::vec::Vec and not compat::Vec)

Modules

Provides std::borrow for alloc targets. A module for working with borrowed data.
Provides std::boxed for alloc targets.
Provides std::collections and alternate hashbrown map and set implementations.
Provides a std::error::Error trait.
Provides core::fmt
Provides future::poll_once
Traits, helpers, and type definitions for core I/O functionality.
Provides std::net. Networking primitives for TCP/UDP communication.
Provides rand.
Provides std::str.
Provides std::string.
Provides std::sync for std targets.
Provides std::task for std targets. Types and Traits for working with asynchronous tasks.
Provides std::vec.

Macros

Provides std::format for alloc targets. Creates a String using interpolation of runtime expressions.