apidoc-attr 0.3.3

Apidoc attr
Documentation
#[cfg(feature = "core")]
use serde::{Deserialize, Serialize};

#[cfg(feature = "proc")]
use procmeta::prelude::*;

#[derive(Clone)]
#[cfg_attr(feature = "core", derive(Debug, Serialize, Deserialize, PartialEq, Eq))]
#[cfg_attr(feature = "proc", derive(GetTokenStream, MetaParser))]
pub enum ParsedSerdeAttr {
    #[cfg_attr(feature = "proc", name("serde"))]
    Rename { rename: String },

    #[cfg_attr(feature = "proc", name("serde"))]
    RenameSpecial(SerdeRename),

    #[cfg_attr(feature = "proc", name("serde"))]
    RenameAll { rename_all: String },

    #[cfg_attr(feature = "proc", name("serde"))]
    RenameAllSpecial(SerdeRenameAll),

    #[cfg_attr(feature = "proc", name("serde"))]
    SkipSpecial(SerdeSkip),

    #[cfg_attr(feature = "proc", name("serde"))]
    Default(SerdeDefault),

    #[cfg_attr(feature = "proc", name("serde"))]
    Flatten(SerdeFlatten),
}

#[derive(Clone)]
#[cfg_attr(feature = "core", derive(Debug, Serialize, Deserialize, PartialEq, Eq))]
#[cfg_attr(feature = "proc", derive(GetTokenStream, MetaParser))]
pub enum SerdeFlatten {
    Flatten,
}

#[derive(Clone)]
#[cfg_attr(feature = "core", derive(Debug, Serialize, Deserialize, PartialEq, Eq))]
#[cfg_attr(feature = "proc", derive(GetTokenStream, MetaParser))]
pub enum SerdeRename {
    Rename {
        serialize: Option<String>,
        deserialize: Option<String>,
    },
}

#[derive(Clone)]
#[cfg_attr(feature = "core", derive(Debug, Serialize, Deserialize, PartialEq, Eq))]
#[cfg_attr(feature = "proc", derive(GetTokenStream, MetaParser))]
pub enum SerdeRenameAll {
    Rename {
        serialize: Option<String>,
        deserialize: Option<String>,
    },
}

#[derive(Clone)]
#[cfg_attr(feature = "core", derive(Debug, Serialize, Deserialize, PartialEq, Eq))]
#[cfg_attr(feature = "proc", derive(GetTokenStream, MetaParser))]
pub enum SerdeSkip {
    Skip,

    SkipSerializing,

    SkipDeserializing,
}

#[derive(Clone)]
#[cfg_attr(feature = "core", derive(Debug, Serialize, Deserialize, PartialEq, Eq))]
#[cfg_attr(feature = "proc", derive(GetTokenStream, MetaParser))]
pub enum SerdeDefault {
    Default,
}