1 | use core::marker::PhantomData; |
2 | use std::panic::{RefUnwindSafe, UnwindSafe}; |
3 | use std::rc::Rc; |
4 | |
5 | // Zero sized marker with the correct set of autotrait impls we want all proc |
6 | // macro types to have. |
7 | pub(crate) type Marker = PhantomData<ProcMacroAutoTraits>; |
8 | |
9 | pub(crate) use self::value::*; |
10 | |
11 | mod value { |
12 | pub(crate) use core::marker::PhantomData as Marker; |
13 | } |
14 | |
15 | pub(crate) struct ProcMacroAutoTraits(Rc<()>); |
16 | |
17 | impl UnwindSafe for ProcMacroAutoTraits {} |
18 | impl RefUnwindSafe for ProcMacroAutoTraits {} |
19 | |