quick_oxibooks_sql/order.rs
1use std::fmt::Write;
2
3/// Struct representing an order clause in a query
4#[derive(Debug, PartialEq, Clone)]
5pub struct OrderClause {
6 pub(crate) field: &'static str,
7 pub(crate) order: Order,
8}
9
10impl OrderClause {
11 pub fn extend_query(&self, query: &mut String) {
12 write!(
13 query,
14 " {} {}",
15 self.field,
16 match self.order {
17 Order::Asc => "ASC",
18 Order::Desc => "DESC",
19 }
20 )
21 .unwrap();
22 }
23}
24
25/// Enum representing the order direction in a query
26#[derive(Debug, PartialEq, Clone)]
27pub enum Order {
28 Asc,
29 Desc,
30}