Expand description
§dxr
This crate provides an implementation of XML-RPC types, (de)serialization support, and
conversion between XML-RPC values and Rust values (with optional support for non-standard i8
and nil types, which can be enabled with the respective feature flags).
Support for writing XML-RPC clients / servers is provided in separate crates:
dxr_client: generic XML-RPC client code and a default implementation based onreqwestdxr_server: generic XML-RPC server code and a default implementation based onaxum
The table below lists XML-RPC types and their equivalent Rust types.
| XML-RPC value type | Rust type |
|---|---|
i4 | i32 |
i8 | i64 |
boolean | bool |
string | String / &str |
double | f64 |
dateTime.iso8601 | DateTime |
base64 | Vec<u8> |
nil | Option<T> |
Additionally, the TryFromValue and TryToValue traits (which implement the conversion
between XML-RPC value types and Rust types) are implemented for
Vec<T>, slices&[T], and fixed-size arrays[T; N],- smart pointer types like
Box<T>,Cow<T>,Rc<T>, andArc<T>, - mappings like
HashMap<String, T>/HashMap<&str, T>, - tuples
(T, ...)with up to eight members
(as long as the inner type T also implement these traits).
§Features
This crate provides optional features, all of which are disabled by default:
derive: include procedural macros for deriving theTryFromValueandTryToValuetraits for custom structsi8: enable support for the non-standardi8value typenil: enable support for the non-standardnilvalue type
Modules§
- multicall
multicall - Helper functions for dealing with “system.multicall” method calls.
Structs§
- Date
Time - Naive date / time type representing XML-RPC values of type
dateTime.iso8601 - Fault
- XML-RPC server fault (consisting of a numeric error code and a message)
- Fault
Response - XML-RPC fault response type
- Method
Call - XML-RPC method call type
- Method
Response - XML-RPC method call type
Enums§
- Error
- Error type representing conversion errors between XML-RPC values and Rust values.
- Value
- XML-RPC value type
Traits§
- TryFrom
Params - Trait for converting from XML-RPC method call argument lists to Rust values.
- TryFrom
Value - Trait for converting from XML-RPC values to Rust values.
- TryTo
Params - Trait for converting from Rust values to XML-RPC method call arguments.
- TryTo
Value - Trait for converting from Rust values to XML-RPC values.
Derive Macros§
- TryFrom
Value derive - Procedural macro for deriving an implementation of the
TryFromValuetrait for structs. - TryTo
Value derive - Procedural macro for deriving an implementation of the
TryToValuetrait for structs.