Crate tor_rpcbase
source ·Expand description
Re-exports§
pub use dispatch::DispatchTable;
pub use dispatch::InvokeError;
pub use dispatch::UpdateSink;
Modules§
- A multiple-argument dispatch system for our RPC system.
- err 🔒Error-related functionality for RPC functions.
- method 🔒Method type for the RPC system.
- obj 🔒Object type for our RPC system.
- Templates for use with [
derive_deftly
]
Macros§
- Declare that one or more space-separated types should be considered as dynamically dispatchable RPC methods.
- Allow a type to participate as an Object in the RPC system.
- Create an
InvokerEnt
around a single function. - Crate a
Vec<
ofInvokerEnt
. - Cause one or more RPC functions to be statically registered, each for handling a single Method on a single Object type.
Structs§
- A serializable empty object.
- An identifier for an Object within the context of a Session.
- An error type returned by failing RPC methods.
- Common return type for RPC methods that return a single object ID and nothing else.
Enums§
- Error representing an “invalid” method name.
- An error returned from
ContextExt::lookup
. - An uninhabited type, used to indicate that a given method will never send updates.
- An error caused while trying to send an update to a method.
Constants§
- An instance of rpc::Nil.
Traits§
- A trait describing the context in which an RPC method is executed.
- Extension trait for
Context
. - A DynMethod that can be deserialized.
- The parameters and method name associated with a given Request.
- A typed method, used to ensure that all implementations of a method have the same success and updates types.
- An object in our RPC system to which methods can be addressed.
- Extension trait for
Arc<dyn Object>
to support convenient downcasting todyn Trait
.
Functions§
- Check whether we have any method names that do not conform to our conventions.
- Return true if
name
is the name of some method. - Return an iterator that yields every registered method name.