Trait ExpandDatabase

pub trait ExpandDatabase: RootQueryDb {
Show 20 methods // Required methods fn proc_macros(&self) -> Arc<ProcMacros>; fn proc_macros_for_crate( &self, krate: Crate, ) -> Option<Arc<CrateProcMacros>>; fn ast_id_map(&self, file_id: HirFileId) -> Arc<AstIdMap>; fn parse_or_expand(&self, file_id: HirFileId) -> SyntaxNode<RustLanguage>; fn parse_macro_expansion( &self, macro_file: MacroFileId, ) -> ValueResult<(Parse<SyntaxNode<RustLanguage>>, Arc<SpanMap<SyntaxContext>>), ExpandError>; fn span_map(&self, file_id: HirFileId) -> SpanMap; fn expansion_span_map( &self, file_id: MacroFileId, ) -> Arc<SpanMap<SyntaxContext>>; fn real_span_map(&self, file_id: EditionedFileId) -> Arc<RealSpanMap>; fn intern_macro_call(&self, macro_call: MacroCallLoc) -> MacroCallId; fn lookup_intern_macro_call(&self, macro_call: MacroCallId) -> MacroCallLoc; fn macro_arg( &self, id: MacroCallId, ) -> (Arc<TopSubtree<SpanData<SyntaxContext>>>, SyntaxFixupUndoInfo, SpanData<SyntaxContext>); fn macro_arg_considering_derives( &self, id: MacroCallId, kind: &MacroCallKind, ) -> (Arc<TopSubtree<SpanData<SyntaxContext>>>, SyntaxFixupUndoInfo, SpanData<SyntaxContext>); fn macro_expander(&self, id: MacroDefId) -> TokenExpander; fn decl_macro_expander( &self, def_crate: Crate, id: InFileWrapper<HirFileId, FileAstId<Macro>>, ) -> Arc<DeclarativeMacroExpander>; fn expand_proc_macro( &self, call: MacroCallId, ) -> ValueResult<Arc<TopSubtree<SpanData<SyntaxContext>>>, ExpandError>; fn proc_macro_span( &self, fun: InFileWrapper<HirFileId, FileAstId<Fn>>, ) -> SpanData<SyntaxContext>; fn parse_macro_expansion_error( &self, macro_call: MacroCallId, ) -> Option<Arc<ValueResult<Arc<[SyntaxError]>, ExpandError>>>; fn syntax_context(&self, file: HirFileId, edition: Edition) -> SyntaxContext; fn set_proc_macros(&mut self, __value: Arc<ProcMacros>); fn set_proc_macros_with_durability( &mut self, __value: Arc<ProcMacros>, durability: Durability, );
}

Required Methods§

fn proc_macros(&self) -> Arc<ProcMacros>

fn proc_macros_for_crate(&self, krate: Crate) -> Option<Arc<CrateProcMacros>>

fn ast_id_map(&self, file_id: HirFileId) -> Arc<AstIdMap>

fn parse_or_expand(&self, file_id: HirFileId) -> SyntaxNode<RustLanguage>

fn parse_macro_expansion( &self, macro_file: MacroFileId, ) -> ValueResult<(Parse<SyntaxNode<RustLanguage>>, Arc<SpanMap<SyntaxContext>>), ExpandError>

fn span_map(&self, file_id: HirFileId) -> SpanMap

fn expansion_span_map( &self, file_id: MacroFileId, ) -> Arc<SpanMap<SyntaxContext>>

fn real_span_map(&self, file_id: EditionedFileId) -> Arc<RealSpanMap>

fn intern_macro_call(&self, macro_call: MacroCallLoc) -> MacroCallId

fn lookup_intern_macro_call(&self, macro_call: MacroCallId) -> MacroCallLoc

fn macro_arg( &self, id: MacroCallId, ) -> (Arc<TopSubtree<SpanData<SyntaxContext>>>, SyntaxFixupUndoInfo, SpanData<SyntaxContext>)

fn macro_arg_considering_derives( &self, id: MacroCallId, kind: &MacroCallKind, ) -> (Arc<TopSubtree<SpanData<SyntaxContext>>>, SyntaxFixupUndoInfo, SpanData<SyntaxContext>)

fn macro_expander(&self, id: MacroDefId) -> TokenExpander

fn decl_macro_expander( &self, def_crate: Crate, id: InFileWrapper<HirFileId, FileAstId<Macro>>, ) -> Arc<DeclarativeMacroExpander>

fn expand_proc_macro( &self, call: MacroCallId, ) -> ValueResult<Arc<TopSubtree<SpanData<SyntaxContext>>>, ExpandError>

fn proc_macro_span( &self, fun: InFileWrapper<HirFileId, FileAstId<Fn>>, ) -> SpanData<SyntaxContext>

fn parse_macro_expansion_error( &self, macro_call: MacroCallId, ) -> Option<Arc<ValueResult<Arc<[SyntaxError]>, ExpandError>>>

fn syntax_context(&self, file: HirFileId, edition: Edition) -> SyntaxContext

fn set_proc_macros(&mut self, __value: Arc<ProcMacros>)

fn set_proc_macros_with_durability( &mut self, __value: Arc<ProcMacros>, durability: Durability, )

Implementors§

§

impl<DB> ExpandDatabase for DB
where DB: RootQueryDb,