Expand description
Exposes the most used types from the library.
Modules
- Doc images not enabled. Compile with feature
doc-images
and Rust version >= 1.54 to enable. Provides an abstraction for object creation. - Doc images not enabled. Compile with feature
doc-images
and Rust version >= 1.54 to enable. Contains types which encapsulate a repeatedly callable block of code. - Doc images not enabled. Compile with feature
doc-images
and Rust version >= 1.54 to enable. Theexecutable_command
module createsExecutable
s from arbitraryCommand
s. ![executable command diagram][executable-command-diagram] - Provides an encapsulated unit of production.
- Provides an encapsulated unit of execution.
- Doc images not enabled. Compile with feature
doc-images
and Rust version >= 1.54 to enable. Theexecutable_command
module createsExecutable
s from arbitraryCommand
s. ![executable command diagram][executable-command-diagram] - This module enables conversion between
Observer
andExecutable
. - Provides types which receive a borrowed value.
- Doc images not enabled. Compile with feature
doc-images
and Rust version >= 1.54 to enable. Thehandling_publisher
module createsHandler
s from arbitraryPublisher
s. - Contains types which allow client code to generate, use, and re-use heap-allocated objects efficiently.
- Contains types which implement the “Observer” pattern, in which a single object is used to delegate notifications to a group of dynamic listening object.
- Doc images not enabled. Compile with feature
doc-images
and Rust version >= 1.54 to enable. Theobserving_command
module createsObserver
s from arbitraryCommand
s. - This module implements the Publisher-Subscriber pattern. In this model, a
Publisher
contains a list ofSubscriber
s. When a message is delivered to thePublisher
, it is then delegated directly to all itsSubscriber
s, one at a time. Typically, implementations are dynamic, in thatSubscriber
s are able to be dded or removed at will by the client code - these features are delineated separately in theDetachablePublisher
andAttachablePublisher
traits, but can be implemented by anyPublisher
, and together as aMutablePublisher
. - This module implements the State pattern.
- Doc images not enabled. Compile with feature
doc-images
and Rust version >= 1.54 to enable. Thesubscribing_handler
module createsSubscriber
s from arbitraryHandler
s. - Provides types which receive a borrowed value, and return a new, owned value.
- Provides arbitrarily chained groups of
crate::primitives::transformer::Transformer
s to be setup and used repeatedly. - Combines a transformer and a handler to create a new handler which conforms to the transformer’s input, but forwards its output to the handler.
Structs
- Bridges
Command
s andExecutable
s into one type, which implements both traits. - Bridges
Command
s andExecutable
s into one type, which implements both traits. - Combines a transformer and a handler to create a new handler which conforms to the transformer’s input, but forwards its output to the handler.
Traits
- This trait enables the abstraction of the creation of objects.
- Allows
Subscriber
s to be added to the implementingPublisher
. - Encapsulates a repeatedly callable block of code.
- This trait holds the active state, and acts as a persistent handle for the state machine, which could otherwise be the states themselves.
- Allows
Subscriber
s to be removed from the implementingPublisher
. Emitter
s are capable of continuously returning an owned object to the caller.Iterator
is a subset of this interface in thatEmitter<Option<T>>
is equivalent toIterator<T>
.- Encapsulates a block of execution which may be run zero-or-more times.
- Defines a primitive interface which handles messages via borrowing.
- Holds a list of allocated objects in a scalable pool. Previously allocated objects can be checked back in after use, to prevent immediate deallocation.
- An object notified by a
Subject
. - A
Publisher
distributes messages it receives to theSubscriber
s which it currently holds. - Provides transitions between states.
- An object which notifies some group of
Observer
s. When it is notified, all the listeners are notified. Subscriber
s can be attached to, and will receive messages from,Publisher
s.- A
Transformer
receives a borrowed value and creates a new value of a possibly different type, giving ownership to the caller.
Derive Macros
- Creates a new type on the specified
struct
, which allows fields to be set one at a time. The new builder type’s name is the specified type, appended with “Builder”. - Creates a Publisher and Subscriber for the given message type.
- Creates a new trait for user code to implement on the specified
enum
. This trait requires implementors to implement handlers for all the specified variants in the given enum.