Enum solana_sdk::nonce::state::Versions
source · pub enum Versions {
Legacy(Box<State, Global>),
Current(Box<State, Global>),
}
Variants§
Legacy(Box<State, Global>)
Current(Box<State, Global>)
Current variants have durable nonce and blockhash domains separated.
Implementations§
source§impl Versions
impl Versions
pub fn new(state: State) -> Versions
pub fn state(&self) -> &State
sourcepub fn verify_recent_blockhash(&self, recent_blockhash: &Hash) -> Option<&Data>
pub fn verify_recent_blockhash(&self, recent_blockhash: &Hash) -> Option<&Data>
Checks if the recent_blockhash field in Transaction verifies, and returns nonce account data if so.
sourcepub fn upgrade(self) -> Option<Versions>
pub fn upgrade(self) -> Option<Versions>
Upgrades legacy nonces out of chain blockhash domains.
Updates the authority pubkey on the nonce account.
Trait Implementations§
source§impl<'de> Deserialize<'de> for Versions
impl<'de> Deserialize<'de> for Versions
source§fn deserialize<__D>(
__deserializer: __D
) -> Result<Versions, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>( __deserializer: __D ) -> Result<Versions, <__D as Deserializer<'de>>::Error>where __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
source§impl PartialEq<Versions> for Versions
impl PartialEq<Versions> for Versions
source§impl Serialize for Versions
impl Serialize for Versions
source§fn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>( &self, __serializer: __S ) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where __S: Serializer,
Serialize this value into the given Serde serializer. Read more