1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
//! This mod specifies RedlockResult as an alias for Result and the various Error enum types

use std::result;

/// Redlock Error 
#[derive(PartialEq, Eq, Copy, Clone, Debug)]
pub enum Error {
    /// Failed to acquire lock
    CannotObtainLock,
    /// Error communicating with 1 or more Redis masters
    RedlockConn,
    /// Failed to connect to enough Redis masters
    NotEnoughMasters,
    /// Lock wasn't valid (may have expired)
    InvalidLock,
    /// Unlock instance failed
    UnlockFailed,
}

pub type RedlockResult<T> = result::Result<T, Error>;