1use alloc::rc::Rc; 2use core::marker::PhantomData; 3use core::panic::{RefUnwindSafe, UnwindSafe}; 4 5// Zero sized marker with the correct set of autotrait impls we want all proc 6// macro types to have. 7pub(crate) type Marker = PhantomData<ProcMacroAutoTraits>; 8 9pub(crate) use self::value::*; 10 11mod value { 12 pub(crate) use core::marker::PhantomData as Marker; 13} 14 15pub(crate) struct ProcMacroAutoTraits( 16 #[allow(dead_code)] // https://github.com/rust-lang/rust/issues/119645 17 Rc<()>, 18); 19 20impl UnwindSafe for ProcMacroAutoTraits {} 21impl RefUnwindSafe for ProcMacroAutoTraits {} 22