# Crate ethcore_util [−] [src]

Ethcore-util library

### Rust version:

- nightly

### Supported platforms:

- OSX
- Linux

### Building:

- Ubuntu 14.04 and later:

      # install rocksdb
      add-apt-repository "deb http://ppa.launchpad.net/giskou/librocksdb/ubuntu trusty main"
      apt-get update
      apt-get install -y --force-yes librocksdb

      # install multirust
      curl -sf https://raw.githubusercontent.com/brson/multirust/master/blastoff.sh | sh -s -- --yes

      # install nightly and make it default
      multirust update nightly && multirust default nightly

      # export rust LIBRARY_PATH
      export LIBRARY_PATH=/usr/local/lib

      # download and build parity
      git clone https://github.com/ethcore/parity
      cd parity
      cargo build --release

- OSX:

      # install rocksdb && multirust
      brew update
      brew install rocksdb
      brew install multirust

      # install nightly and make it default
      multirust update nightly && multirust default nightly

      # export rust LIBRARY_PATH
      export LIBRARY_PATH=/usr/local/lib

      # download and build parity
      git clone https://github.com/ethcore/parity
      cd parity
      cargo build --release

## Reexports

`pub extern crate using_queue;`
`pub extern crate table;`
`pub use common::*;`
`pub use misc::*;`
`pub use hashdb::*;`
`pub use memorydb::MemoryDB;`
`pub use overlaydb::*;`
`pub use journaldb::JournalDB;`
`pub use triehash::*;`
`pub use trie::{Trie, TrieMut, TrieDB, TrieDBMut, TrieFactory, TrieError, SecTrieDB, SecTrieDBMut};`
`pub use nibbleslice::*;`
`pub use semantic_version::*;`
`pub use log::*;`
`pub use kvdb::*;`

## Modules

bloom | Bloom operations.
bytes | General bytes-related utilities.
cache | Lru-cache related utilities as quick-and-dirty wrappers around the lru-cache crate.
common | Utils common types and macros global reexport.
error | General error types for use in ethcore.
from_json | Coversion from json.
hashdb | Database of byte-slices keyed to their Keccak hash.
journaldb | `JournalDB` interface and implementation.
kvdb | Key-Value store abstraction with `RocksDB` backend.
log | Common log helper functions
memorydb | Reference-counted memory-based `HashDB` implementation.
migration | DB Migration module.
misc | Diff misc.
nibbleslice | Nibble-orientated view onto byte-slice, allowing nibble-precision offsets.
nibblevec | An owning, nibble-oriented byte vector.
overlaydb | Disk-backed `HashDB` implementation.
path | Path utilities
semantic_version | Semantic version formatting and comparing.
sha3 | Wrapper around tiny-keccak crate as well as common hash constants.
snappy | Snappy compression bindings.
standard | Std lib global reexports.
stats | Statistical functions.
trie | Trie interface and implementation.
triehash | Generetes trie root.
vector | Vector extensions.

## Macros

flush |
flushln |
hash_map |
hash_map_into |
map |
map_into |
slice_into |
vec_into |
xjson |

## Structs

PerfTimer | Performance timer with logging. Starts measuring time in the constructor, prints elapsed time in the destructor or when `stop` is called.

## Type Definitions

Address | 160-bit integer representing account address

# Help

## Keyboard Shortcuts

?
  Show this help dialog
S
  Focus the search field
⇤
  Move up in search results
⇥
  Move down in search results
⏎
  Go to active search result
+
  Collapse/expand all sections

## Search Tricks

Prefix searches with a type followed by a colon (e.g. `fn:`) to restrict the search to a given type.

Accepted types are: `fn`, `mod`, `struct`, `enum`, `trait`, `type`, `macro`, and `const`.

Search functions by type signature (e.g. `vec -> usize` or `* -> vec`)