1 stable release

1.0.0 May 15, 2021

#6 in #outer

49 downloads per month

Custom license

15KB

ThinWrap

Crates.io Build

ThinWrap is a very small Rust library that provides a macro (thin_wrap!) to wrap any struct in an outer struct, and generate its Deref and DerefMut traits automatically.

Example

With ThinWrap:

pub struct Inner;

thin_wrap!(pub, Outer, Inner);

Without ThinWrap:

pub struct Inner;

pub struct Outer(Inner);

impl Deref for Outer {
    type Target = Inner;

    fn deref(&self) -> &Self::Target {
        &self.0
    }
}

impl DerefMut for Outer {
    fn deref_mut(&mut self) -> &mut Self::Target {
        &mut self.0
    }
}

No runtime deps