Crate crossbus

Source
Expand description

CrossBus is a platform-less runtime-less actor computing model

§Overview

CrossBus is an implementation of Actor Computing Model, with the concept that

  • Runtime-less

    crossbus neither provide runtime for app execution nor access the system interface abstraction. no built-in runtime, but any runtime is allowed,
    the system-provided / third-party’s / that from FFI-binding all work. Last but not least, even a bare-bone noop-waker executor can do.

    runtime-located features like concurrency and I/O are up to implementor.

  • Bare-Metal Compatible

    crossbus links to no std library, no system libraries, no libc, and a few upstream libraries enbale you run rust code on bare metal.

  • Platform-less by Runtime-less

    take the advantage of runtime-less, crossbus is able to bypass the limitation of runtime implementor and system interface abstraction and go right straight to manipulate task directly. This is the primary concept of crossbus to run across many platforms or without platforms.

  • Future-oriented Routine and Events

    the futures way to execute task is retained even without runtime thanks to rust. crossbus defines a set of types and traits to allow asynchronous tasks manipulation.

  • Real-time Execution Control

    taking the advantage of the design of future routine, each poll and events alongside can be intercepted for each spawned task during execution, with which more execution control is possible.

Modules§

actor
An abstraction for a computational entity
address
types for actors Messages Communication and Handling
blocker
blocking Execution Routine and Events
context
actor-level execution state and local environment during runtime
delayer
delayed Execution Routine and Events
message
Message Stream Execution Routine and Events
prelude
Some common traits and types
reactor
Reactor is the executor and manager of all actors,
register
Actor lifecycle Management
rtrt
Convenient Runtime for common use
stream
Stream Execution Routine and Events
timetime
time module

Attribute Macros§

mainderive

Derive Macros§

Messagederive