fn parse_derive_like<S: Stage>( cx: &mut AcceptContext<'_, '_, S>, args: &ArgParser<'_>, trait_name_mandatory: bool, ) -> Option<(Option<Symbol>, ThinVec<Symbol>)>