typed_sql/query/
delete.rs

1use crate::table::Table;
2use crate::ToSql;
3use std::marker::PhantomData;
4
5pub struct Delete<T: ?Sized> {
6    _table: PhantomData<T>,
7}
8
9impl<T: ?Sized> Delete<T> {
10    pub(crate) const fn new() -> Self {
11        Self {
12            _table: PhantomData,
13        }
14    }
15}
16
17impl<T: Table + ?Sized> ToSql for Delete<T> {
18    fn write_sql_unchecked(&self, sql: &mut String) {
19        sql.push_str("DELETE FROM ");
20        sql.push_str(T::NAME);
21    }
22}
23
24impl<T: ?Sized> Clone for Delete<T> {
25    fn clone(&self) -> Self {
26        *self
27    }
28}
29
30impl<T: ?Sized> Copy for Delete<T> {}