rust-analyzer/crates
bors[bot] 7a17fb9c43
Merge #11444
11444: feat: Fix up syntax errors in attribute macro inputs to make completion work more often r=flodiebold a=flodiebold

This implements the "fix up syntax nodes" workaround mentioned in #11014. It isn't much more than a proof of concept; I have only implemented a few cases, but it already helps quite a bit.

Some notes:
 - I'm not super happy about how much the fixup procedure needs to interact with the syntax node -> token tree conversion code (e.g. needing to share the token map). This could maybe be simplified with some refactoring of that code.
 - It would maybe be nice to have the fixup procedure reuse or share information with the parser, though I'm not really sure how much that would actually help.

Co-authored-by: Florian Diebold <flodiebold@gmail.com>
2022-02-12 12:48:46 +00:00
..
base_db Add test for giving attribute proc macros valid syntax 2022-02-07 12:54:08 +01:00
cfg Bump MSRV (1.57) 2021-12-16 01:56:12 +05:00
flycheck Bump MSRV (1.57) 2021-12-16 01:56:12 +05:00
hir Add completion module tailored towards use trees 2022-02-03 15:51:57 +01:00
hir_def Merge #11444 2022-02-12 12:48:46 +00:00
hir_expand Merge #11444 2022-02-12 12:48:46 +00:00
hir_ty Move attribute path completions into attribute completion module 2022-02-03 15:50:14 +01:00
ide Add test 2022-02-08 21:19:14 +05:30
ide_assists Merge #11394 2022-02-02 11:42:40 +00:00
ide_completion Merge #11444 2022-02-12 12:48:46 +00:00
ide_db Fix renaming super keyword 2022-02-08 21:56:39 +05:30
ide_diagnostics More correct $crate handling in eager macros 2022-01-27 16:57:53 +01:00
ide_ssr fix: Complete functions and methods from block level impls 2022-02-01 23:29:40 +01:00
limit Use compare_exchange_weak in limit::Limit::check 2022-01-28 18:19:35 +03:00
mbe Add back an assertion 2022-02-09 16:36:45 +01:00
parser Allow macros to expand to or-patterns 2022-01-17 16:52:53 +01:00
paths Bump MSRV (1.57) 2021-12-16 01:56:12 +05:00
proc_macro_api Set current working directory for procedural macros 2022-01-27 16:18:12 +03:00
proc_macro_srv fix: Fix proc-macro server not using the supplied span in Ident::new 2022-01-31 17:02:57 +01:00
proc_macro_test Bump MSRV (1.57) 2021-12-16 01:56:12 +05:00
profile Generate AnyHasDocComments node 2022-01-07 12:38:18 +01:00
project_model minor: Add some debug traces for cfg fetching 2022-02-01 13:35:34 +01:00
rust-analyzer Bump lsp-types 2022-02-09 09:22:25 +02:00
sourcegen Bump MSRV (1.57) 2021-12-16 01:56:12 +05:00
stdx Generate AnyHasDocComments node 2022-01-07 12:38:18 +01:00
syntax Move attribute path completions into attribute completion module 2022-02-03 15:50:14 +01:00
test_utils fix: Do not complete Drop::drop, complete std::mem::drop instead 2021-12-22 02:25:38 +01:00
text_edit Bump MSRV (1.57) 2021-12-16 01:56:12 +05:00
toolchain Bump MSRV (1.57) 2021-12-16 01:56:12 +05:00
tt Track synthetic tokens, to be able to remove them again later 2022-02-08 18:13:18 +01:00
vfs Bump MSRV (1.57) 2021-12-16 01:56:12 +05:00
vfs-notify Bump MSRV (1.57) 2021-12-16 01:56:12 +05:00