hugging_face_client/api/
get_collections.rs1use serde::Serialize;
2
3use crate::collection::Collection;
4
5#[derive(Debug, Serialize)]
7pub struct GetCollectionsReq<'a> {
8 #[serde(skip_serializing_if = "Option::is_none")]
9 owner: Option<&'a str>,
10
11 #[serde(skip_serializing_if = "Option::is_none")]
12 item: Option<&'a str>,
13
14 #[serde(skip_serializing_if = "Option::is_none")]
15 sort: Option<&'a str>,
16
17 #[serde(skip_serializing_if = "Option::is_none")]
18 limit: Option<usize>,
19
20 #[serde(skip_serializing_if = "Option::is_none", rename = "q")]
21 query: Option<&'a str>,
22}
23
24impl<'a> GetCollectionsReq<'a> {
25 pub fn new() -> Self {
26 GetCollectionsReq {
27 owner: None,
28 item: None,
29 sort: None,
30 limit: None,
31 query: None,
32 }
33 }
34
35 pub fn owner(mut self, owner: &'a str) -> Self {
37 self.owner = Some(owner);
38 self
39 }
40
41 pub fn item(mut self, item: &'a str) -> Self {
45 self.item = Some(item);
46 self
47 }
48
49 pub fn sort(mut self, sort: &'a str) -> Self {
52 self.sort = Some(sort);
53 self
54 }
55
56 pub fn limit(mut self, limit: usize) -> Self {
58 self.limit = Some(limit);
59 self
60 }
61
62 pub fn query(mut self, query: &'a str) -> Self {
64 self.query = Some(query);
65 self
66 }
67}
68
69pub type GetCollectionsRes = Vec<Collection>;