Trait FeatureToggleTrait

Source
pub trait FeatureToggleTrait {
    const STORAGE_KEY: &'static [u8];
Show 15 methods // Provided methods fn init_features<S: Storage, T: Serialize>( storage: &mut S, feature_statuses: Vec<FeatureStatus<T>>, pausers: Vec<HumanAddr>, ) -> StdResult<()> { ... } fn require_not_paused<S: Storage, T: Serialize>( storage: &S, features: Vec<T>, ) -> StdResult<()> { ... } fn pause<S: Storage, T: Serialize>( storage: &mut S, features: Vec<T>, ) -> StdResult<()> { ... } fn unpause<S: Storage, T: Serialize>( storage: &mut S, features: Vec<T>, ) -> StdResult<()> { ... } fn is_pauser<S: ReadonlyStorage>( storage: &S, key: &HumanAddr, ) -> StdResult<bool> { ... } fn set_pauser<S: Storage>(storage: &mut S, key: &HumanAddr) -> StdResult<()> { ... } fn remove_pauser<S: Storage>(storage: &mut S, key: &HumanAddr) { ... } fn get_feature_status<S: ReadonlyStorage, T: Serialize>( storage: &S, key: &T, ) -> StdResult<Option<Status>> { ... } fn set_feature_status<S: Storage, T: Serialize>( storage: &mut S, key: &T, item: Status, ) -> StdResult<()> { ... } fn handle_pause<S: Storage, A: Api, Q: Querier, T: Serialize>( deps: &mut Extern<S, A, Q>, env: &Env, features: Vec<T>, ) -> HandleResult { ... } fn handle_unpause<S: Storage, A: Api, Q: Querier, T: Serialize>( deps: &mut Extern<S, A, Q>, env: &Env, features: Vec<T>, ) -> HandleResult { ... } fn handle_set_pauser<S: Storage, A: Api, Q: Querier>( deps: &mut Extern<S, A, Q>, _env: &Env, address: HumanAddr, ) -> HandleResult { ... } fn handle_remove_pauser<S: Storage, A: Api, Q: Querier>( deps: &mut Extern<S, A, Q>, _env: &Env, address: HumanAddr, ) -> HandleResult { ... } fn query_status<S: Storage, A: Api, Q: Querier, T: Serialize>( deps: &Extern<S, A, Q>, features: Vec<T>, ) -> QueryResult { ... } fn query_is_pauser<S: Storage, A: Api, Q: Querier>( deps: &Extern<S, A, Q>, address: HumanAddr, ) -> QueryResult { ... }
}

Required Associated Constants§

Source

const STORAGE_KEY: &'static [u8]

Provided Methods§

Source

fn init_features<S: Storage, T: Serialize>( storage: &mut S, feature_statuses: Vec<FeatureStatus<T>>, pausers: Vec<HumanAddr>, ) -> StdResult<()>

Source

fn require_not_paused<S: Storage, T: Serialize>( storage: &S, features: Vec<T>, ) -> StdResult<()>

Source

fn pause<S: Storage, T: Serialize>( storage: &mut S, features: Vec<T>, ) -> StdResult<()>

Source

fn unpause<S: Storage, T: Serialize>( storage: &mut S, features: Vec<T>, ) -> StdResult<()>

Source

fn is_pauser<S: ReadonlyStorage>( storage: &S, key: &HumanAddr, ) -> StdResult<bool>

Source

fn set_pauser<S: Storage>(storage: &mut S, key: &HumanAddr) -> StdResult<()>

Source

fn remove_pauser<S: Storage>(storage: &mut S, key: &HumanAddr)

Source

fn get_feature_status<S: ReadonlyStorage, T: Serialize>( storage: &S, key: &T, ) -> StdResult<Option<Status>>

Source

fn set_feature_status<S: Storage, T: Serialize>( storage: &mut S, key: &T, item: Status, ) -> StdResult<()>

Source

fn handle_pause<S: Storage, A: Api, Q: Querier, T: Serialize>( deps: &mut Extern<S, A, Q>, env: &Env, features: Vec<T>, ) -> HandleResult

Source

fn handle_unpause<S: Storage, A: Api, Q: Querier, T: Serialize>( deps: &mut Extern<S, A, Q>, env: &Env, features: Vec<T>, ) -> HandleResult

Source

fn handle_set_pauser<S: Storage, A: Api, Q: Querier>( deps: &mut Extern<S, A, Q>, _env: &Env, address: HumanAddr, ) -> HandleResult

Source

fn handle_remove_pauser<S: Storage, A: Api, Q: Querier>( deps: &mut Extern<S, A, Q>, _env: &Env, address: HumanAddr, ) -> HandleResult

Source

fn query_status<S: Storage, A: Api, Q: Querier, T: Serialize>( deps: &Extern<S, A, Q>, features: Vec<T>, ) -> QueryResult

Source

fn query_is_pauser<S: Storage, A: Api, Q: Querier>( deps: &Extern<S, A, Q>, address: HumanAddr, ) -> QueryResult

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl FeatureToggleTrait for FeatureToggle

Source§

const STORAGE_KEY: &'static [u8] = b"feature_toggle"