diff --git a/src/mdast.rs b/src/mdast.rs index 4d95fa0..aec1eae 100644 --- a/src/mdast.rs +++ b/src/mdast.rs @@ -515,7 +515,7 @@ pub struct Root { /// Content model. pub children: Vec, /// Positional info. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub position: Option, } @@ -532,7 +532,7 @@ pub struct Paragraph { /// Content model. pub children: Vec, /// Positional info. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub position: Option, } @@ -549,7 +549,7 @@ pub struct Heading { /// Content model. pub children: Vec, /// Positional info. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub position: Option, // Extra. /// Rank (between `1` and `6`, both including). @@ -567,7 +567,7 @@ pub struct Heading { pub struct ThematicBreak { // Void. /// Positional info. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub position: Option, } @@ -584,7 +584,7 @@ pub struct Blockquote { /// Content model. pub children: Vec, /// Positional info. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub position: Option, } @@ -601,14 +601,14 @@ pub struct List { /// Content model. pub children: Vec, /// Positional info. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub position: Option, // Extra. /// Ordered (`true`) or unordered (`false`). pub ordered: bool, /// Starting number of the list. /// `None` when unordered. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub start: Option, /// One or more of its children are separated with a blank line from its /// siblings (when `true`), or not (when `false`). @@ -628,7 +628,7 @@ pub struct ListItem { /// Content model. pub children: Vec, /// Positional info. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub position: Option, // Extra. /// The item contains two or more children separated by a blank line @@ -636,7 +636,7 @@ pub struct ListItem { pub spread: bool, /// GFM: whether the item is done (when `true`), not done (when `false`), /// or indeterminate or not applicable (`None`). - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub checked: Option, } @@ -653,7 +653,7 @@ pub struct Html { /// Content model. pub value: String, /// Positional info. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub position: Option, } @@ -674,14 +674,14 @@ pub struct Code { /// Content model. pub value: String, /// Positional info. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub position: Option, // Extra. /// The language of computer code being marked up. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub lang: Option, /// Custom info relating to the node. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub meta: Option, } @@ -702,11 +702,11 @@ pub struct Math { /// Content model. pub value: String, /// Positional info. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub position: Option, // Extra. /// Custom info relating to the node. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub meta: Option, } @@ -721,14 +721,14 @@ pub struct Math { pub struct Definition { // Void. /// Positional info. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub position: Option, // Resource. /// URL to the referenced resource. pub url: String, /// Advisory info for the resource, such as something that would be /// appropriate for a tooltip. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub title: Option, // Association. /// Value that can match another node. @@ -742,7 +742,7 @@ pub struct Definition { /// To normalize a value, collapse markdown whitespace (`[\t\n\r ]+`) to a /// space, trim the optional initial and/or final space, and perform /// case-folding. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub label: Option, } @@ -759,7 +759,7 @@ pub struct Text { /// Content model. pub value: String, /// Positional info. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub position: Option, } @@ -776,7 +776,7 @@ pub struct Emphasis { /// Content model. pub children: Vec, /// Positional info. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub position: Option, } @@ -793,7 +793,7 @@ pub struct Strong { /// Content model. pub children: Vec, /// Positional info. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub position: Option, } @@ -810,7 +810,7 @@ pub struct InlineCode { /// Content model. pub value: String, /// Positional info. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub position: Option, } @@ -827,7 +827,7 @@ pub struct InlineMath { /// Content model. pub value: String, /// Positional info. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub position: Option, } @@ -843,7 +843,7 @@ pub struct InlineMath { pub struct Break { // Void. /// Positional info. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub position: Option, } @@ -860,14 +860,14 @@ pub struct Link { /// Content model. pub children: Vec, /// Positional info. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub position: Option, // Resource. /// URL to the referenced resource. pub url: String, /// Advisory info for the resource, such as something that would be /// appropriate for a tooltip. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub title: Option, } @@ -882,7 +882,7 @@ pub struct Link { pub struct Image { // Void. /// Positional info. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub position: Option, // Alternative. /// Equivalent content for environments that cannot represent the node as @@ -893,7 +893,7 @@ pub struct Image { pub url: String, /// Advisory info for the resource, such as something that would be /// appropriate for a tooltip. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub title: Option, } @@ -910,7 +910,7 @@ pub struct LinkReference { /// Content model. pub children: Vec, /// Positional info. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub position: Option, // Reference. /// Explicitness of a reference. @@ -928,7 +928,7 @@ pub struct LinkReference { /// To normalize a value, collapse markdown whitespace (`[\t\n\r ]+`) to a /// space, trim the optional initial and/or final space, and perform /// case-folding. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub label: Option, } @@ -943,7 +943,7 @@ pub struct LinkReference { pub struct ImageReference { // Void. /// Positional info. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub position: Option, // Alternative. /// Equivalent content for environments that cannot represent the node as @@ -965,7 +965,7 @@ pub struct ImageReference { /// To normalize a value, collapse markdown whitespace (`[\t\n\r ]+`) to a /// space, trim the optional initial and/or final space, and perform /// case-folding. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub label: Option, } @@ -982,7 +982,7 @@ pub struct FootnoteDefinition { /// Content model. pub children: Vec, /// Positional info. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub position: Option, // Association. /// Value that can match another node. @@ -996,7 +996,7 @@ pub struct FootnoteDefinition { /// To normalize a value, collapse markdown whitespace (`[\t\n\r ]+`) to a /// space, trim the optional initial and/or final space, and perform /// case-folding. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub label: Option, } @@ -1011,7 +1011,7 @@ pub struct FootnoteDefinition { pub struct FootnoteReference { // Void. /// Positional info. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub position: Option, // Association. /// Value that can match another node. @@ -1025,7 +1025,7 @@ pub struct FootnoteReference { /// To normalize a value, collapse markdown whitespace (`[\t\n\r ]+`) to a /// space, trim the optional initial and/or final space, and perform /// case-folding. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub label: Option, } @@ -1044,7 +1044,7 @@ pub struct Table { /// Content model. pub children: Vec, /// Positional info. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub position: Option, // Extra. /// Represents how cells in columns are aligned. @@ -1064,7 +1064,7 @@ pub struct TableRow { /// Content model. pub children: Vec, /// Positional info. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub position: Option, } @@ -1081,7 +1081,7 @@ pub struct TableCell { /// Content model. pub children: Vec, /// Positional info. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub position: Option, } @@ -1098,7 +1098,7 @@ pub struct Delete { /// Content model. pub children: Vec, /// Positional info. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub position: Option, } @@ -1119,7 +1119,7 @@ pub struct Yaml { /// Content model. pub value: String, /// Positional info. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub position: Option, } @@ -1140,7 +1140,7 @@ pub struct Toml { /// Content model. pub value: String, /// Positional info. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub position: Option, } @@ -1157,7 +1157,7 @@ pub struct MdxjsEsm { /// Content model. pub value: String, /// Positional info. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub position: Option, // Custom data on where each slice of `value` came from. @@ -1177,7 +1177,7 @@ pub struct MdxFlowExpression { /// Content model. pub value: String, /// Positional info. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub position: Option, // Custom data on where each slice of `value` came from. @@ -1197,7 +1197,7 @@ pub struct MdxTextExpression { /// Content model. pub value: String, /// Positional info. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub position: Option, // Custom data on where each slice of `value` came from. @@ -1221,13 +1221,13 @@ pub struct MdxJsxFlowElement { /// Content model. pub children: Vec, /// Positional info. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub position: Option, // JSX element. /// Name. /// /// Fragments have no name. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub name: Option, /// Attributes. pub attributes: Vec, @@ -1250,13 +1250,13 @@ pub struct MdxJsxTextElement { /// Content model. pub children: Vec, /// Positional info. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub position: Option, // JSX element. /// Name. /// /// Fragments have no name. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub name: Option, /// Attributes. pub attributes: Vec, @@ -1281,7 +1281,7 @@ pub struct MdxJsxAttribute { /// Key. pub name: String, /// Value. - #[serde(skip_serializing_if = "Option::is_none")] + #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))] pub value: Option, }