DefDatabase

Trait DefDatabase 

pub trait DefDatabase:
    InternDatabase
    + ExpandDatabase
    + SourceDatabase {
    // Required methods
    fn expand_proc_attr_macros(&self) -> bool;
    fn file_item_tree(&self, file_id: HirFileId, krate: Crate) -> &ItemTree;
    fn macro_def(&self, m: MacroId) -> MacroDefId;
    fn assoc_visibility(&self, def: AssocItemId) -> Visibility;
    fn crate_notable_traits(&self, krate: Crate) -> Option<&[TraitId]>;
    fn crate_supports_no_std(&self, crate_id: Crate) -> bool;
    fn include_macro_invoc(
        &self,
        crate_id: Crate,
    ) -> Arc<[(MacroCallId, EditionedFileId)]>;
    fn set_expand_proc_attr_macros(&mut self, __value: bool);
    fn set_expand_proc_attr_macros_with_durability(
        &mut self,
        __value: bool,
        durability: Durability,
    );
}

Required Methods§

fn expand_proc_attr_macros(&self) -> bool

fn file_item_tree(&self, file_id: HirFileId, krate: Crate) -> &ItemTree

fn macro_def(&self, m: MacroId) -> MacroDefId

fn assoc_visibility(&self, def: AssocItemId) -> Visibility

fn crate_notable_traits(&self, krate: Crate) -> Option<&[TraitId]>

fn crate_supports_no_std(&self, crate_id: Crate) -> bool

fn include_macro_invoc( &self, crate_id: Crate, ) -> Arc<[(MacroCallId, EditionedFileId)]>

fn set_expand_proc_attr_macros(&mut self, __value: bool)

fn set_expand_proc_attr_macros_with_durability( &mut self, __value: bool, durability: Durability, )

Implementors§

§

impl<DB> DefDatabase for DB
where DB: InternDatabase + ExpandDatabase + SourceDatabase,