daffdd8674
3179: Introduce AsMacroCall trait r=matklad a=edwin0cheng This PR introduce `AsMacroCall` trait to help convert `ast::MacroCall` to `MacroCallId`. The main goal here is to centralize various conversions to single place and make implementing eager macro calls without further ado. ```rust pub trait AsMacroCall { fn as_call_id( &self, db: &(impl db::DefDatabase + AstDatabase), resolver: impl Fn(path::ModPath) -> Option<MacroDefId>, ) -> Option<MacroCallId>; } ``` Co-authored-by: Edwin Cheng <edwin0cheng@gmail.com>