meio

Lightweight async actor framework for Rust.

This framework designed for professional use, because for huge apps you need a full control of every aspect of the app and you haven't be bounded by sepcific restrictions.

Usage

```rust wrapper!(MyActorClient for MyActor);

impl MyActorClient { pub async fn do_it(&mut self) -> Result { self.interact(DoIt).await } }

struct MyActor { }

struct DoIt;

impl Interaction for DoIt { type Output = u8; }

[async_trait]

impl Actor for MyActor { type Interface = MyActorClient; }

[async_trait]

impl Handler for MyActor { async fn handle(&mut self, msg: DoIt) -> Result { 1 } }

[tokio::main]

async fn main() -> Result<(), Error> { let actor = MyActor { }; let addr = meio::spawn(actor); addr.do_it().await?; addr.terminate().await?; Ok(()) } ```