Add expansion infrastructure for derive macros

This commit is contained in:
Florian Diebold 2019-12-05 15:10:33 +01:00
parent 4c0bd068da
commit 18f6a995d0
18 changed files with 319 additions and 79 deletions

View file

@ -152,9 +152,9 @@ impl FromSource for MacroDef {
let module_src = ModuleSource::from_child_node(db, src.as_ref().map(|it| it.syntax()));
let module = Module::from_definition(db, InFile::new(src.file_id, module_src))?;
let krate = module.krate().crate_id();
let krate = Some(module.krate().crate_id());
let ast_id = AstId::new(src.file_id, db.ast_id_map(src.file_id).ast_id(&src.value));
let ast_id = Some(AstId::new(src.file_id, db.ast_id_map(src.file_id).ast_id(&src.value)));
let id: MacroDefId = MacroDefId { krate, ast_id, kind };
Some(MacroDef { id })