testdrop 0.1.2

A utility to help test drop implementations
Documentation
# Droptest

A small crate to help test drop implementation

[![Build Status](https://travis-ci.org/malbarbo/testdrop.svg?branch=master)](https://travis-ci.org/malbarbo/testdrop)
[![Build status](https://ci.appveyor.com/api/projects/status/ww0qx6msilj8pwaw/branch/master?svg=true)](https://ci.appveyor.com/project/malbarbo/testdrop)
[![Crates](http://meritbadge.herokuapp.com/testdrop)](https://crates.io/crates/testdrop)

## Documentation

- [API documentation]https://docs.rs/testdrop


### Example

Test if the [`std::rc::Rc`](https://doc.rust-lang.org/stable/std/rc/struct.Rc.html)
drop implementation works.

```rust
extern crate testdrop;

use testdrop::TestDrop;
use std::rc::Rc;

let td = TestDrop::new();
let (id, item) = td.new_item();
let item = Rc::new(item);
let item_clone = item.clone();

// Decrease the reference counter, but do not drop.
drop(item_clone);
td.assert_no_drop(id);

// Decrease the reference counter and then drop.
drop(item);
td.assert_drop(id);
```


## License

Licensed under either of

 - [Apache License, Version 2.0]http://www.apache.org/licenses/LICENSE-2.0
 - [MIT license]http://opensource.org/licenses/MIT

at your option.

### Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted
for inclusion in the work by you, as defined in the Apache-2.0 license, shall
be dual licensed as above, without any additional terms or conditions.