A better Rust ATProto crate
at main 3.7 kB view raw
1// @generated by jacquard-lexicon. DO NOT EDIT. 2// 3// Lexicon: sh.tangled.repo.mergeCheck 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 ConflictInfo<'a> { 21 /// Name of the conflicted file 22 #[serde(borrow)] 23 pub filename: jacquard_common::CowStr<'a>, 24 /// Reason for the conflict 25 #[serde(borrow)] 26 pub reason: jacquard_common::CowStr<'a>, 27} 28 29#[jacquard_derive::lexicon] 30#[derive( 31 serde::Serialize, 32 serde::Deserialize, 33 Debug, 34 Clone, 35 PartialEq, 36 Eq, 37 bon::Builder, 38 jacquard_derive::IntoStatic 39)] 40#[serde(rename_all = "camelCase")] 41#[builder(start_fn = new)] 42pub struct MergeCheck<'a> { 43 /// Target branch to merge into 44 #[serde(borrow)] 45 #[builder(into)] 46 pub branch: jacquard_common::CowStr<'a>, 47 /// DID of the repository owner 48 #[serde(borrow)] 49 pub did: jacquard_common::types::string::Did<'a>, 50 /// Name of the repository 51 #[serde(borrow)] 52 #[builder(into)] 53 pub name: jacquard_common::CowStr<'a>, 54 /// Patch or pull request to check for merge conflicts 55 #[serde(borrow)] 56 #[builder(into)] 57 pub patch: jacquard_common::CowStr<'a>, 58 #[serde(flatten)] 59 #[serde(borrow)] 60 #[builder(default)] 61 pub extra_data: ::std::collections::BTreeMap< 62 ::jacquard_common::smol_str::SmolStr, 63 ::jacquard_common::types::value::Data<'a>, 64 >, 65} 66 67#[jacquard_derive::lexicon] 68#[derive( 69 serde::Serialize, 70 serde::Deserialize, 71 Debug, 72 Clone, 73 PartialEq, 74 Eq, 75 jacquard_derive::IntoStatic 76)] 77#[serde(rename_all = "camelCase")] 78pub struct MergeCheckOutput<'a> { 79 /// List of files with merge conflicts 80 #[serde(skip_serializing_if = "std::option::Option::is_none")] 81 #[serde(borrow)] 82 pub conflicts: std::option::Option<Vec<jacquard_common::types::value::Data<'a>>>, 83 /// Error message if check failed 84 #[serde(skip_serializing_if = "std::option::Option::is_none")] 85 #[serde(borrow)] 86 pub error: std::option::Option<jacquard_common::CowStr<'a>>, 87 /// Whether the merge has conflicts 88 pub is_conflicted: bool, 89 /// Additional message about the merge check 90 #[serde(skip_serializing_if = "std::option::Option::is_none")] 91 #[serde(borrow)] 92 pub message: std::option::Option<jacquard_common::CowStr<'a>>, 93} 94 95///Response type for 96///sh.tangled.repo.mergeCheck 97pub struct MergeCheckResponse; 98impl jacquard_common::xrpc::XrpcResp for MergeCheckResponse { 99 const NSID: &'static str = "sh.tangled.repo.mergeCheck"; 100 const ENCODING: &'static str = "application/json"; 101 type Output<'de> = MergeCheckOutput<'de>; 102 type Err<'de> = jacquard_common::xrpc::GenericError<'de>; 103} 104 105impl<'a> jacquard_common::xrpc::XrpcRequest for MergeCheck<'a> { 106 const NSID: &'static str = "sh.tangled.repo.mergeCheck"; 107 const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure( 108 "application/json", 109 ); 110 type Response = MergeCheckResponse; 111} 112 113///Endpoint type for 114///sh.tangled.repo.mergeCheck 115pub struct MergeCheckRequest; 116impl jacquard_common::xrpc::XrpcEndpoint for MergeCheckRequest { 117 const PATH: &'static str = "/xrpc/sh.tangled.repo.mergeCheck"; 118 const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure( 119 "application/json", 120 ); 121 type Request<'de> = MergeCheck<'de>; 122 type Response = MergeCheckResponse; 123}