#![crate_name="allocator"]
#![crate_type="lib"]
#![feature(unsafe_destructor, globs, phase, macro_rules)]
#![allow(warnings)]
#![no_std]

// TODO: features

extern crate core;

#[cfg(feature="libc")]
extern crate libc;

#[phase(plugin)] extern crate checked_cast;


#[cfg(feature="std")]
extern crate alloc;

pub use allocator::{Allocator};

mod macros;

pub mod allocator;
pub mod noop;



#[cfg(feature="libc")]
pub mod malloc;



#[cfg(feature="libc")]
pub mod arena;


#[cfg(feature="std")]
pub mod rustalloc;