Trait hir::db::InternDatabase

pub trait InternDatabase:
    Database
    + HasQueryGroup<InternDatabaseStorage>
    + SourceDatabase {
Show 40 methods // Required methods fn intern_use(&self, loc: ItemLoc<Use>) -> UseId; fn lookup_intern_use(&self, key: UseId) -> ItemLoc<Use>; fn intern_extern_crate(&self, loc: ItemLoc<ExternCrate>) -> ExternCrateId; fn lookup_intern_extern_crate( &self, key: ExternCrateId, ) -> ItemLoc<ExternCrate>; fn intern_function(&self, loc: AssocItemLoc<Function>) -> FunctionId; fn lookup_intern_function(&self, key: FunctionId) -> AssocItemLoc<Function>; fn intern_struct(&self, loc: ItemLoc<Struct>) -> StructId; fn lookup_intern_struct(&self, key: StructId) -> ItemLoc<Struct>; fn intern_union(&self, loc: ItemLoc<Union>) -> UnionId; fn lookup_intern_union(&self, key: UnionId) -> ItemLoc<Union>; fn intern_enum(&self, loc: ItemLoc<Enum>) -> EnumId; fn lookup_intern_enum(&self, key: EnumId) -> ItemLoc<Enum>; fn intern_enum_variant(&self, loc: EnumVariantLoc) -> EnumVariantId; fn lookup_intern_enum_variant(&self, key: EnumVariantId) -> EnumVariantLoc; fn intern_const(&self, loc: AssocItemLoc<Const>) -> ConstId; fn lookup_intern_const(&self, key: ConstId) -> AssocItemLoc<Const>; fn intern_static(&self, loc: AssocItemLoc<Static>) -> StaticId; fn lookup_intern_static(&self, key: StaticId) -> AssocItemLoc<Static>; fn intern_trait(&self, loc: ItemLoc<Trait>) -> TraitId; fn lookup_intern_trait(&self, key: TraitId) -> ItemLoc<Trait>; fn intern_trait_alias(&self, loc: ItemLoc<TraitAlias>) -> TraitAliasId; fn lookup_intern_trait_alias( &self, key: TraitAliasId, ) -> ItemLoc<TraitAlias>; fn intern_type_alias(&self, loc: AssocItemLoc<TypeAlias>) -> TypeAliasId; fn lookup_intern_type_alias( &self, key: TypeAliasId, ) -> AssocItemLoc<TypeAlias>; fn intern_impl(&self, loc: ItemLoc<Impl>) -> ImplId; fn lookup_intern_impl(&self, key: ImplId) -> ItemLoc<Impl>; fn intern_extern_block(&self, loc: ItemLoc<ExternBlock>) -> ExternBlockId; fn lookup_intern_extern_block( &self, key: ExternBlockId, ) -> ItemLoc<ExternBlock>; fn intern_macro2(&self, loc: Macro2Loc) -> Macro2Id; fn lookup_intern_macro2(&self, key: Macro2Id) -> Macro2Loc; fn intern_proc_macro(&self, loc: ProcMacroLoc) -> ProcMacroId; fn lookup_intern_proc_macro(&self, key: ProcMacroId) -> ProcMacroLoc; fn intern_macro_rules(&self, loc: MacroRulesLoc) -> MacroRulesId; fn lookup_intern_macro_rules(&self, key: MacroRulesId) -> MacroRulesLoc; fn intern_block(&self, loc: BlockLoc) -> BlockId; fn lookup_intern_block(&self, key: BlockId) -> BlockLoc; fn intern_anonymous_const(&self, id: ConstBlockLoc) -> ConstBlockId; fn lookup_intern_anonymous_const(&self, key: ConstBlockId) -> ConstBlockLoc; fn intern_in_type_const(&self, id: InTypeConstLoc) -> InTypeConstId; fn lookup_intern_in_type_const(&self, key: InTypeConstId) -> InTypeConstLoc;
}

