# lustre-executor
A blazingly fast, minimal async executor built on Mio for low-level I/O. Features pluggable ID generation, modular design, and support for custom futures.
## Installation
Add this to your `Cargo.toml`:
```toml
[dependencies]
lustre-executor = "0.1"
```
## Quick Start
Get up and running in under a minute:
```rust
use lustre_executor::prelude::*;
let mut executor = Executor::new().unwrap();
executor.spawn(Task::new(async {
println!("Hello from an async task!");
}));
executor.run();
```
This spawns a simple task and runs the executor.
## Features
- **Minimal Dependencies**: Only Mio and Futures.
- **Pluggable ID Generation**: Use custom generators for task IDs.
- **I/O Support**: Reactor-based async I/O with futures like `TcpListenerFuture` and `TimerFuture`.
- **Generic Task IDs**: `TaskId<Id>` for flexibility.
## Examples
See the `examples/` directory for complete sample projects:
- `basic_spawn`: Simple task spawning.
- `custom_id_timer`: Basic timer usage.
## License
MIT