hermes-encoding-components 0.1.0

Implementation of an IBC Relayer in Rust, as a library
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
use cgp::prelude::*;

#[derive_component(EncodingTypeComponent, ProvideEncodingType<Context>)]
pub trait HasEncodingType<Kind>: Async {
    type Encoding: Async;
}

#[derive_component(EncodingGetterComponent, EncodingGetter<Context>)]
pub trait HasEncoding<Kind>: HasEncodingType<Kind> {
    fn encoding(&self) -> &Self::Encoding;
}

#[derive_component(DefaultEncodingGetterComponent, DefaultEncodingGetter<Context>)]
pub trait HasDefaultEncoding<Kind>: HasEncodingType<Kind> {
    fn default_encoding() -> &'static Self::Encoding;
}