pub trait FeatureToggleTrait {
const STORAGE_KEY: &'static [u8];
Show 15 methods
// Provided methods
fn init_features<T: Serialize>(
storage: &mut dyn Storage,
feature_statuses: Vec<FeatureStatus<T>>,
pausers: Vec<Addr>,
) -> StdResult<()> { ... }
fn require_not_paused<T: Serialize>(
storage: &dyn Storage,
features: Vec<T>,
) -> StdResult<()> { ... }
fn pause<T: Serialize>(
storage: &mut dyn Storage,
features: Vec<T>,
) -> StdResult<()> { ... }
fn unpause<T: Serialize>(
storage: &mut dyn Storage,
features: Vec<T>,
) -> StdResult<()> { ... }
fn is_pauser(storage: &dyn Storage, key: &Addr) -> StdResult<bool> { ... }
fn set_pauser(storage: &mut dyn Storage, key: &Addr) -> StdResult<()> { ... }
fn remove_pauser(storage: &mut dyn Storage, key: &Addr) { ... }
fn get_feature_status<T: Serialize>(
storage: &dyn Storage,
key: &T,
) -> StdResult<Option<Status>> { ... }
fn set_feature_status<T: Serialize>(
storage: &mut dyn Storage,
key: &T,
item: Status,
) -> StdResult<()> { ... }
fn handle_pause<T: Serialize>(
deps: DepsMut<'_>,
info: &MessageInfo,
features: Vec<T>,
) -> StdResult<Response> { ... }
fn handle_unpause<T: Serialize>(
deps: DepsMut<'_>,
info: &MessageInfo,
features: Vec<T>,
) -> StdResult<Response> { ... }
fn handle_set_pauser(
deps: DepsMut<'_>,
address: Addr,
) -> StdResult<Response> { ... }
fn handle_remove_pauser(
deps: DepsMut<'_>,
address: Addr,
) -> StdResult<Response> { ... }
fn query_status<T: Serialize>(
deps: Deps<'_>,
features: Vec<T>,
) -> StdResult<Binary> { ... }
fn query_is_pauser(deps: Deps<'_>, address: Addr) -> StdResult<Binary> { ... }
}
Required Associated Constants§
const STORAGE_KEY: &'static [u8]
Provided Methods§
fn init_features<T: Serialize>( storage: &mut dyn Storage, feature_statuses: Vec<FeatureStatus<T>>, pausers: Vec<Addr>, ) -> StdResult<()>
fn require_not_paused<T: Serialize>( storage: &dyn Storage, features: Vec<T>, ) -> StdResult<()>
fn pause<T: Serialize>( storage: &mut dyn Storage, features: Vec<T>, ) -> StdResult<()>
fn unpause<T: Serialize>( storage: &mut dyn Storage, features: Vec<T>, ) -> StdResult<()>
fn is_pauser(storage: &dyn Storage, key: &Addr) -> StdResult<bool>
fn set_pauser(storage: &mut dyn Storage, key: &Addr) -> StdResult<()>
fn remove_pauser(storage: &mut dyn Storage, key: &Addr)
fn get_feature_status<T: Serialize>( storage: &dyn Storage, key: &T, ) -> StdResult<Option<Status>>
fn set_feature_status<T: Serialize>( storage: &mut dyn Storage, key: &T, item: Status, ) -> StdResult<()>
fn handle_pause<T: Serialize>( deps: DepsMut<'_>, info: &MessageInfo, features: Vec<T>, ) -> StdResult<Response>
fn handle_unpause<T: Serialize>( deps: DepsMut<'_>, info: &MessageInfo, features: Vec<T>, ) -> StdResult<Response>
fn handle_set_pauser(deps: DepsMut<'_>, address: Addr) -> StdResult<Response>
fn handle_remove_pauser(deps: DepsMut<'_>, address: Addr) -> StdResult<Response>
fn query_status<T: Serialize>( deps: Deps<'_>, features: Vec<T>, ) -> StdResult<Binary>
fn query_is_pauser(deps: Deps<'_>, address: Addr) -> StdResult<Binary>
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.