Trait sc_service::ChainSpecExtension
source · pub trait ChainSpecExtension: Serialize + DeserializeOwned + Clone {
type Forks: IsForks;
// Required methods
fn get<T>(&self) -> Option<&T>
where T: 'static;
fn get_any(&self, t: TypeId) -> &(dyn Any + 'static);
fn get_any_mut(&mut self, t: TypeId) -> &mut (dyn Any + 'static);
// Provided method
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 { ... }
}
Expand description
A collection of ChainSpec
extensions.
This type can be passed around and allows the core modules to request a strongly-typed, but optional configuration.
Required Associated Types§
Required Methods§
sourcefn get_any(&self, t: TypeId) -> &(dyn Any + 'static)
fn get_any(&self, t: TypeId) -> &(dyn Any + 'static)
Get an extension of specific type as reference to Any
.
sourcefn get_any_mut(&mut self, t: TypeId) -> &mut (dyn Any + 'static)
fn get_any_mut(&mut self, t: TypeId) -> &mut (dyn Any + 'static)
Get an extension of specific type as mutable reference to Any
.