sqlorm_core/qb/additions/
select.rs

1use crate::selectable::Selectable;
2
3impl<T> crate::QB<T> {
4    pub fn select<'a, S: Selectable>(mut self, cols: S) -> crate::QB<S::Row> {
5        let cols = cols.collect();
6        if cols.is_empty() {
7            panic!("Cannot select empty column list. At least one column must be specified.");
8        }
9        self.base.columns = cols;
10        crate::QB {
11            base: self.base,
12            eager: self.eager,
13            batch: self.batch,
14            order_by: self.order_by,
15            limit: self.limit,
16            offset: self.offset,
17            filters: self.filters,
18            _marker: std::marker::PhantomData,
19        }
20    }
21}