use crate::QueryIds;
use crate::SelectKeysQuery;
use crate::query_builder::search::Search;
#[cfg_attr(feature = "api", derive(agdb::TypeDef))]
pub struct SelectKeys(pub SelectKeysQuery);
#[cfg_attr(feature = "api", derive(agdb::TypeDef))]
pub struct SelectKeysIds(pub SelectKeysQuery);
#[cfg_attr(feature = "api", agdb::impl_def())]
impl SelectKeys {
pub fn ids<T: Into<QueryIds>>(mut self, ids: T) -> SelectKeysIds {
self.0.0 = ids.into();
SelectKeysIds(self.0)
}
pub fn search(self) -> Search<SelectKeysQuery> {
Search(SelectKeysQuery(QueryIds::Search(crate::SearchQuery::new())))
}
}
#[cfg_attr(feature = "api", agdb::impl_def())]
impl SelectKeysIds {
pub fn query(self) -> SelectKeysQuery {
self.0
}
}