Trait tc_service::ChainSpecExtension[][src]

pub trait ChainSpecExtension: Serialize + DeserializeOwned + Clone {
    type Forks: IsForks;
    pub fn get<T>(&self) -> Option<&T>
    where
        T: 'static
;
pub fn get_any(&self, t: TypeId) -> &(dyn Any + 'static); pub fn forks<BlockNumber, T>(&self) -> Option<Forks<BlockNumber, T>>
    where
        T: Group + 'static,
        BlockNumber: Ord + Clone + 'static,
        <Self::Forks as IsForks>::Extension: Extension,
        <<Self::Forks as IsForks>::Extension as Group>::Fork: Extension
, { ... } }

A collection of ChainSpec extensions.

This type can be passed around and allows the core modules to request a strongly-typed, but optional configuration.

Associated Types

type Forks: IsForks[src]

Loading content...

Required methods

pub fn get<T>(&self) -> Option<&T> where
    T: 'static, 
[src]

Get an extension of specific type.

pub fn get_any(&self, t: TypeId) -> &(dyn Any + 'static)[src]

Get an extension of specific type as refernce to Any

Loading content...

Provided methods

pub fn forks<BlockNumber, T>(&self) -> Option<Forks<BlockNumber, T>> where
    T: Group + 'static,
    BlockNumber: Ord + Clone + 'static,
    <Self::Forks as IsForks>::Extension: Extension,
    <<Self::Forks as IsForks>::Extension as Group>::Fork: Extension
[src]

Get forkable extensions of specific type.

Loading content...

Implementations on Foreign Types

impl Extension for Option<()>[src]

type Forks = Option<()>

impl<B, E> Extension for Forks<B, E> where
    B: Serialize + DeserializeOwned + Ord + Clone + 'static,
    E: Extension + Group + 'static, 
[src]

type Forks = Forks<B, E>

Loading content...

Implementors

Loading content...