Struct polymesh_api::polymesh::api::corporate_action::QueryApi
source · [−]pub struct QueryApi<'api> { /* private fields */ }
Implementations
sourceimpl<'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
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
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>ⓘNotable traits for Box<W, Global>impl<W> Write for Box<W, Global>where
W: Write + ?Sized,impl<R> Read for Box<R, Global>where
R: Read + ?Sized,impl<I, A> Iterator for Box<I, A>where
I: Iterator + ?Sized,
A: Allocator, type Item = <I as Iterator>::Item;impl<F, A> Future for Box<F, A>where
F: Future + Unpin + ?Sized,
A: Allocator + 'static, type Output = <F as Future>::Output;
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>ⓘNotable traits for Box<W, Global>impl<W> Write for Box<W, Global>where
W: Write + ?Sized,impl<R> Read for Box<R, Global>where
R: Read + ?Sized,impl<I, A> Iterator for Box<I, A>where
I: Iterator + ?Sized,
A: Allocator, type Item = <I as Iterator>::Item;impl<F, A> Future for Box<F, A>where
F: Future + Unpin + ?Sized,
A: Allocator + 'static, type Output = <F as Future>::Output;
W: Write + ?Sized,impl<R> Read for Box<R, Global>where
R: Read + ?Sized,impl<I, A> Iterator for Box<I, A>where
I: Iterator + ?Sized,
A: Allocator, type Item = <I as Iterator>::Item;impl<F, A> Future for Box<F, A>where
F: Future + Unpin + ?Sized,
A: Allocator + 'static, type Output = <F as Future>::Output;
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
. Read morefn 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
. Read morefn 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. Read morefn 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. Read moresourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
sourceimpl<T> SaturatedConversion for T
impl<T> SaturatedConversion for T
sourcefn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
sourcefn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
T
. Read moreimpl<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
.sourceimpl<T, S> UniqueSaturatedInto<T> for Swhere
T: Bounded,
S: TryInto<T>,
impl<T, S> UniqueSaturatedInto<T> for Swhere
T: Bounded,
S: TryInto<T>,
sourcefn unique_saturated_into(self) -> T
fn unique_saturated_into(self) -> T
T
.