ratmom 0.1.0

Sensible, async, curl-based HTTP client
use std::ops::Deref;

pub(crate) mod future;
pub(crate) mod io;
pub(crate) mod task;

enum MaybeOwned<T, B> {
    Owned(T),
    Borrowed(B),
}

impl<T, B> Deref for MaybeOwned<T, B>
where
    B: Deref<Target = T>,
{
    type Target = T;

    fn deref(&self) -> &Self::Target {
        match self {
            Self::Owned(ref value) => value,
            Self::Borrowed(borrow) => borrow.deref(),
        }
    }
}