Struct provwasm_std::ProvenanceQuerier [−][src]
pub struct ProvenanceQuerier<'a> { /* fields omitted */ }
A type for simplifying provenance custom queries.
Implementations
impl<'a> ProvenanceQuerier<'a>
[src]
impl<'a> ProvenanceQuerier<'a>
[src]pub fn new(querier: &'a QuerierWrapper<'_>) -> Self
[src]
Creates a new provenance querier
pub fn resolve_name<S: Into<String>>(&self, name: S) -> StdResult<Name>
[src]
Resolve the address for a name.
Example
// Imports required use cosmwasm_std::{Deps, QueryResponse, StdResult}; use provwasm_std::{Name, ProvenanceQuerier}; // Resolve the address for a name. fn query_resolve_name(deps: Deps, name: String) -> StdResult<QueryResponse> { let querier = ProvenanceQuerier::new(&deps.querier); let name: Name = querier.resolve_name(&name)?; // Do something with name.address ... todo!() }
pub fn lookup_names<H: Into<Addr>>(&self, address: H) -> StdResult<Names>
[src]
Lookup all names bound to the given address.
Example
// Imports required use cosmwasm_std::{Addr, Deps, QueryResponse, StdResult}; use provwasm_std::{Names, ProvenanceQuerier}; // Lookup all names bound to an address. fn query_lookup_names(deps: Deps, address: Addr) -> StdResult<QueryResponse> { let querier = ProvenanceQuerier::new(&deps.querier); let names: Names = querier.lookup_names(address)?; // Do something with names.records ... todo!() }
pub fn get_attributes<H: Into<Addr>, S: Into<String>>(
&self,
address: H,
name: Option<S>
) -> StdResult<Attributes>
[src]
&self,
address: H,
name: Option<S>
) -> StdResult<Attributes>
Get attributes for an account. If the name parameter is None
, all attributes are returned.
Example
// Imports required use cosmwasm_std::{Addr, Deps, QueryResponse, StdResult}; use provwasm_std::{Attributes, ProvenanceQuerier}; // Query all attributes added to an account. pub fn try_query_attributes(deps: Deps, address: Addr) -> StdResult<QueryResponse> { let querier = ProvenanceQuerier::new(&deps.querier); let none: Option<String> = None; let res: Attributes = querier.get_attributes(address, none)?; // Do something with res.attributes ... todo!() }
pub fn get_json_attributes<H: Into<Addr>, S: Into<String>, T: DeserializeOwned>(
&self,
address: H,
name: S
) -> StdResult<Vec<T>>
[src]
&self,
address: H,
name: S
) -> StdResult<Vec<T>>
Get named JSON attributes from an account and deserialize the values. Attribute values with the same name must be able to be deserialized to the same type.
Example
// Imports required use cosmwasm_std::{Addr, Deps, QueryResponse, StdResult}; use provwasm_std::ProvenanceQuerier; use schemars::JsonSchema; use serde::{Deserialize, Serialize}; // Query all label attributes added to an account. pub fn query_labels(deps: Deps, address: Addr) -> StdResult<QueryResponse> { let attr_name = String::from("label.my-contract.sc.pb"); let querier = ProvenanceQuerier::new(&deps.querier); let labels: Vec<Label> = querier.get_json_attributes(address, &attr_name)?; // Do something with labels... todo!() } // Text with timestamp. #[derive(Serialize, Deserialize, Clone, Debug, PartialEq, JsonSchema)] #[serde(rename_all = "snake_case")] pub struct Label { pub text: String, pub timestamp: u64, }
pub fn get_marker_by_address<H: Into<Addr>>(
&self,
address: H
) -> StdResult<Marker>
[src]
&self,
address: H
) -> StdResult<Marker>
Get a marker by address.
Example
// Imports required use provwasm_std::{ProvenanceQuerier, Marker}; use cosmwasm_std::{Addr, Deps, QueryResponse, StdResult}; // Query a marker by address. fn try_get_marker_by_address(deps: Deps, address: Addr) -> StdResult<QueryResponse> { let querier = ProvenanceQuerier::new(&deps.querier); let marker: Marker = querier.get_marker_by_address(address)?; // Do something with marker ... todo!() }
pub fn get_marker_by_denom<S: Into<String>>(
&self,
denom: S
) -> StdResult<Marker>
[src]
&self,
denom: S
) -> StdResult<Marker>
Get a marker by denomination.
Example
// Imports required use cosmwasm_std::{Deps, QueryResponse, StdResult}; use provwasm_std::{ProvenanceQuerier, Marker}; // Query a marker by denom. fn try_get_marker_by_denom(deps: Deps, denom: String) -> StdResult<QueryResponse> { let querier = ProvenanceQuerier::new(&deps.querier); let marker: Marker = querier.get_marker_by_denom(&denom)?; // Do something with marker ... todo!() }
Auto Trait Implementations
impl<'a> !RefUnwindSafe for ProvenanceQuerier<'a>
impl<'a> !RefUnwindSafe for ProvenanceQuerier<'a>
impl<'a> !Send for ProvenanceQuerier<'a>
impl<'a> !Send for ProvenanceQuerier<'a>
impl<'a> !Sync for ProvenanceQuerier<'a>
impl<'a> !Sync for ProvenanceQuerier<'a>
impl<'a> Unpin for ProvenanceQuerier<'a>
impl<'a> Unpin for ProvenanceQuerier<'a>
impl<'a> !UnwindSafe for ProvenanceQuerier<'a>
impl<'a> !UnwindSafe for ProvenanceQuerier<'a>
Blanket Implementations
impl<T> FmtForward for T
impl<T> FmtForward for T
pub fn fmt_binary(self) -> FmtBinary<Self> where
Self: Binary,
Self: Binary,
pub fn fmt_display(self) -> FmtDisplay<Self> where
Self: Display,
Self: Display,
pub fn fmt_lower_exp(self) -> FmtLowerExp<Self> where
Self: LowerExp,
Self: LowerExp,
pub fn fmt_lower_hex(self) -> FmtLowerHex<Self> where
Self: LowerHex,
Self: LowerHex,
pub fn fmt_octal(self) -> FmtOctal<Self> where
Self: Octal,
Self: Octal,
pub fn fmt_pointer(self) -> FmtPointer<Self> where
Self: Pointer,
Self: Pointer,
pub fn fmt_upper_exp(self) -> FmtUpperExp<Self> where
Self: UpperExp,
Self: UpperExp,
pub fn fmt_upper_hex(self) -> FmtUpperHex<Self> where
Self: UpperHex,
Self: UpperHex,
impl<T> PipeAsRef for T
impl<T> PipeAsRef for T
pub fn pipe_as_ref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R where
Self: AsRef<T>,
T: 'a,
R: 'a,
Self: AsRef<T>,
T: 'a,
R: 'a,
pub fn pipe_as_mut<'a, T, R>(
&'a mut self,
func: impl FnOnce(&'a mut T) -> R
) -> R where
Self: AsMut<T>,
T: 'a,
R: 'a,
&'a mut self,
func: impl FnOnce(&'a mut T) -> R
) -> R where
Self: AsMut<T>,
T: 'a,
R: 'a,
impl<T> PipeBorrow for T
impl<T> PipeBorrow for T
pub fn pipe_borrow<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R where
Self: Borrow<T>,
T: 'a,
R: 'a,
Self: Borrow<T>,
T: 'a,
R: 'a,
pub fn pipe_borrow_mut<'a, T, R>(
&'a mut self,
func: impl FnOnce(&'a mut T) -> R
) -> R where
Self: BorrowMut<T>,
T: 'a,
R: 'a,
&'a mut self,
func: impl FnOnce(&'a mut T) -> R
) -> R where
Self: BorrowMut<T>,
T: 'a,
R: 'a,
impl<T> PipeDeref for T
impl<T> PipeDeref for T
pub fn pipe_deref<'a, R>(
&'a self,
func: impl FnOnce(&'a Self::Target) -> R
) -> R where
Self: Deref,
R: 'a,
&'a self,
func: impl FnOnce(&'a Self::Target) -> R
) -> R where
Self: Deref,
R: 'a,
pub fn pipe_deref_mut<'a, R>(
&'a mut self,
func: impl FnOnce(&'a mut Self::Target) -> R
) -> R where
Self: DerefMut,
R: 'a,
&'a mut self,
func: impl FnOnce(&'a mut Self::Target) -> R
) -> R where
Self: DerefMut,
R: 'a,
impl<T> Same<T> for T
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T, U> TapAsRef<U> for T where
U: ?Sized,
impl<T, U> TapAsRef<U> for T where
U: ?Sized,
pub fn tap_ref<F, R>(self, func: F) -> Self where
Self: AsRef<T>,
F: FnOnce(&T) -> R,
Self: AsRef<T>,
F: FnOnce(&T) -> R,
pub fn tap_ref_dbg<F, R>(self, func: F) -> Self where
Self: AsRef<T>,
F: FnOnce(&T) -> R,
Self: AsRef<T>,
F: FnOnce(&T) -> R,
pub fn tap_ref_mut<F, R>(self, func: F) -> Self where
Self: AsMut<T>,
F: FnOnce(&mut T) -> R,
Self: AsMut<T>,
F: FnOnce(&mut T) -> R,
pub fn tap_ref_mut_dbg<F, R>(self, func: F) -> Self where
Self: AsMut<T>,
F: FnOnce(&mut T) -> R,
Self: AsMut<T>,
F: FnOnce(&mut T) -> R,
impl<T, U> TapBorrow<U> for T where
U: ?Sized,
impl<T, U> TapBorrow<U> for T where
U: ?Sized,
pub fn tap_borrow<F, R>(self, func: F) -> Self where
Self: Borrow<T>,
F: FnOnce(&T) -> R,
Self: Borrow<T>,
F: FnOnce(&T) -> R,
pub fn tap_borrow_dbg<F, R>(self, func: F) -> Self where
Self: Borrow<T>,
F: FnOnce(&T) -> R,
Self: Borrow<T>,
F: FnOnce(&T) -> R,
pub fn tap_borrow_mut<F, R>(self, func: F) -> Self where
Self: BorrowMut<T>,
F: FnOnce(&mut T) -> R,
Self: BorrowMut<T>,
F: FnOnce(&mut T) -> R,
pub fn tap_borrow_mut_dbg<F, R>(self, func: F) -> Self where
Self: BorrowMut<T>,
F: FnOnce(&mut T) -> R,
Self: BorrowMut<T>,
F: FnOnce(&mut T) -> R,
impl<T> TapDeref for T
impl<T> TapDeref for T
pub fn tap_deref<F, R>(self, func: F) -> Self where
Self: Deref,
F: FnOnce(&Self::Target) -> R,
Self: Deref,
F: FnOnce(&Self::Target) -> R,
pub fn tap_deref_dbg<F, R>(self, func: F) -> Self where
Self: Deref,
F: FnOnce(&Self::Target) -> R,
Self: Deref,
F: FnOnce(&Self::Target) -> R,
pub fn tap_deref_mut<F, R>(self, func: F) -> Self where
Self: DerefMut,
F: FnOnce(&mut Self::Target) -> R,
Self: DerefMut,
F: FnOnce(&mut Self::Target) -> R,
pub fn tap_deref_mut_dbg<F, R>(self, func: F) -> Self where
Self: DerefMut,
F: FnOnce(&mut Self::Target) -> R,
Self: DerefMut,
F: FnOnce(&mut Self::Target) -> R,