mirror of
https://github.com/rust-lang/rust-analyzer.git
synced 2025-09-28 04:44:57 +00:00
Created expand_allowed_builtins, updated expand_macro to call this function
This commit is contained in:
parent
2df806a3a5
commit
020537cd06
2 changed files with 20 additions and 3 deletions
|
@ -315,6 +315,22 @@ impl<'db> SemanticsImpl<'db> {
|
|||
pub fn expand(&self, macro_call: &ast::MacroCall) -> Option<SyntaxNode> {
|
||||
let sa = self.analyze_no_infer(macro_call.syntax())?;
|
||||
|
||||
let macro_call = InFile::new(sa.file_id, macro_call);
|
||||
let file_id = if let Some(call) =
|
||||
<ast::MacroCall as crate::semantics::ToDef>::to_def(self, macro_call)
|
||||
{
|
||||
call.as_macro_file()
|
||||
} else {
|
||||
sa.expand(self.db, macro_call)?
|
||||
};
|
||||
|
||||
let node = self.parse_or_expand(file_id.into());
|
||||
Some(node)
|
||||
}
|
||||
|
||||
pub fn expand_allowed_builtins(&self, macro_call: &ast::MacroCall) -> Option<SyntaxNode> {
|
||||
let sa = self.analyze_no_infer(macro_call.syntax())?;
|
||||
|
||||
let macro_call = InFile::new(sa.file_id, macro_call);
|
||||
let file_id = if let Some(call) =
|
||||
<ast::MacroCall as crate::semantics::ToDef>::to_def(self, macro_call)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue