ritemlcr 0.1.0

An adaptive machine-learning-based cache tracker/replacement policy. From ticki's tfs/mlcr.
Documentation
# RiteMLCR: MLCR from TFS

> MLCR: Machine-Learning-based Cache Replacement
>
> MLCR trains a neural network to "guess" how long time will pass before the cache block is
> accessed again. In other words, it provides a qualified guess to approximate the ideal Bélády's
> algorithm without a time machine.
> 
> MLCR is slow, because it needs to train a neural network, but in many cases, the added
> precision pays off by greatly reducing the number of cache misses. As such, it should only be
> used when the cached medium is significantly slower than training the network (e.g. hard disks or
> internet downloads).

## Usage

```rust
let mut cache = ritemlcr::Cache::new();

cache.insert(1);
cache.insert(2);
cache.insert(3);
cache.insert(4);
cache.insert(100);
cache.insert(200);

cache.touch(100);
cache.touch(100);
cache.touch(1);
cache.touch(2);
cache.touch(2);
cache.touch(2);
```

## Credit

It is a fork of the crate [mlcr](https://crates.io/crates/mlcr/) , but some adjustments and improvements have been made to the code .

## License

This library is licensed under either of:

* MIT license [LICENSE-MIT]LICENSE-MIT or http://opensource.org/licenses/MIT
* Apache License 2.0 [LICENSE-APACHE]LICENSE-APACHE or https://opensource.org/licenses/Apache-2.0

at your option.