Struct polymesh_api::polymesh::api::corporate_action::QueryApi
source · pub struct QueryApi<'api> { /* private fields */ }
Implementations§
source§impl<'api> QueryApi<'api>
impl<'api> QueryApi<'api>
sourcepub async fn max_details_length(&self) -> Result<u32>
pub async fn max_details_length(&self) -> Result<u32>
Determines the maximum number of bytes that the free-form details
of a CA can store.
Note that this is not the number of char
s or the number of graphemes.
While this may be unnatural in terms of human understanding of a text’s length,
it more closely reflects actual storage costs ('a'
is cheaper to store than an emoji).
sourcepub async fn default_target_identities(
&self,
key_0: Ticker
) -> Result<TargetIdentities>
pub async fn default_target_identities(
&self,
key_0: Ticker
) -> Result<TargetIdentities>
The identities targeted by default for CAs for this ticker, either to be excluded or included.
(ticker => target identities)
sourcepub async fn default_withholding_tax(&self, key_0: Ticker) -> Result<Permill>
pub async fn default_withholding_tax(&self, key_0: Ticker) -> Result<Permill>
The default amount of tax to withhold (“withholding tax”, WT) for this ticker when distributing dividends.
To understand withholding tax, e.g., let’s assume that you hold ACME shares. ACME now decides to distribute 100 SEK to Alice. Alice lives in Sweden, so Skatteverket (the Swedish tax authority) wants 30% of that. Then those 100 * 30% are withheld from Alice, and ACME will send them to Skatteverket.
(ticker => % to withhold)
sourcepub async fn did_withholding_tax(
&self,
key_0: Ticker
) -> Result<Vec<(IdentityId, Permill)>>
pub async fn did_withholding_tax(
&self,
key_0: Ticker
) -> Result<Vec<(IdentityId, Permill)>>
The amount of tax to withhold (“withholding tax”, WT) for a certain ticker x DID.
If an entry exists for a certain DID, it overrides the default in DefaultWithholdingTax
.
(ticker => [(did, % to withhold)]
sourcepub async fn ca_id_sequence(&self, key_0: Ticker) -> Result<LocalCAId>
pub async fn ca_id_sequence(&self, key_0: Ticker) -> Result<LocalCAId>
The next per-Ticker
CA ID in the sequence.
The full ID is defined as a combination of Ticker
and a number in this sequence.
sourcepub async fn corporate_actions(
&self,
key_0: Ticker,
key_1: LocalCAId
) -> Result<Option<CorporateAction>>
pub async fn corporate_actions(
&self,
key_0: Ticker,
key_1: LocalCAId
) -> Result<Option<CorporateAction>>
All recorded CAs thus far.
Only generic information is stored here.
Specific CAKind
s, e.g., benefits and corporate ballots, may use additional on-chain storage.
(ticker => local ID => the corporate action)
sourcepub async fn ca_doc_link(&self, key_0: CAId) -> Result<Vec<DocumentId>>
pub async fn ca_doc_link(&self, key_0: CAId) -> Result<Vec<DocumentId>>
Associations from CAs to Document
s via their IDs.
(CAId => [DocumentId])
The CorporateActions
map stores Ticker => LocalId => The CA
,
so we can infer Ticker => CAId
. Therefore, we don’t need a double map.
sourcepub async fn details(&self, key_0: CAId) -> Result<CADetails>
pub async fn details(&self, key_0: CAId) -> Result<CADetails>
Associates details in free-form text with a CA by its ID. (CAId => CADetails)
sourcepub async fn storage_version(&self) -> Result<Version>
pub async fn storage_version(&self) -> Result<Version>
Storage version.
Trait Implementations§
Auto Trait Implementations§
impl<'api> !RefUnwindSafe for QueryApi<'api>
impl<'api> Send for QueryApi<'api>
impl<'api> Sync for QueryApi<'api>
impl<'api> Unpin for QueryApi<'api>
impl<'api> !UnwindSafe for QueryApi<'api>
Blanket Implementations§
§impl<T> CheckedConversion for T
impl<T> CheckedConversion for T
§fn checked_from<T>(t: T) -> Option<Self>where
Self: TryFrom<T>,
fn checked_from<T>(t: T) -> Option<Self>where
Self: TryFrom<T>,
§fn checked_into<T>(self) -> Option<T>where
Self: TryInto<T>,
fn checked_into<T>(self) -> Option<T>where
Self: TryInto<T>,
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> SaturatedConversion for T
impl<T> SaturatedConversion for T
source§fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
source§fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
T
. Read more§impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
§fn unchecked_into(self) -> T
fn unchecked_into(self) -> T
unchecked_from
.source§impl<T, S> UniqueSaturatedInto<T> for Swhere
T: Bounded,
S: TryInto<T>,
impl<T, S> UniqueSaturatedInto<T> for Swhere
T: Bounded,
S: TryInto<T>,
source§fn unique_saturated_into(self) -> T
fn unique_saturated_into(self) -> T
T
.