Required Methods§

fn intern_use(&self, loc: ItemLoc<Use>) -> UseId

fn lookup_intern_use(&self, key: UseId) -> ItemLoc<Use>

fn intern_extern_crate(&self, loc: ItemLoc<ExternCrate>) -> ExternCrateId

fn lookup_intern_extern_crate(&self, key: ExternCrateId) -> ItemLoc<ExternCrate>

fn intern_function(&self, loc: AssocItemLoc<Function>) -> FunctionId

fn lookup_intern_function(&self, key: FunctionId) -> AssocItemLoc<Function>

fn intern_struct(&self, loc: ItemLoc<Struct>) -> StructId

fn lookup_intern_struct(&self, key: StructId) -> ItemLoc<Struct>

fn intern_union(&self, loc: ItemLoc<Union>) -> UnionId

fn lookup_intern_union(&self, key: UnionId) -> ItemLoc<Union>

fn intern_enum(&self, loc: ItemLoc<Enum>) -> EnumId

fn lookup_intern_enum(&self, key: EnumId) -> ItemLoc<Enum>

fn intern_enum_variant(&self, loc: EnumVariantLoc) -> EnumVariantId

fn lookup_intern_enum_variant(&self, key: EnumVariantId) -> EnumVariantLoc

fn intern_const(&self, loc: AssocItemLoc<Const>) -> ConstId

fn lookup_intern_const(&self, key: ConstId) -> AssocItemLoc<Const>

fn intern_static(&self, loc: AssocItemLoc<Static>) -> StaticId

fn lookup_intern_static(&self, key: StaticId) -> AssocItemLoc<Static>

fn intern_trait(&self, loc: ItemLoc<Trait>) -> TraitId

fn lookup_intern_trait(&self, key: TraitId) -> ItemLoc<Trait>

fn intern_trait_alias(&self, loc: ItemLoc<TraitAlias>) -> TraitAliasId

fn lookup_intern_trait_alias(&self, key: TraitAliasId) -> ItemLoc<TraitAlias>

fn intern_type_alias(&self, loc: AssocItemLoc<TypeAlias>) -> TypeAliasId

fn lookup_intern_type_alias(&self, key: TypeAliasId) -> AssocItemLoc<TypeAlias>

fn intern_impl(&self, loc: ItemLoc<Impl>) -> ImplId

fn lookup_intern_impl(&self, key: ImplId) -> ItemLoc<Impl>

fn intern_extern_block(&self, loc: ItemLoc<ExternBlock>) -> ExternBlockId

fn lookup_intern_extern_block(&self, key: ExternBlockId) -> ItemLoc<ExternBlock>

fn intern_macro2(&self, loc: Macro2Loc) -> Macro2Id

fn lookup_intern_macro2(&self, key: Macro2Id) -> Macro2Loc

fn intern_proc_macro(&self, loc: ProcMacroLoc) -> ProcMacroId

fn lookup_intern_proc_macro(&self, key: ProcMacroId) -> ProcMacroLoc

fn intern_macro_rules(&self, loc: MacroRulesLoc) -> MacroRulesId

fn lookup_intern_macro_rules(&self, key: MacroRulesId) -> MacroRulesLoc

fn intern_block(&self, loc: BlockLoc) -> BlockId

fn lookup_intern_block(&self, key: BlockId) -> BlockLoc

fn intern_anonymous_const(&self, id: ConstBlockLoc) -> ConstBlockId

fn lookup_intern_anonymous_const(&self, key: ConstBlockId) -> ConstBlockLoc

fn intern_in_type_const(&self, id: InTypeConstLoc) -> InTypeConstId

fn lookup_intern_in_type_const(&self, key: InTypeConstId) -> InTypeConstLoc

Implementors§

§

impl<DB> InternDatabase for DB
where DB: SourceDatabase + Database + HasQueryGroup<InternDatabaseStorage>,