#![doc(html_root_url = "http://alexcrichton.com/tar-rs")]
#![deny(missing_docs)]
#![cfg_attr(test, deny(warnings))]
extern crate libc;
extern crate filetime;
#[cfg(all(unix, feature = "xattr"))]
extern crate xattr;
use std::io::{Error, ErrorKind};
use std::ops::{Deref, DerefMut};
pub use header::{Header, OldHeader, UstarHeader, GnuHeader, GnuSparseHeader};
pub use header::{GnuExtSparseHeader};
pub use entry_type::EntryType;
pub use entry::Entry;
pub use archive::{Archive, Entries};
pub use builder::Builder;
pub use pax::{PaxExtensions, PaxExtension};
mod archive;
mod builder;
mod entry;
mod entry_type;
mod error;
mod header;
mod pax;
struct AlignHigher<R: ?Sized>(u64, R);
impl<R: ?Sized> Deref for AlignHigher<R> {
type Target = R;
fn deref(&self) -> &R { &self.1 }
}
impl<R: ?Sized> DerefMut for AlignHigher<R> {
fn deref_mut(&mut self) -> &mut R { &mut self.1 }
}
fn other(msg: &str) -> Error {
Error::new(ErrorKind::Other, msg)
}