A better Rust ATProto crate
at main 2.1 kB view raw
1// @generated by jacquard-lexicon. DO NOT EDIT. 2// 3// Lexicon: sh.tangled.knot.member 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 bon::Builder 18)] 19#[serde(rename_all = "camelCase")] 20pub struct Member<'a> { 21 pub created_at: jacquard_common::types::string::Datetime, 22 /// domain that this member now belongs to 23 #[serde(borrow)] 24 #[builder(into)] 25 pub domain: jacquard_common::CowStr<'a>, 26 #[serde(borrow)] 27 pub subject: jacquard_common::types::string::Did<'a>, 28} 29 30/// Typed wrapper for GetRecord response with this collection's record type. 31#[derive( 32 serde::Serialize, 33 serde::Deserialize, 34 Debug, 35 Clone, 36 PartialEq, 37 Eq, 38 jacquard_derive::IntoStatic 39)] 40#[serde(rename_all = "camelCase")] 41pub struct MemberGetRecordOutput<'a> { 42 #[serde(skip_serializing_if = "std::option::Option::is_none")] 43 #[serde(borrow)] 44 pub cid: std::option::Option<jacquard_common::types::string::Cid<'a>>, 45 #[serde(borrow)] 46 pub uri: jacquard_common::types::string::AtUri<'a>, 47 #[serde(borrow)] 48 pub value: Member<'a>, 49} 50 51/// Marker type for deserializing records from this collection. 52pub struct MemberRecord; 53impl jacquard_common::xrpc::XrpcResp for MemberRecord { 54 const NSID: &'static str = "sh.tangled.knot.member"; 55 const ENCODING: &'static str = "application/json"; 56 type Output<'de> = MemberGetRecordOutput<'de>; 57 type Err<'de> = jacquard_common::types::collection::RecordError<'de>; 58} 59 60impl jacquard_common::types::collection::Collection for Member<'_> { 61 const NSID: &'static str = "sh.tangled.knot.member"; 62 type Record = MemberRecord; 63} 64 65impl From<MemberGetRecordOutput<'_>> for Member<'_> { 66 fn from(output: MemberGetRecordOutput<'_>) -> Self { 67 use jacquard_common::IntoStatic; 68 output.value.into_static() 69 } 70}