use std::marker::PhantomData;
#[derive(Clone, Debug, Eq, PartialEq)]
#[non_exhaustive]
pub struct EmptyBody;
#[derive(Clone, Debug, Eq, PartialEq)]
pub struct ListBody<T> {
phantom: PhantomData<T>,
}
#[derive(Clone, Debug, Eq, PartialEq)]
#[non_exhaustive]
pub struct MemberBody;
#[derive(Clone, Debug, Eq, PartialEq)]
#[non_exhaustive]
pub struct MemberListBody;
#[cfg(test)]
mod tests {
use super::{EmptyBody, ListBody, MemberBody, MemberListBody};
use static_assertions::assert_impl_all;
use std::fmt::Debug;
assert_impl_all!(EmptyBody: Clone, Debug, Eq, PartialEq, Send, Sync);
assert_impl_all!(ListBody<String>: Clone, Debug, Eq, PartialEq, Send, Sync);
assert_impl_all!(MemberBody: Clone, Debug, Eq, PartialEq, Send, Sync);
assert_impl_all!(MemberListBody: Clone, Debug, Eq, PartialEq, Send, Sync);
}