arel 0.2.0

a sql orm base sqlx
Documentation
use crate::statements::ArelStatement;

#[derive(Debug)]
pub struct Lock {
    value: String,
}

impl ArelStatement for Lock {
    fn to_sql(&self) -> Option<crate::Sql> {
        Some(crate::Sql::new(&self.value))
    }
}

impl Lock {
    pub fn new() -> Self {
        Self { value: "FOR UPDATE".to_string() }
    }
}

#[cfg(test)]
mod tests {
    use crate::prelude::ArelBase;

    use super::*;
    #[test]
    fn to_sql() {
        struct User {}
        impl ArelBase for User {}

        let lock = Lock::new();
        assert_eq!(lock.to_sql().unwrap().to_sql_string().unwrap(), "FOR UPDATE");
    }
}