1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
// Aim for no_std compatibility if possible
// #![deny(unsafe_code)] // We will use unsafe, so deny won't work. Add specific allow/deny later.
//! High-performance, memory-efficient sync/async channels for Rust.
//!
//! Fibre provides a suite of channel types optimized for various concurrency patterns,
//! including SPSC, MPMC, MPSC, SPMC, and Oneshot. It aims for peak performance
//! while offering both synchronous and asynchronous APIs.
// Conditional compilation for alloc/std features
extern crate alloc;
use Box; // Example usage
// Core modules that will be fleshed out
// Channel type modules
// Internal utilities - not part of public API but exposed for crate use
// Public re-exports for convenience (will grow)
pub use ;
/// A prelude for easily importing common Fibre types.
///
/// ```
/// use fibre::prelude::*;
/// ```
// Helper function to check if a type is Send + Sync.
// Useful for static assertions in generic code.