A better Rust ATProto crate
at main 3.3 kB view raw
1// @generated by jacquard-lexicon. DO NOT EDIT. 2// 3// Lexicon: com.atproto.sync.listHosts 4// 5// This file was automatically generated from Lexicon schemas. 6// Any manual changes will be overwritten on the next regeneration. 7 8#[jacquard_derive::lexicon] 9#[derive( 10 serde::Serialize, 11 serde::Deserialize, 12 Debug, 13 Clone, 14 PartialEq, 15 Eq, 16 jacquard_derive::IntoStatic, 17 Default 18)] 19#[serde(rename_all = "camelCase")] 20pub struct Host<'a> { 21 #[serde(skip_serializing_if = "std::option::Option::is_none")] 22 pub account_count: std::option::Option<i64>, 23 /// hostname of server; not a URL (no scheme) 24 #[serde(borrow)] 25 pub hostname: jacquard_common::CowStr<'a>, 26 /// Recent repo stream event sequence number. May be delayed from actual stream processing (eg, persisted cursor not in-memory cursor). 27 #[serde(skip_serializing_if = "std::option::Option::is_none")] 28 pub seq: std::option::Option<i64>, 29 #[serde(skip_serializing_if = "std::option::Option::is_none")] 30 #[serde(borrow)] 31 pub status: std::option::Option<crate::com_atproto::sync::HostStatus<'a>>, 32} 33 34#[derive( 35 serde::Serialize, 36 serde::Deserialize, 37 Debug, 38 Clone, 39 PartialEq, 40 Eq, 41 bon::Builder, 42 jacquard_derive::IntoStatic 43)] 44#[builder(start_fn = new)] 45#[serde(rename_all = "camelCase")] 46pub struct ListHosts<'a> { 47 #[serde(skip_serializing_if = "std::option::Option::is_none")] 48 #[serde(borrow)] 49 #[builder(into)] 50 pub cursor: std::option::Option<jacquard_common::CowStr<'a>>, 51 ///(default: 200, min: 1, max: 1000) 52 #[serde(skip_serializing_if = "std::option::Option::is_none")] 53 pub limit: std::option::Option<i64>, 54} 55 56#[jacquard_derive::lexicon] 57#[derive( 58 serde::Serialize, 59 serde::Deserialize, 60 Debug, 61 Clone, 62 PartialEq, 63 Eq, 64 jacquard_derive::IntoStatic 65)] 66#[serde(rename_all = "camelCase")] 67pub struct ListHostsOutput<'a> { 68 #[serde(skip_serializing_if = "std::option::Option::is_none")] 69 #[serde(borrow)] 70 pub cursor: std::option::Option<jacquard_common::CowStr<'a>>, 71 /// Sort order is not formally specified. Recommended order is by time host was first seen by the server, with oldest first. 72 #[serde(borrow)] 73 pub hosts: Vec<jacquard_common::types::value::Data<'a>>, 74} 75 76///Response type for 77///com.atproto.sync.listHosts 78pub struct ListHostsResponse; 79impl jacquard_common::xrpc::XrpcResp for ListHostsResponse { 80 const NSID: &'static str = "com.atproto.sync.listHosts"; 81 const ENCODING: &'static str = "application/json"; 82 type Output<'de> = ListHostsOutput<'de>; 83 type Err<'de> = jacquard_common::xrpc::GenericError<'de>; 84} 85 86impl<'a> jacquard_common::xrpc::XrpcRequest for ListHosts<'a> { 87 const NSID: &'static str = "com.atproto.sync.listHosts"; 88 const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query; 89 type Response = ListHostsResponse; 90} 91 92///Endpoint type for 93///com.atproto.sync.listHosts 94pub struct ListHostsRequest; 95impl jacquard_common::xrpc::XrpcEndpoint for ListHostsRequest { 96 const PATH: &'static str = "/xrpc/com.atproto.sync.listHosts"; 97 const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query; 98 type Request<'de> = ListHosts<'de>; 99 type Response = ListHostsResponse; 100}