#[non_exhaustive]pub enum GovernanceDetails<T>where
T: AddressLike,{
Monarchy {
monarch: T,
},
SubAccount {
manager: T,
proxy: T,
},
External {
governance_address: T,
governance_type: String,
},
Renounced {},
NFT {
collection_addr: T,
token_id: String,
},
}
Expand description
Governance types
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Monarchy
A single address is admin
Fields
§
monarch: T
The monarch’s address
SubAccount
Used when the account is a sub-account of another account.
Fields
§
manager: T
The manager of the account of which this account is the sub-account.
§
proxy: T
The proxy of the account of which this account is the sub-account.
External
An external governance source
Fields
§
governance_address: T
The external contract address
Renounced
Renounced account This account no longer has an owner and cannot be used.
NFT
Implementations§
source§impl GovernanceDetails<String>
impl GovernanceDetails<String>
sourcepub fn verify(
self,
deps: Deps<'_>,
version_control_addr: Addr,
) -> Result<GovernanceDetails<Addr>, AbstractError>
pub fn verify( self, deps: Deps<'_>, version_control_addr: Addr, ) -> Result<GovernanceDetails<Addr>, AbstractError>
Verify the governance details and convert to Self<Addr>
source§impl GovernanceDetails<Addr>
impl GovernanceDetails<Addr>
sourcepub fn owner_address(&self, querier: &QuerierWrapper<'_>) -> Option<Addr>
pub fn owner_address(&self, querier: &QuerierWrapper<'_>) -> Option<Addr>
Get the owner address from the governance details
Trait Implementations§
source§impl<T> Clone for GovernanceDetails<T>where
T: Clone + AddressLike,
impl<T> Clone for GovernanceDetails<T>where
T: Clone + AddressLike,
source§fn clone(&self) -> GovernanceDetails<T>
fn clone(&self) -> GovernanceDetails<T>
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl<T> Debug for GovernanceDetails<T>where
T: Debug + AddressLike,
impl<T> Debug for GovernanceDetails<T>where
T: Debug + AddressLike,
source§impl<'de, T> Deserialize<'de> for GovernanceDetails<T>where
T: AddressLike + Deserialize<'de>,
impl<'de, T> Deserialize<'de> for GovernanceDetails<T>where
T: AddressLike + Deserialize<'de>,
source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<GovernanceDetails<T>, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<GovernanceDetails<T>, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
source§impl<T> Display for GovernanceDetails<T>where
T: AddressLike,
impl<T> Display for GovernanceDetails<T>where
T: AddressLike,
source§impl From<GovernanceDetails<Addr>> for GovernanceDetails<String>
impl From<GovernanceDetails<Addr>> for GovernanceDetails<String>
source§fn from(value: GovernanceDetails<Addr>) -> GovernanceDetails<String>
fn from(value: GovernanceDetails<Addr>) -> GovernanceDetails<String>
Converts to this type from the input type.
source§impl<T> JsonSchema for GovernanceDetails<T>where
T: AddressLike + JsonSchema,
impl<T> JsonSchema for GovernanceDetails<T>where
T: AddressLike + JsonSchema,
source§fn schema_name() -> String
fn schema_name() -> String
The name of the generated JSON Schema. Read more
source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Returns a string that uniquely identifies the schema produced by this type. Read more
source§fn json_schema(gen: &mut SchemaGenerator) -> Schema
fn json_schema(gen: &mut SchemaGenerator) -> Schema
Generates a JSON Schema for this type. Read more
source§fn is_referenceable() -> bool
fn is_referenceable() -> bool
Whether JSON Schemas generated for this type should be re-used where possible using the
$ref
keyword. Read moresource§impl<T> PartialEq for GovernanceDetails<T>where
T: PartialEq + AddressLike,
impl<T> PartialEq for GovernanceDetails<T>where
T: PartialEq + AddressLike,
source§fn eq(&self, other: &GovernanceDetails<T>) -> bool
fn eq(&self, other: &GovernanceDetails<T>) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.source§impl<T> Serialize for GovernanceDetails<T>where
T: AddressLike + Serialize,
impl<T> Serialize for GovernanceDetails<T>where
T: AddressLike + Serialize,
source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
impl<T> Eq for GovernanceDetails<T>where
T: Eq + AddressLike,
impl<T> StructuralPartialEq for GovernanceDetails<T>where
T: AddressLike,
Auto Trait Implementations§
impl<T> Freeze for GovernanceDetails<T>where
T: Freeze,
impl<T> RefUnwindSafe for GovernanceDetails<T>where
T: RefUnwindSafe,
impl<T> Send for GovernanceDetails<T>where
T: Send,
impl<T> Sync for GovernanceDetails<T>where
T: Sync,
impl<T> Unpin for GovernanceDetails<T>where
T: Unpin,
impl<T> UnwindSafe for GovernanceDetails<T>where
T: UnwindSafe,
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more