postvan 0.3.1

A minimalistic implementation of pub/sub messaging
Documentation
<img width=300 src="https://codeberg.org/Stack-Syndicate/postvan/raw/assets/logo.svg">

[`crates.io`](https://crates.io/crates/postvan) [`docs.rs`](https://docs.rs/postvan) [`donate`](https://ko-fi.com/stacksyndicate)

## Usage

### Quickstart

This is the fastest way to get this crate up and running in your project.

```rust
use postvan::{Letterbox, Message, Postoffice};

#[derive(Clone, Debug)]
enum MyMessage {
    Ok,
}
impl Message for MyMessage {}

struct MyStruct {
    pub lb: Letterbox<MyMessage>,
}

fn main() {
    let mut post_office = Postoffice::new();
    let mut my_object = MyStruct {
        lb: Letterbox::new(),
    };
    post_office.register(&mut my_object.lb);
    let _ = my_object.lb.subscribe(MyMessage::Ok);
    let _ = my_object.lb.post(MyMessage::Ok);
    post_office.tick();

    println!("{:?}", my_object.lb.check());
}
```