Crate linera_base
source ·Expand description
This module provides a common set of types and library functions that are shared between the Linera protocol (compiled from Rust to native code) and Linera applications (compiled from Rust to Wasm).
Re-exports§
pub use task::Blocking;
Modules§
- This module defines the notion of Application Binary Interface (ABI) for Linera applications across Wasm and native architectures.
- Command functionality used for spawning child processes.
- Define the cryptographic primitives used by the Linera protocol.
- Core data-types used in the Linera protocol.
- Object-safe conversion traits.
- A wrapper for hashable types to memoize the hash.
- Types used when performing HTTP requests.
- Core identifiers used by the Linera protocol.
- Structures defining the set of owners and super owners, as well as the consensus round types and timeouts for chains.
- Functionality for obtaining some free port.
- This module defines utility functions for interacting with Prometheus (logging metrics, etc)
- Abstractions over tasks that can be used natively or on the Web.
- Abstractions over time that can be used natively or on the Web.
- This module provides unified handling for tracing subscribers within Linera binaries.
- The virtual machines being supported.
Macros§
- Defines a GraphQL scalar type using the hex-representation of the value’s BCS-serialized form.
- Defines a GraphQL scalar with a description string.
- A macro for asserting that a condition is true, returning an error if it is not.
Enums§
- An error trying to parse the hex-digits of a BCS-encoded value.
Functions§
- Formats a byte sequence as a hexadecimal string, and elides bytes in the middle if it is longer than 32 bytes.
- Applies
hex_debug
to a slice of byte vectors. - Listens for shutdown signals, and notifies the
CancellationToken
if one is received.