[][src]Crate exonum

Exonum blockchain framework.

For more information see the project readme.

Modules

api

API and corresponding utilities.

blockchain

The module containing building blocks for creating blockchains powered by the Exonum framework.

crypto

Cryptography related types, constants, traits and functions. The functions in this module are used for key generation, hashing, signing and signature verification.

encoding

encoding is a serialization library supporting zero-copy (de)serialization of primitive types, heterogeneous structures and arrays.

explorer

Blockchain explorer module provides API for getting information about blocks and transactions from the blockchain.

helpers

Different assorted utilities.

messages

Consensus and other messages and related utilities.

node

Exonum node that performs consensus algorithm.

storage

A module that provides interfaces to work with persisted blockchain data.

Macros

__ex_message
check_bounds

This macro checks bounds of fields for structs with custom layout.

context_key

Constructs a ContextKey from a given name.

encoding_struct

encoding_struct! macro implements a structure that can be saved in the Exonum blockchain.

implement_exonum_serializer

Implements Exonum serialization / deserialization based on Serde Serialize / Deserialize.

implement_pod_array_field

Implements a field helper for an array of POD type. The macro allows using fields with type &[T], where T is the argument of the macro, in Exonum persistence mechanisms, i.e. transactions! and encoding_struct! macros. T needs to be a POD (plain old data) type for the conversion to work.

implement_pod_as_ref_field

Implements a field helper for a POD type. This macro enables to convert POD type data into a byte array.

implement_std_field

Implements the Field trait for a type that has writer and reader functions.

messages

A low-level versions of transactions! macro, which generates structs for messages, but does not require the messages to implement Transaction.

metric

Adds given metric with given value.

transactions

transactions! is used to declare a set of transactions of a particular service.