dfireBird
0e47befaf3
fix flyimport showing other types in impl
trait statement
2024-02-13 19:31:04 +05:30
dfireBird
9897662bf7
add completions to show only traits with qualified path prefix
2024-02-13 18:41:24 +05:30
dfireBird
0209c28136
add completions to show only traits in trait impl
statement
2024-02-12 22:56:03 +05:30
bors
cf8733353d
Auto merge of #16540 - Veykril:macro-arg, r=Veykril
...
internal: macro_arg query always returns a TokenTree
2024-02-12 16:32:40 +00:00
Lukas Wirth
2fa57d90bc
internal: macro_arg query always returns a TokenTree
2024-02-12 17:19:41 +01:00
Tavo Annus
125791386d
Cleanup term search related changes
2024-02-11 14:35:54 +02:00
Tavo Annus
0b838e3e23
Expand target for autocompletion
2024-02-11 13:33:29 +02:00
Tavo Annus
a946970e2d
Add quantified trees to reduce autocomplete options
2024-02-11 13:33:29 +02:00
Lukas Wirth
15bffe25bd
feat: Add break and return postfix keyword completions
2024-02-08 14:56:10 +01:00
bors
355c9444e1
Auto merge of #16448 - Young-Flash:typos, r=lnicola
...
minor: correct typos
I use [crate-ci/typos](https://github.com/crate-ci/typos ) to check typos in codebase, if it's ok with you, I'd like to add a typo check CI using [typos](https://github.com/crate-ci/typos ) (with Apache-2.0, MIT licenses).
BTW, we can add a [_typos.toml](https://github.com/crate-ci/typos/blob/master/docs/reference.md ) as white list for some intentional typos
2024-01-31 13:29:55 +00:00
Young-Flash
db9fd370ee
minor: correct typos
2024-01-30 21:43:43 +08:00
davidsemakula
8fab92feb2
normalize use trees when merging imports
2024-01-28 11:55:01 +03:00
bors
1ab8c7fd27
Auto merge of #16349 - Young-Flash:use_error_recovery, r=Veykril
...
fix: add error recovery for use_tree_list parsing
This PR adds error recovery for USE_TREE_LIST parsing, avoid the wrong USE_TREE_LIST making the rest parsing incorrectly.
before
![before](https://github.com/rust-lang/rust-analyzer/assets/71162630/c6643690-f25c-4ad9-93d9-e661ba5b1dc3 )
after
![after](https://github.com/rust-lang/rust-analyzer/assets/71162630/30a58c40-2711-48d2-b2e5-fb208fc8636c )
close https://github.com/rust-lang/rust-analyzer/issues/16227
2024-01-18 09:52:37 +00:00
Young-Flash
1c61326ca0
add use_tree_completion test
2024-01-18 17:35:01 +08:00
Lukas Wirth
4f75e0f910
Remove completion limit for trait importing method completions
2024-01-05 12:03:08 +01:00
unexge
b986d8ac92
Complete exported macros in #[macro_use($0)]
2023-12-16 16:19:58 +00:00
Lukas Wirth
18591ae5c8
Always render the path to be imported in the completion detail
2023-12-11 18:37:12 +01:00
Lukas Wirth
cf083fefc4
fix: Fix completion failing in format_args! with invalid template
2023-12-08 20:35:33 +01:00
bors
b03a0bda18
Auto merge of #15627 - jmintb:sort_imports, r=Veykril
...
feat: Prioritize import suggestions based on the expected type
Hi, this is a draft PR to solve #15384 . `Adt` types work and now I have a few questions :)
1. What other types make sense in this context? Looking at [ModuleDef](05666441ba/crates/hir/src/lib.rs (L275)
) I am thinking everything except Modules.
2. Is there an existing way of converting between `ModeuleDef` and `hir::Type` in the rustanalyzer code base?
3. Does this approach seem sound to you?
Ups: Upon writing this I just realised that the enum test is invalided as there are no enum variants and this no variant is passed as a function argument.
2023-12-08 12:39:23 +00:00
Lukas Wirth
1475848250
Cleanup
2023-12-08 13:31:31 +01:00
Lukas Wirth
d54745aed3
fix: Fix item tree lowering pub(self) to pub()
2023-12-08 11:59:44 +01:00
petr-tik
2d879e0431
Stop offering private functions in completions
...
Before
Private functions have RawVisibility module, but were
missed because take_types returned None early. After resolve_visibility
returned None, Visibility::Public was set instead and private functions
ended up being offered in autocompletion.
Choosing such a function results in an immediate error diagnostic
about using a private function.
After
Pattern match of take_types that returns None and
query for Module-level visibility from the original_module
Fix #15134 - tested with a unit test and a manual end-to-end
test of building rust-analyzer from my branch and opening
the reproduction repository
REVIEW
Refactor to move scope_def_applicable and check function visibility
from a module
Please let me know what's the best way to add a unit tests to
nameres, which is where the root cause was
2023-12-08 11:38:54 +01:00
austaras
2411f1383a
fix variant resolve for type alias
2023-11-26 21:00:11 +08:00
Lukas Wirth
4af730eb26
Do flyimport completions by prefix search for short paths
2023-10-05 13:21:12 +02:00
Lukas Wirth
ae5d74dffb
typing underscore should not trigger completions in types or patterns
2023-09-29 21:06:47 +02:00
vxpm
9f3d627681
add tests for full signatures
2023-09-23 19:39:42 -03:00
Lukas Wirth
853f8a21f7
Fix cfg completions not working
2023-09-08 10:49:15 +02:00
Lukas Wirth
637f496a81
fix: Fix auto-import (and completions) importing #[doc(hidden)]
items
2023-08-17 12:30:19 +02:00
bors
f73cd39f7b
Auto merge of #15383 - max-heller:issue-12568, r=Veykril
...
Suggest type completions for type arguments and constant completions for constant arguments
When determining completions for generic arguments, suggest only types or only constants if the corresponding generic parameter is a type parameter or constant parameter.
Closes #12568
2023-08-15 06:39:50 +00:00
Max Heller
fb98f522d2
fixme
2023-08-08 20:55:35 -04:00
Max Heller
0b57fa3931
test
2023-08-08 20:09:50 -04:00
Max Heller
bb9d8229b8
cleanup
2023-08-06 12:04:29 -04:00
Max Heller
bed1114b8b
handle omitted lifetime params
2023-08-05 09:07:29 -04:00
Max Heller
d48606fefe
unroll test loop
2023-08-05 08:22:58 -04:00
Max Heller
ee39905370
update tests
2023-08-05 08:13:13 -04:00
Max Heller
1b3e20fe68
handle more cases
2023-08-02 17:59:26 -04:00
Max Heller
f4038a6bf1
support AssocTypeArg and MethodCalls
2023-08-02 11:36:09 -04:00
Max Heller
b9ee4a5167
working for path segments
2023-07-31 21:21:40 -04:00
Max Heller
91581becac
update tests
2023-07-30 16:01:59 -04:00
Max Heller
784379eb79
wip
2023-07-29 15:23:35 -04:00
Max Heller
4bb7702833
check_edit
test
2023-07-29 11:39:59 -04:00
hkalbasi
f53f9230f0
Support #[derive_const(Trait)]
2023-06-29 20:58:35 +03:30
Ryo Yoshida
68a74decb6
Process macro_use
prelude in semantic scope resolver
2023-05-17 17:45:44 +09:00
hecatia-elegua
2a182f3f1f
Add doc(alias)-based method completion
2023-05-10 12:51:08 +02:00
bors
420a038da9
Auto merge of #14513 - hecatia-elegua:alias-based-completion2, r=Veykril
...
doc(alias)-based completion round 2
Follow-up on #14433
We can now complete fields, functions and some use/mods.
Flyimports don't behave, I don't really have the time to understand the structure there either.
While reading the flyimport code, I removed one method only used there, the closure-tree was a bit confusing, I can revert that if you want.
2023-04-24 06:34:25 +00:00
bors
2400b36a2e
Auto merge of #14577 - jsoref:spelling, r=lnicola
...
Spelling
This PR corrects misspellings identified by the [check-spelling action](https://github.com/marketplace/actions/check-spelling ).
The misspellings have been reported at https://github.com/jsoref/rust-analyzer/actions/runs/4699991040#summary-12751355796
The action reports that the changes in this PR would make it happy: https://github.com/jsoref/rust-analyzer/actions/runs/4699991284#summary-12751356293
closes #14567
2023-04-19 14:05:40 +00:00
Josh Soref
bc7d84c3ce
Spelling
...
* a rule
* access
* after
* amount
* annotations
* assignment
* assist
* associated
* attribute
* borrowed
* built-in type
* clarification
* command
* const
* constructor
* corresponding
* counterparts
* curlies
* dependencies
* deterministic
* diagnostic
* duplicates
* edge
* edited
* efficient
* elsewhere
* execution
* expression
* extensions
* extracted
* fill
* github
* helper
* heuristic
* incomplete
* indent end
* inlay
* invocation
* lifetime
* looking
* maybe
* move
* mutability
* mutable
* necessarily
* necessary
* negative
* nonexistent
* occurred
* offsets
* offsetted
* overridden
* parameters
* params
* params_and_where_preds_in_scope
* paredit
* parent
* parentheses
* prepended if
* punctuation
* receive
* receiver
* referring
* repeated
* representing
* semantically
* separately
* shouldnot
* siblings
* similar
* something's
* statement
* struct
* structure
* surprise
* the
* this
* transparent
* unimplemented
* unnamed
* unnecessary
* unneeded
* unreachable
* unterminated
* utilities
* variant
* variants
* visibility
* work around (v)
* workaround
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-04-19 09:45:55 -04:00
Ryo Yoshida
4db87f9346
Fix release channel detection
...
See bootstrap code in rust-lang/rust for versioning details: e49122fb1c/src/bootstrap/lib.rs (L1244)
2023-04-18 02:12:17 +09:00
hecatia-elegua
398af0259f
Merge branch 'master' into alias-based-completion2
2023-04-11 21:14:52 +02:00
Ryo Yoshida
e6e48728da
Add tests for stability check in completion
2023-04-11 21:21:15 +09:00