diff options
| author | Philipp A | 2019-03-30 18:02:40 +0100 | 
|---|---|---|
| committer | Philipp A | 2019-03-30 18:02:40 +0100 | 
| commit | 626cc2d747f198ba94bac241a872927968f50431 (patch) | |
| tree | 27bb6689b3285de27a7e963676b62e6e8d53e5aa /src/document_tree/elements.rs | |
| parent | 647d667b7cc63aa2f3ad3fa84c5d892bded0be5b (diff) | |
| download | rust-rst-626cc2d747f198ba94bac241a872927968f50431.tar.bz2 | |
Skip empty attributes
Diffstat (limited to 'src/document_tree/elements.rs')
| -rw-r--r-- | src/document_tree/elements.rs | 12 | 
1 files changed, 8 insertions, 4 deletions
| diff --git a/src/document_tree/elements.rs b/src/document_tree/elements.rs index 52b1f5b..fe5a498 100644 --- a/src/document_tree/elements.rs +++ b/src/document_tree/elements.rs @@ -1,7 +1,7 @@  use serde_derive::Serialize;  use crate::target; -use super::attribute_types::{ID,NameToken}; +use super::attribute_types::{CanBeEmpty,ID,NameToken};  use super::extra_attributes::{self,ExtraAttributes};  use super::element_categories::*; @@ -28,9 +28,13 @@ pub trait Element {  #[derive(Debug,Default,PartialEq,Serialize)]  pub struct CommonAttributes { -	ids:     Vec<ID>, -	names:   Vec<NameToken>, -	source:  Option<target::Target>, +	#[serde(skip_serializing_if = "CanBeEmpty::is_empty")] +	ids: Vec<ID>, +	#[serde(skip_serializing_if = "CanBeEmpty::is_empty")] +	names: Vec<NameToken>, +	#[serde(skip_serializing_if = "CanBeEmpty::is_empty")] +	source: Option<target::Target>, +	#[serde(skip_serializing_if = "CanBeEmpty::is_empty")]  	classes: Vec<String>,  	//TODO: dupnames  } | 
