chatwork 0.1.0

Chatwork API client.
Documentation
#[doc(hidden)]
#[macro_export]
macro_rules! __path {
    ($path:expr, $($name:ident=$value:expr,)*) => {
        format!(concat!(crate::__path!($path)), $($name = $value,)*).as_str()
    };
		($($expr:expr),*) => {
        concat!("/v2" $(,$expr)*)
    };
}

#[doc(hidden)]
#[macro_export]
macro_rules! __query {
    () => {
        Option::<&()>::None
    };
    ($expr:expr) => {
        Some($expr)
    };
}

#[doc(hidden)]
#[macro_export]
macro_rules! path_and_query {
    ($path:expr $(,$name:ident=$value:expr)+ $(;$query:expr)?) => {
        crate::client::PathAndQuery { path: crate::__path!($path, $($name=$value,)*), query: crate::__query!($($query)*) }
    };
    ($path:expr $(,$query:expr)?) => {
        crate::client::PathAndQuery { path: crate::__path!($path), query: crate::__query!($($query)*) }
    };
}

#[doc(hidden)]
#[macro_export]
macro_rules! derive_service {
    ($($tt:tt)*) => {
        #[derive(Clone, Debug)]
        $($tt)*
    };
}

#[doc(hidden)]
#[macro_export]
macro_rules! derive_query_or_form {
    ($($tt:tt)*) => {
        #[derive(Clone, PartialEq, Debug, Default, serde::Serialize)]
        $($tt)*
    };
}

#[doc(hidden)]
#[macro_export]
macro_rules! derive_model {
    ($($tt:tt)*) => {
        #[derive(Clone, PartialEq, Debug, serde::Deserialize)]
        $($tt)*
    };
}

#[doc(hidden)]
#[macro_export]
macro_rules! derive_enum {
    ($($tt:tt)*) => {
        #[derive(Clone, PartialEq, Debug, serde::Serialize, serde::Deserialize)]
        #[serde(rename_all = "snake_case")]
        $($tt)*
    };
}