Expand description
Overclock core functionality
Structs
- AbortHandle used to abort Abortable
- Sync AbortRegistration, should only be used within the actor lifecycle.
- A future/stream which can be remotely short-circuited using an
AbortHandle
. - Abortable tokio bounded mpsc channel implementation
- Abortable bounded handle
- Abortable bounded inbox.
- Abortable tokio unbounded mpsc channel implementation
- Abortable unbounded handle
- Abortable unbounded inbox, it returns None if the actor/channel got aborted
- An actor’s error which contains an optional request for the supervisor
- A tokio bounded mpsc channel implementation
- Bounded handle
- Bounded inbox
- Cleanup self data struct
- Data for given T: resource, along with subscribers
- InitializedRx signal receiver
- A tokio IntervalStream channel implementation, which emit Instants
- Interval channel’s handle, can be used to abort the interval channel
- IoChannel(Stream/AsyncRead/AsyncWrite/fut) wrapper
- IoChannel’s handle
- Helper struct, to traverse the supervision tree and locate the scope id
- Marker struct useful to propagate bounds through the Supervisor generic
- Null channel
- Null handle, note: invoking abort will abort the manually defined abortable future/streams in the actor’s run lifecycle (if any)
- Null Inbox
- Null supervisor, with no-ops
- Overclock partition count, default is the thread count
- PROMETHEUS REGISTRY, used by overclock to register metrics
- The actor’s local context
- Overclock runtime, spawn the root actor, and server (if enabled)
- Array of Partitioned Scopes
- The allowed scope_id range
- The Actor’s Scope, acts as global context for the actor.
- An actor’s service metrics
- The microservices scopes ids iterator
- A TCP socket server, listening for connections.
- Tcp listener handle, for tokio TcpListenerStream channel
- A wrapper around
TcpListener
that implementsStream
. - A tokio unbounded mpsc channel implementation
- Unbounded handle
- Unbounded inbox of unbounded channel
- Visible global resources, todo add the dir name
Enums
- Actor shutdown error reason.
- Pushed event for a dynamic resources
- The possible statuses a service (application) can be
- Subscriber variants
Traits
- The all-important Actor trait. This defines an Actor and what it do.
- ActorResult extension trait
- Defines a channel which becomes a sender and receiver half
- Channel builder trait, to be implemented on the actor type
- Cleanup/unsubscribe from other
- Cleanup resource from self scope
- A data structure that can be deserialized from any data format supported by Serde.
- Resource blanket trait, forces Clone + Send + Sync + ’static bounds on any resource
- Dynamic route as trait object, should be implemented on the actor’s handle
- A data structure that can be serialized into any data format supported by Serde.
- Ideally it should be implemented using proc_macro on the event type
- Shutdown contract , should be implemented on the handle
- Defines the Shutdown event variant
- An extension trait for
Stream
s that provides a variety of convenient combinator functions. - The sup handle which supervise T: Actor
Type Definitions
- The returned result by the actor
- The actor level position in the supervision tree
- Partitioned Scopes RwLock hashmap
- Unique Identifier for the resource, provided by the subscriber.
- The actor’s unique scope id