Fixes #11
This commit is contained in:
Greg Fitzgerald 2018-02-19 09:19:26 -07:00
parent 5e3c7816bd
commit a7186328e0
2 changed files with 27 additions and 1 deletions

View File

@ -1,7 +1,7 @@
[package] [package]
name = "silk" name = "silk"
description = "A silky smooth implementation of the Loom architecture" description = "A silky smooth implementation of the Loom architecture"
version = "0.1.3" version = "0.2.0"
documentation = "https://docs.rs/silk" documentation = "https://docs.rs/silk"
homepage = "http://loomprotocol.com/" homepage = "http://loomprotocol.com/"
repository = "https://github.com/loomprotocol/silk" repository = "https://github.com/loomprotocol/silk"

View File

@ -15,6 +15,32 @@ corresponding benchmarks are also added that demonstrate real performance boots.
feature set here will always be a ways behind the loom repo, but that this is an implementation feature set here will always be a ways behind the loom repo, but that this is an implementation
you can take to the bank, literally. you can take to the bank, literally.
# Usage
Add the latest [silk package] (https://crates.io/crates/silk) to the `[dependencies]` section
of your Cargo.toml.
Create a *Historian* and send it *events* to generate an *event log*, where each log *entry*
is tagged with the historian's latest *hash*. Then ensure the order of events was not tampered
with by verifying each entry's hash can be generated from the hash in the previous entry:
```rust
use historian::Historian;
use log::{Event, verify_slice};
fn main() {
let hist = Historian::new(0);
hist.sender.send(Event::Tick).unwrap();
let entry0 = hist.receiver.recv().unwrap();
hist.sender.send(Event::UserDataKey(0xdeadbeef)).unwrap();
let entry1 = hist.receiver.recv().unwrap();
assert!(verify_slice(&[entry0, entry1], 0));
}
```
# Developing # Developing
Building Building