aren_alloc 0.2.0

Simple allocator for small copyable objects inspired by object-pools.
Documentation
# aren_alloc


![travis](https://travis-ci.org/DaseinPhaos/aren_alloc.svg?branch=master)
[![Crates.io](https://img.shields.io/crates/v/aren_alloc.svg)](https://crates.io/crates/aren_alloc)

A thread-local memory allocator backed up by the concept of object pools,
used to address the memory allocation needs of `arendur`.

This crate is useful when

- you want to frequently create and destroy some objects
- these objects are copyable small ones, with size under 256 bytes
- you want the underlying memory to be reused
- you want a unified interface for the pool, rather than a typed one

# Usage


```rust
use aren_alloc::Allocator;
#[derive(Copy, Clone)]

struct Point(u32, u32);
let allocator = Allocator::new();
let p = allocator.alloc(Point(1, 2));
assert_eq!(p.0, 1);
assert_eq!(p.1, 2);
```

As `CoerceUnsized` is supported for `Pointer`, compiling would require a nightly version.

# License


This project is distributed under the terms of both the MIT license and the Apache License (Version 2.0).

See [LICENSE-APACHE](LICENSE-APACHE), [LICENSE-MIT](LICENSE-MIT) for details.