pub async fn start(&self, cmd: &[u8]) -> Result<Start> {
        let res = self.inner.lock().unwrap().start(cmd);
        self.persist().await.expect("failed to persist");
        res
    }
/// Start agreement on the next command to be appended to Raft's log.
///
/// If this server isn't the leader, returns [`Error::NotLeader`].
/// Otherwise start the agreement and return immediately.
///
/// There is no guarantee that this command will ever be committed to the
/// Raft log, since the leader may fail or lose an election.
Start agreement on the next command to be appended to Raft's log.
If this server isn't the leader, returns [`Error::NotLeader`].
Otherwise start the agreement and return immediately.

There is no guarantee that this command will ever be committed to the
Raft log, since the leader may fail or lose an election.
Start agreement on the next command to be appended to Raft ' s log . If this server isn ' t the leader returns [ ` Error :: NotLeader ` ] . Otherwise start the agreement and return immediately . There is no guarantee that this command will ever be committed to the Raft log since the leader may fail or lose an election .
pub async fn start(&self, cmd: &[u8]) -> Result<Start> {
        let res = self.inner.lock().unwrap().start(cmd);
        self.persist().await.expect("failed to persist");
        res
    }
pub async fn start ( & self , cmd : & [ u8 ] ) -> Result < Start > { let res = self . inner . lock ( ) . unwrap ( ) . start ( cmd ) ; self . persist ( ) . await . expect ( " " ) ; res }
Start agreement on the next command to be appended to Raft's log.
Start agreement on the next command to be appended to Raft ' s log .
&self
cmd
&[u8]
&self
cmd
&[u8]