Crate meio[][src]

Expand description

meio - lightweight async actor framework for Rust. The main benefit of this framework is that gives you tiny extension over tokio with full control.

It’s designed for professional applications where you can’t have strong restrictions and have keep flexibility.

Also this crate has zero-cost runtime. It just calls async method of your type.

Re-exports

pub use crate::handlers::Action;
pub use crate::handlers::ActionHandler;
pub use crate::handlers::Consumer;
pub use crate::handlers::Eliminated;
pub use crate::handlers::InstantAction;
pub use crate::handlers::InstantActionHandler;
pub use crate::handlers::Interaction;
pub use crate::handlers::InteractionDone;
pub use crate::handlers::InteractionHandler;
pub use crate::handlers::InteractionResponder;
pub use crate::handlers::InteractionTask;
pub use crate::handlers::InterruptedBy;
pub use crate::handlers::Parcel;
pub use crate::handlers::Scheduled;
pub use crate::handlers::StartedBy;
pub use crate::handlers::StreamAcceptor;
pub use crate::handlers::TaskEliminated;
pub use crate::ids::Id;
pub use crate::ids::IdOf;
pub use crate::signal;
pub use crate::system::System;
pub use crate::task;

Modules

handlers

This module contains the Envelope that allow to call methods of actors related to a sepcific imcoming message.

ids

Contains typed and generic id types.

linkage

Contains modules of different ways to communicate with Actors.

signal

Module contains stream to connect signals to actors.

system

This module contains System actor.

task

This module contains useful tasks that you can attach to an Actor.

thread

Special module to run a supervisor in a separate thread.

Structs

Address

Address to send messages to Actor.

Context

Context of a ActorRuntime that contains Address and Receiver.

Distributor

The set of multiple recipients that sends actions in parallel.

StopReceiver

Contains a receiver with a status of a task.

TaskAddress

Address of a spawned task.

Enums

Status

Status of the task.

TaskError

An error that can happen in a task.

Traits

ActionRecipient

Abstract Address to the Actor that can handle a specific message type.

Actor

The main trait. Your structs have to implement it to be compatible with ActorRuntime and Address system.

InteractionRecipient

Abstract Address to the Actor that can handle an interaction.

LiteTask

Minimalistic actor that hasn’t Address.

StopSignal

Just receives a stop signal.

Tag

Custom tag for LiteTask. Attached to a runtime.