serde_derive/internals/
mod.rs

1pub mod ast;
2pub mod attr;
3
4mod case;
5mod check;
6mod ctxt;
7mod receiver;
8mod respan;
9mod symbol;
10
11use syn::Type;
12
13pub use self::ctxt::Ctxt;
14pub use self::receiver::replace_receiver;
15
16#[derive(Copy, Clone)]
17pub enum Derive {
18    Serialize,
19    Deserialize,
20}
21
22pub fn ungroup(mut ty: &Type) -> &Type {
23    while let Type::Group(group) = ty {
24        ty = &group.elem;
25    }
26    ty
27}