Trait openraft::compat::Upgrade

source ·
pub trait Upgrade<To> {
    // Required method
    fn upgrade(self) -> To;

    // Provided method
    fn try_upgrade(self) -> Result<To, (Self, &'static str)>
       where Self: Sized { ... }
}
Expand description

Upgrade Self to type To.

This trait is used to define types that can be directly upgraded from older versions of openraft to newer versions. For example, LogId can be upgrade: in openraft 0.7, LogId is (term, index), which is upgraded to (CommittedLeaderId, index) in openraft 0.8.

Required Methods§

source

fn upgrade(self) -> To

Upgrades the current instance to type To.

Provided Methods§

source

fn try_upgrade(self) -> Result<To, (Self, &'static str)>
where Self: Sized,

Implementors§

source§

impl<From, To> Upgrade<To> for Compat<From, To>
where From: Upgrade<To>,

A compatible type can be upgraded to To if From can be upgraded to To.