cachedir 0.1.0

A library that helps with cache directories creation in a system-agnostic way. **Note**: even though the crate is at version `0.1`, it should be stable and its API is not expected to change soon.
Documentation
use super::CacheDir;

use std::ops;
use std::borrow::Borrow;
use std::convert;

use std::path;
use std::ffi;

impl ops::Deref for CacheDir {
    type Target = path::PathBuf;

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

impl convert::Into<path::PathBuf> for CacheDir {
    fn into(self) -> path::PathBuf {
        self.path
    }
}

impl convert::Into<ffi::OsString> for CacheDir {
    fn into(self) -> ffi::OsString {
        self.path.into()
    }
}

impl Borrow<path::PathBuf> for CacheDir {
    fn borrow(&self) -> &path::PathBuf {
        &self.path
    }
}

impl Borrow<path::Path> for CacheDir {
    fn borrow(&self) -> &path::Path {
        self.path.borrow()
    }
}

impl Borrow<ffi::OsStr> for CacheDir {
    fn borrow(&self) -> &ffi::OsStr {
        self.path.as_ref()
    }
}

impl AsRef<path::PathBuf> for CacheDir {
    fn as_ref(&self) -> &path::PathBuf {
        &self.path
    }
}

impl AsRef<path::Path> for CacheDir {
    fn as_ref(&self) -> &path::Path {
        self.path.as_ref()
    }
}

impl AsRef<ffi::OsStr> for CacheDir {
    fn as_ref(&self) -> &ffi::OsStr {
        self.path.as_ref()
    }
}

impl<'a> IntoIterator for &'a CacheDir {
    type Item = &'a ffi::OsStr;
    type IntoIter = path::Iter<'a>;

    fn into_iter(self) -> Self::IntoIter {
        self.path.into_iter()
    }
}