Trait sc_chain_spec::Extension[][src]

pub trait Extension: Serialize + DeserializeOwned + Clone {
    type Forks: IsForks;
    fn get<T: 'static>(&self) -> Option<&T>;
fn get_any(&self, t: TypeId) -> &dyn Any; fn forks<BlockNumber, T>(&self) -> Option<Forks<BlockNumber, T>>
    where
        BlockNumber: Ord + Clone + 'static,
        T: Group + '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

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

Get an extension of specific type.

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

Get an extension of specific type as refernce to Any

Loading content...

Provided methods

fn forks<BlockNumber, T>(&self) -> Option<Forks<BlockNumber, T>> where
    BlockNumber: Ord + Clone + 'static,
    T: Group + '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...

Implementors

impl Extension for NoExtension[src]

type Forks = Self

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

type Forks = Self

Loading content...