Expand description
§deriving_via_macros
This library provides the DerivingVia derive macro for Newtypes (Single-Field structs).
DerivingVia can be used like derive_more.
§Generalised Newtype Deriving
§Example
use deriving_via_macros::DerivingVia;
#[derive(DerivingVia)]
#[deriving(Display)]
struct Newtype(pub i32);
let x = Newtype(0);
println!("{x}");§Deriving Via
Deriving Via allows deriving from beyond a multiply wrapped hierarchy
using transitive type conversion through Deref, Into or From traits.
§Example
use deriving_via_macros::DerivingVia;
#[derive(DerivingVia)]
pub struct Inner(i32);
#[derive(DerivingVia)]
#[deriving(Display(via: i32))]
pub struct Outer(Inner);
let x = Outer(Inner(42));
println!("{x}");