Skip to main content

Crate moirai_iter

Crate moirai_iter 

Source
Expand description

Moirai Iterator - Unified high-performance iterator system for concurrent, parallel, and async computing.

This module provides a comprehensive iterator framework that abstracts over different execution contexts:

  • Parallel: CPU-bound work across multiple threads with work-stealing
  • Async: I/O-bound work with efficient async/await patterns
  • Hybrid: Mixed workloads combining parallel and async execution

§Design Principles

  • Zero-cost abstractions: Compile-time optimizations with no runtime overhead
  • Memory efficiency: NUMA-aware allocation and cache-friendly data layouts
  • Execution agnostic: Same API works across all execution contexts
  • Type safety: Comprehensive compile-time guarantees
  • Performance: SIMD vectorization and CPU optimization
  • Async compatibility: Native async/await support throughout

Re-exports§

pub use async_iter::AsyncIterator;
pub use async_iter::AsyncParallelIterator;
pub use async_iter::IntoAsyncIterator;
pub use execution::AsyncContext;
pub use execution::ExecutionBase;
pub use execution::ExecutionContext;
pub use execution::ExecutionStrategy;
pub use execution::HybridConfig;
pub use execution::HybridContext;
pub use execution::ParallelContext;
pub use execution::PerformanceHistory;
pub use facade::MoiraiIterator;
pub use facade::async_range;
pub use facade::moirai_iter;
pub use facade::moirai_iter_async;
pub use facade::moirai_iter_hybrid;
pub use facade::moirai_iter_parallel;
pub use facade::par_range;
pub use parallel::IndexedParallelIterator;
pub use parallel::IntoParallelIterator;
pub use parallel::IntoParallelRefIterator;
pub use parallel::ParallelExtend;
pub use parallel::ParallelIterator;
pub use parallel::ParallelSliceMut;
pub use parallel::RangeParIter;
pub use parallel::VecParIter;
pub use parallel::VecRefParIter;

Modules§

advanced_patterns
Advanced iterator patterns with unified memory management.
async_iter
Async iterator implementations for I/O-bound workloads.
base
Base traits and utilities for Moirai iterators.
cache
Cache-aware borrowed-slice iteration.
channel_fusion
Channel fusion for efficient data flow between iterators and communication channels.
combinators
Zero-cost iterator combinators for functional programming patterns
execution
Execution contexts for different iterator strategies.
facade
Public iterator facade preserving execution context without string dispatch.
iter_ops
Iterator operations with SIMD support and memory-aware variants.
parallel
Parallel iterator implementation for Moirai.
prefetch
Prefetch optimizations for iterator hot paths.
simd_iter
SIMD-aware, cache-chunked iterator helpers.
stream
Concurrent stream combinators dispatched to the unified hybrid scheduler.
windows
Zero-cost window iterators for efficient data processing