karyon_core 1.0.0

Runtime-agnostic async utilities (smol/tokio) for the karyon crates: executors, task groups, queues, timeouts, and optional Ed25519 crypto.
Documentation
#![doc = include_str!("../README.md")]

#[cfg(all(feature = "smol", feature = "tokio"))]
compile_error!("Only one async runtime feature should be enabled");

#[cfg(not(any(feature = "smol", feature = "tokio")))]
compile_error!("At least one async runtime feature must be enabled for this crate.");

/// A set of helper tools and functions.
pub mod util;

/// A set of async utilities.
pub mod async_util;

/// Represents karyon's Core Error.
pub mod error;

/// A cross-compatible async runtime
pub mod async_runtime;

#[cfg(feature = "crypto")]
/// Collects common cryptographic tools
pub mod crypto;

#[cfg(feature = "testing")]
/// Test utilities for running async tests with timeouts and executors.
pub mod testing;

pub use error::{Error, Result};