pub struct DelegatorVotePlan {
pub proposal: u64,
pub start_position: Position,
pub vote: Vote,
pub staked_note: Note,
pub unbonded_amount: Amount,
pub position: Position,
pub randomizer: Fr,
pub proof_blinding_r: Fq,
pub proof_blinding_s: Fq,
}Expand description
A plan to vote as a delegator.
Fields§
§proposal: u64The proposal ID to vote on.
start_position: PositionThe start position of the proposal.
vote: VoteThe vote to cast.
staked_note: NoteA staked note that was spendable before the proposal started.
unbonded_amount: AmountThe unbonded amount corresponding to the staked note.
position: PositionThe position of the staked note.
randomizer: FrThe randomizer to use.
proof_blinding_r: FqThe first blinding factor used for generating the ZK proof.
proof_blinding_s: FqThe second blinding factor used for generating the ZK proof.
Implementations§
Source§impl DelegatorVotePlan
impl DelegatorVotePlan
Sourcepub fn new<R: CryptoRng + RngCore>(
rng: &mut R,
proposal: u64,
start_position: Position,
vote: Vote,
staked_note: Note,
position: Position,
unbonded_amount: Amount,
) -> DelegatorVotePlan
pub fn new<R: CryptoRng + RngCore>( rng: &mut R, proposal: u64, start_position: Position, vote: Vote, staked_note: Note, position: Position, unbonded_amount: Amount, ) -> DelegatorVotePlan
Create a new DelegatorVotePlan that votes using the given positioned note.
Sourcepub fn delegator_vote(
&self,
fvk: &FullViewingKey,
auth_sig: Signature<SpendAuth>,
auth_path: Proof,
) -> DelegatorVote
pub fn delegator_vote( &self, fvk: &FullViewingKey, auth_sig: Signature<SpendAuth>, auth_path: Proof, ) -> DelegatorVote
Convenience method to construct the DelegatorVote described by this DelegatorVotePlan.
Sourcepub fn delegator_vote_body(&self, fvk: &FullViewingKey) -> DelegatorVoteBody
pub fn delegator_vote_body(&self, fvk: &FullViewingKey) -> DelegatorVoteBody
Construct the DelegatorVoteBody described by this DelegatorVotePlan.
Sourcepub fn delegator_vote_proof(
&self,
fvk: &FullViewingKey,
state_commitment_proof: Proof,
) -> DelegatorVoteProof
pub fn delegator_vote_proof( &self, fvk: &FullViewingKey, state_commitment_proof: Proof, ) -> DelegatorVoteProof
Construct the DelegatorVoteProof required by the DelegatorVoteBody described by this DelegatorVotePlan.
Sourcepub fn rk(&self, fvk: &FullViewingKey) -> VerificationKey<SpendAuth>
pub fn rk(&self, fvk: &FullViewingKey) -> VerificationKey<SpendAuth>
Construct the randomized verification key associated with this DelegatorVotePlan.
Sourcepub fn nullifier(&self, fvk: &FullViewingKey) -> Nullifier
pub fn nullifier(&self, fvk: &FullViewingKey) -> Nullifier
Construct the Nullifier associated with this DelegatorVotePlan.
pub fn balance(&self) -> Balance
Trait Implementations§
Source§impl Clone for DelegatorVotePlan
impl Clone for DelegatorVotePlan
Source§fn clone(&self) -> DelegatorVotePlan
fn clone(&self) -> DelegatorVotePlan
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for DelegatorVotePlan
impl Debug for DelegatorVotePlan
Source§impl<'de> Deserialize<'de> for DelegatorVotePlan
impl<'de> Deserialize<'de> for DelegatorVotePlan
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl DomainType for DelegatorVotePlan
impl DomainType for DelegatorVotePlan
Source§impl From<DelegatorVotePlan> for DelegatorVotePlan
impl From<DelegatorVotePlan> for DelegatorVotePlan
Source§fn from(inner: DelegatorVotePlan) -> Self
fn from(inner: DelegatorVotePlan) -> Self
Source§impl Serialize for DelegatorVotePlan
impl Serialize for DelegatorVotePlan
Source§impl TryFrom<DelegatorVotePlan> for DelegatorVotePlan
impl TryFrom<DelegatorVotePlan> for DelegatorVotePlan
Auto Trait Implementations§
impl !Freeze for DelegatorVotePlan
impl RefUnwindSafe for DelegatorVotePlan
impl Send for DelegatorVotePlan
impl Sync for DelegatorVotePlan
impl Unpin for DelegatorVotePlan
impl UnwindSafe for DelegatorVotePlan
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Conv for T
impl<T> Conv for T
Source§impl<T> EventDomainType for Twhere
T: DomainType,
<T as DomainType>::Proto: ProtoEvent,
Error: From<<T as TryFrom<<T as DomainType>::Proto>>::Error>,
impl<T> EventDomainType for Twhere
T: DomainType,
<T as DomainType>::Proto: ProtoEvent,
Error: From<<T as TryFrom<<T as DomainType>::Proto>>::Error>,
§impl<T> FmtForward for T
impl<T> FmtForward for T
§fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
self to use its Binary implementation when Debug-formatted.§fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
self to use its Display implementation when
Debug-formatted.§fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
self to use its LowerExp implementation when
Debug-formatted.§fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
self to use its LowerHex implementation when
Debug-formatted.§fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
self to use its Octal implementation when Debug-formatted.§fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
self to use its Pointer implementation when
Debug-formatted.§fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
self to use its UpperExp implementation when
Debug-formatted.§fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
self to use its UpperHex implementation when
Debug-formatted.§fn fmt_list(self) -> FmtList<Self>where
&'a Self: for<'a> IntoIterator,
fn fmt_list(self) -> FmtList<Self>where
&'a Self: for<'a> IntoIterator,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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>
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>
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 moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
self and passes that borrow into the pipe function. Read more§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
self and passes that borrow into the pipe function. Read more§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R,
) -> R
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
self, then passes self.as_ref() into the pipe function.§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
self, then passes self.as_mut() into the pipe
function.§fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
self, then passes self.deref() into the pipe function.§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> Tap for T
impl<T> Tap for T
§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
Borrow<B> of a value. Read more§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
BorrowMut<B> of a value. Read more§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
AsRef<R> view of a value. Read more§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
AsMut<R> view of a value. Read more§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
Deref::Target of a value. Read more§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
Deref::Target of a value. Read more§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
.tap() only in debug builds, and is erased in release builds.§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
.tap_mut() only in debug builds, and is erased in release
builds.§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
.tap_borrow() only in debug builds, and is erased in release
builds.§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
.tap_borrow_mut() only in debug builds, and is erased in release
builds.§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
.tap_ref() only in debug builds, and is erased in release
builds.§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
.tap_ref_mut() only in debug builds, and is erased in release
builds.§fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
.tap_deref() only in debug builds, and is erased in release
builds.