Enum solana_vest_program::vest_instruction::VestInstruction [−][src]
pub enum VestInstruction { InitializeAccount { terminator_pubkey: Pubkey, payee_pubkey: Pubkey, start_date_time: DateTime<Utc>, date_pubkey: Pubkey, total_lamports: u64, }, SetTerminator(Pubkey), SetPayee(Pubkey), RedeemTokens, Terminate, Renege(u64), VestAll, }
An instruction to progress the smart contract.
Variants
Declare and instantiate a vesting schedule
Fields of InitializeAccount
SetTerminator(Pubkey)
Change the terminator pubkey
SetPayee(Pubkey)
Change the payee pubkey
Load an account and pass its data to the contract for inspection.
Tell the contract that the InitializeAccount
with Signature
has been
signed by the containing transaction’s Pubkey
.
Renege(u64)
Reduce total_lamports by the given number of lamports. Tokens that have
already vested are unaffected. Use this instead of Terminate
to minimize
the number of token transfers.
Mark all available tokens as redeemable, regardless of the date.
Trait Implementations
impl Clone for VestInstruction
[src][+]
impl Debug for VestInstruction
[src][+]
impl<'de> Deserialize<'de> for VestInstruction
[src][+]
impl Eq for VestInstruction
[src]
impl PartialEq<VestInstruction> for VestInstruction
[src][+]
impl Serialize for VestInstruction
[src][+]
impl StructuralEq for VestInstruction
[src]
impl StructuralPartialEq for VestInstruction
[src]
Auto Trait Implementations
impl RefUnwindSafe for VestInstruction
impl Send for VestInstruction
impl Sync for VestInstruction
impl Unpin for VestInstruction
impl UnwindSafe for VestInstruction
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src][+]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src][+]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src][+]
T: ?Sized,
impl<T> DeserializeOwned for T where
T: for<'de> Deserialize<'de>,
[src]
T: for<'de> Deserialize<'de>,
impl<T> From<T> for T
[src][+]
impl<T, U> Into<U> for T where
U: From<T>,
[src][+]
U: From<T>,
impl<T> MaybeDebug for T where
T: Debug,
[src]
T: Debug,
impl<T> Same<T> for T
[src]
type Output = T
Should always be Self
impl<T> ToOwned for T where
T: Clone,
[src][+]
T: Clone,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src][+]
U: Into<T>,
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src][+]
U: TryFrom<T>,
impl<T> Typeable for T where
T: Any,
[+]
T: Any,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
[src][+]
V: MultiLane<T>,