A better Rust ATProto crate
1// @generated by jacquard-lexicon. DO NOT EDIT. 2// 3// Lexicon: pub.leaflet.pages.linearDocument 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)] 18#[serde(rename_all = "camelCase")] 19pub struct Block<'a> { 20 #[serde(skip_serializing_if = "std::option::Option::is_none")] 21 #[serde(borrow)] 22 pub alignment: std::option::Option<jacquard_common::CowStr<'a>>, 23 #[serde(borrow)] 24 pub block: BlockRecordBlock<'a>, 25} 26 27#[jacquard_derive::open_union] 28#[derive( 29 serde::Serialize, 30 serde::Deserialize, 31 Debug, 32 Clone, 33 PartialEq, 34 Eq, 35 jacquard_derive::IntoStatic 36)] 37#[serde(tag = "$type")] 38#[serde(bound(deserialize = "'de: 'a"))] 39pub enum BlockRecordBlock<'a> { 40 #[serde(rename = "pub.leaflet.blocks.iframe")] 41 Iframe(Box<crate::pub_leaflet::blocks::iframe::Iframe<'a>>), 42 #[serde(rename = "pub.leaflet.blocks.text")] 43 Text(Box<crate::pub_leaflet::blocks::text::Text<'a>>), 44 #[serde(rename = "pub.leaflet.blocks.blockquote")] 45 Blockquote(Box<crate::pub_leaflet::blocks::blockquote::Blockquote<'a>>), 46 #[serde(rename = "pub.leaflet.blocks.header")] 47 Header(Box<crate::pub_leaflet::blocks::header::Header<'a>>), 48 #[serde(rename = "pub.leaflet.blocks.image")] 49 Image(Box<crate::pub_leaflet::blocks::image::Image<'a>>), 50 #[serde(rename = "pub.leaflet.blocks.unorderedList")] 51 UnorderedList(Box<crate::pub_leaflet::blocks::unordered_list::UnorderedList<'a>>), 52 #[serde(rename = "pub.leaflet.blocks.website")] 53 Website(Box<crate::pub_leaflet::blocks::website::Website<'a>>), 54 #[serde(rename = "pub.leaflet.blocks.math")] 55 Math(Box<crate::pub_leaflet::blocks::math::Math<'a>>), 56 #[serde(rename = "pub.leaflet.blocks.code")] 57 Code(Box<crate::pub_leaflet::blocks::code::Code<'a>>), 58 #[serde(rename = "pub.leaflet.blocks.horizontalRule")] 59 HorizontalRule(Box<crate::pub_leaflet::blocks::horizontal_rule::HorizontalRule<'a>>), 60 #[serde(rename = "pub.leaflet.blocks.bskyPost")] 61 BskyPost(Box<crate::pub_leaflet::blocks::bsky_post::BskyPost<'a>>), 62} 63 64#[jacquard_derive::lexicon] 65#[derive( 66 serde::Serialize, 67 serde::Deserialize, 68 Debug, 69 Clone, 70 PartialEq, 71 Eq, 72 jacquard_derive::IntoStatic 73)] 74#[serde(rename_all = "camelCase")] 75pub struct LinearDocument<'a> { 76 #[serde(skip_serializing_if = "std::option::Option::is_none")] 77 #[serde(borrow)] 78 pub blocks: std::option::Option< 79 Vec<crate::pub_leaflet::pages::linear_document::Block<'a>>, 80 >, 81} 82 83#[jacquard_derive::lexicon] 84#[derive( 85 serde::Serialize, 86 serde::Deserialize, 87 Debug, 88 Clone, 89 PartialEq, 90 Eq, 91 jacquard_derive::IntoStatic 92)] 93#[serde(rename_all = "camelCase")] 94pub struct Position<'a> { 95 pub block: Vec<i64>, 96 pub offset: i64, 97} 98 99#[jacquard_derive::lexicon] 100#[derive( 101 serde::Serialize, 102 serde::Deserialize, 103 Debug, 104 Clone, 105 PartialEq, 106 Eq, 107 jacquard_derive::IntoStatic 108)] 109#[serde(rename_all = "camelCase")] 110pub struct Quote<'a> { 111 #[serde(borrow)] 112 pub end: crate::pub_leaflet::pages::linear_document::Position<'a>, 113 #[serde(borrow)] 114 pub start: crate::pub_leaflet::pages::linear_document::Position<'a>, 115}