hermes_encoding_components/traits/
has_encoding.rs

1use cgp::prelude::*;
2
3#[derive_component(EncodingTypeComponent, ProvideEncodingType<Context>)]
4pub trait HasEncodingType<Kind>: Async {
5    type Encoding: Async;
6}
7
8#[derive_component(EncodingGetterComponent, EncodingGetter<Context>)]
9pub trait HasEncoding<Kind>: HasEncodingType<Kind> {
10    fn encoding(&self) -> &Self::Encoding;
11}
12
13#[derive_component(DefaultEncodingGetterComponent, DefaultEncodingGetter<Context>)]
14pub trait HasDefaultEncoding<Kind>: HasEncodingType<Kind> {
15    fn default_encoding() -> &'static Self::Encoding;
16}