mirror of
https://github.com/rust-lang/rust-analyzer.git
synced 2025-09-27 20:42:04 +00:00
Make term search fuel configurable
This commit is contained in:
parent
9e1adc76e5
commit
ab18604309
16 changed files with 56 additions and 9 deletions
|
@ -474,9 +474,7 @@ impl Expr {
|
|||
Expr::Method { target, func, .. } => {
|
||||
match func.as_assoc_item(db).and_then(|it| it.container_or_implemented_trait(db)) {
|
||||
Some(_) => false,
|
||||
None => {
|
||||
target.is_many()
|
||||
}
|
||||
None => target.is_many(),
|
||||
}
|
||||
}
|
||||
Expr::Field { expr, .. } => expr.contains_many_in_illegal_pos(db),
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
//! * `ctx` - Context for the term search
|
||||
//! * `defs` - Set of items in scope at term search target location
|
||||
//! * `lookup` - Lookup table for types
|
||||
//! * `should_continue` - Function that indicates when to stop iterating
|
||||
//! And they return iterator that yields type trees that unify with the `goal` type.
|
||||
|
||||
use std::iter;
|
||||
|
@ -97,6 +98,7 @@ pub(super) fn trivial<'a, DB: HirDatabase>(
|
|||
/// * `ctx` - Context for the term search
|
||||
/// * `defs` - Set of items in scope at term search target location
|
||||
/// * `lookup` - Lookup table for types
|
||||
/// * `should_continue` - Function that indicates when to stop iterating
|
||||
pub(super) fn type_constructor<'a, DB: HirDatabase>(
|
||||
ctx: &'a TermSearchCtx<'a, DB>,
|
||||
defs: &'a FxHashSet<ScopeDef>,
|
||||
|
@ -357,6 +359,7 @@ pub(super) fn type_constructor<'a, DB: HirDatabase>(
|
|||
/// * `ctx` - Context for the term search
|
||||
/// * `defs` - Set of items in scope at term search target location
|
||||
/// * `lookup` - Lookup table for types
|
||||
/// * `should_continue` - Function that indicates when to stop iterating
|
||||
pub(super) fn free_function<'a, DB: HirDatabase>(
|
||||
ctx: &'a TermSearchCtx<'a, DB>,
|
||||
defs: &'a FxHashSet<ScopeDef>,
|
||||
|
@ -488,6 +491,7 @@ pub(super) fn free_function<'a, DB: HirDatabase>(
|
|||
/// * `ctx` - Context for the term search
|
||||
/// * `defs` - Set of items in scope at term search target location
|
||||
/// * `lookup` - Lookup table for types
|
||||
/// * `should_continue` - Function that indicates when to stop iterating
|
||||
pub(super) fn impl_method<'a, DB: HirDatabase>(
|
||||
ctx: &'a TermSearchCtx<'a, DB>,
|
||||
_defs: &'a FxHashSet<ScopeDef>,
|
||||
|
@ -661,6 +665,7 @@ pub(super) fn impl_method<'a, DB: HirDatabase>(
|
|||
/// * `ctx` - Context for the term search
|
||||
/// * `defs` - Set of items in scope at term search target location
|
||||
/// * `lookup` - Lookup table for types
|
||||
/// * `should_continue` - Function that indicates when to stop iterating
|
||||
pub(super) fn struct_projection<'a, DB: HirDatabase>(
|
||||
ctx: &'a TermSearchCtx<'a, DB>,
|
||||
_defs: &'a FxHashSet<ScopeDef>,
|
||||
|
@ -734,6 +739,7 @@ pub(super) fn famous_types<'a, DB: HirDatabase>(
|
|||
/// * `ctx` - Context for the term search
|
||||
/// * `defs` - Set of items in scope at term search target location
|
||||
/// * `lookup` - Lookup table for types
|
||||
/// * `should_continue` - Function that indicates when to stop iterating
|
||||
pub(super) fn impl_static_method<'a, DB: HirDatabase>(
|
||||
ctx: &'a TermSearchCtx<'a, DB>,
|
||||
_defs: &'a FxHashSet<ScopeDef>,
|
||||
|
@ -905,6 +911,7 @@ pub(super) fn impl_static_method<'a, DB: HirDatabase>(
|
|||
/// * `ctx` - Context for the term search
|
||||
/// * `defs` - Set of items in scope at term search target location
|
||||
/// * `lookup` - Lookup table for types
|
||||
/// * `should_continue` - Function that indicates when to stop iterating
|
||||
pub(super) fn make_tuple<'a, DB: HirDatabase>(
|
||||
ctx: &'a TermSearchCtx<'a, DB>,
|
||||
_defs: &'a FxHashSet<ScopeDef>,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue