mirror of
https://github.com/rust-lang/rust-analyzer.git
synced 2025-10-01 11:31:15 +00:00
adapt ide_api to the new API
This commit is contained in:
parent
4c514a3e02
commit
6a5a1f5902
@ -47,7 +47,6 @@ impl Crate {
|
|||||||
|
|
||||||
#[derive(Debug)]
|
#[derive(Debug)]
|
||||||
pub enum Def {
|
pub enum Def {
|
||||||
EnumVariant(EnumVariant),
|
|
||||||
Const(Const),
|
Const(Const),
|
||||||
Static(Static),
|
Static(Static),
|
||||||
Trait(Trait),
|
Trait(Trait),
|
||||||
|
@ -40,7 +40,10 @@ pub(super) fn complete_path(acc: &mut Completions, ctx: &CompletionContext) {
|
|||||||
.add_to(acc)
|
.add_to(acc)
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
hir::ModuleDef::Function(_) | hir::ModuleDef::Struct(_) | hir::ModuleDef::Def(_) => return,
|
hir::ModuleDef::Function(_)
|
||||||
|
| hir::ModuleDef::Struct(_)
|
||||||
|
| hir::ModuleDef::Def(_)
|
||||||
|
| hir::ModuleDef::EnumVariant(_) => return,
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -222,6 +222,7 @@ impl Builder {
|
|||||||
hir::ModuleDef::Function(func) => return self.from_function(ctx, func),
|
hir::ModuleDef::Function(func) => return self.from_function(ctx, func),
|
||||||
hir::ModuleDef::Struct(it) => (CompletionItemKind::Struct, it.docs(ctx.db)),
|
hir::ModuleDef::Struct(it) => (CompletionItemKind::Struct, it.docs(ctx.db)),
|
||||||
hir::ModuleDef::Enum(it) => (CompletionItemKind::Enum, it.docs(ctx.db)),
|
hir::ModuleDef::Enum(it) => (CompletionItemKind::Enum, it.docs(ctx.db)),
|
||||||
|
hir::ModuleDef::EnumVariant(it) => (CompletionItemKind::EnumVariant, it.docs(ctx.db)),
|
||||||
hir::ModuleDef::Def(def_id) => match def_id.resolve(ctx.db) {
|
hir::ModuleDef::Def(def_id) => match def_id.resolve(ctx.db) {
|
||||||
hir::Def::Trait(it) => (CompletionItemKind::Trait, it.docs(ctx.db)),
|
hir::Def::Trait(it) => (CompletionItemKind::Trait, it.docs(ctx.db)),
|
||||||
hir::Def::Type(it) => (CompletionItemKind::TypeAlias, it.docs(ctx.db)),
|
hir::Def::Type(it) => (CompletionItemKind::TypeAlias, it.docs(ctx.db)),
|
||||||
|
@ -128,13 +128,16 @@ impl NavigationTarget {
|
|||||||
&*node,
|
&*node,
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
|
hir::ModuleDef::EnumVariant(var) => {
|
||||||
|
let (file_id, node) = var.source(db);
|
||||||
|
return Some(NavigationTarget::from_named(
|
||||||
|
file_id.original_file(db),
|
||||||
|
&*node,
|
||||||
|
));
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
let res = match def {
|
let res = match def {
|
||||||
Def::EnumVariant(ev) => {
|
|
||||||
let (file_id, node) = ev.source(db);
|
|
||||||
NavigationTarget::from_named(file_id.original_file(db), &*node)
|
|
||||||
}
|
|
||||||
Def::Trait(f) => {
|
Def::Trait(f) => {
|
||||||
let (file_id, node) = f.source(db);
|
let (file_id, node) = f.source(db);
|
||||||
NavigationTarget::from_named(file_id.original_file(db), &*node)
|
NavigationTarget::from_named(file_id.original_file(db), &*node)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user