about summary refs log tree commit diff
path: root/crates/syntax/src/ast/node_ext.rs
AgeCommit message (Collapse)AuthorLines
2022-05-24internal: Refactor our record pat/expr handling in completion contextLukas Wirth-0/+4
2022-05-23fix: When reference searching macro inputs, don't search everything that was ↵Lukas Wirth-0/+7
downmapped
2022-05-13Revert "Auto merge of #12149 - jonas-schievink:literally-just-a-literal, ↵Jonas Schievink-3/+1
r=jonas-schievink" This reverts commit cc9ae2b89e01a30e441371b9fd3376c3d03a475f, reversing changes made to 7dfd1cb572d8d4fd951237361e43ecddd9c9a852.
2022-05-05Split float literal tokens at the `.`Jonas Schievink-1/+3
2022-04-23SimplifyLukas Wirth-0/+6
2022-03-12feat: Add an assist for inlining type aliasesSteven Joruk-0/+9
This intends to lead to a more useful assist to replace all users of an alias with its definition.
2022-03-06Highlight `Self` as a keyword by defaultLukas Wirth-5/+9
2022-03-05fix: Recognize `Self` as a proper keywordLukas Wirth-0/+6
2022-03-04Preserve order of generic argshkalbasi-9/+19
2022-02-26Fix body selection in while loopsLaurențiu Nicola-0/+9
2022-02-22Make replace_derive_with_manual_impl work againLukas Wirth-0/+9
2022-02-21Change `single_let()` and `is_pattern_cond()` to free functionsChayim Refael Friedman-36/+0
2022-02-21Parse `let` expressions in order to support `let` chainsChayim Refael Friedman-2/+32
We still need to reject freestanding `let` expressions: see https://github.com/rust-analyzer/rust-analyzer/issues/11320#issuecomment-1018212465.
2022-02-03Move attribute path completions into attribute completion moduleLukas Wirth-1/+1
2022-01-30Reduce allocations in attribute collectionLukas Wirth-8/+3
2022-01-08Shrink diagnostic spans for errors inside macrosJonas Schievink-1/+0
2022-01-07fix: Fix attribute stripping ignoring doc commentsLukas Wirth-0/+1
2022-01-07Better interface for doc comment and attribute processingLukas Wirth-0/+10
2022-01-07Generate `AnyHasDocComments` nodeLukas Wirth-18/+1
2022-01-06Use`const _` instead of `mod __`Jonas Schievink-6/+3
2022-01-06Expand attribute macros on impl and trait itemsJonas Schievink-0/+11
2021-10-30Fix for-loop expressions breaking with BlockExpr iterableLukas Wirth-0/+9
2021-10-05Replace `if let` with `match` where appropriateAramis Razzaghipour-4/+3
2021-10-03Fix miscellaneous Clippy lintsAramis Razzaghipour-3/+3
2021-10-02minor: dead codeAleksey Kladov-8/+1
2021-10-02internal: remove deprecated methodAleksey Kladov-3/+0
2021-09-27Rename `*Owner` traits to `Has*`Lukas Wirth-24/+24
2021-09-27Rename `Dyn*` nodes to `Any*` nodesLukas Wirth-1/+1
2021-09-26internal: more reasonable grammar for blocksAleksey Kladov-4/+13
Consider these expples { 92 } async { 92 } 'a: { 92 } #[a] { 92 } Previously the tree for them were BLOCK_EXPR { ... } EFFECT_EXPR async BLOCK_EXPR { ... } EFFECT_EXPR 'a: BLOCK_EXPR { ... } BLOCK_EXPR #[a] { ... } As you see, it gets progressively worse :) The last two items are especially odd. The last one even violates the balanced curleys invariant we have (#10357) The new approach is to say that the stuff in `{}` is stmt_list, and the block is stmt_list + optional modifiers BLOCK_EXPR STMT_LIST { ... } BLOCK_EXPR async STMT_LIST { ... } BLOCK_EXPR 'a: STMT_LIST { ... } BLOCK_EXPR #[a] STMT_LIST { ... }
2021-09-26Remove inherent methods from ast node that carry semantic meaningLukas Wirth-85/+12
2021-09-23CleanupLukas Wirth-0/+10
2021-09-21SimplifyLukas Wirth-10/+1
2021-09-21Generate ast nodes for each ast traitLukas Wirth-30/+0
2021-08-08Implement if_to_bool_then assistLukas Wirth-0/+4
2021-08-07SimplifyLukas Wirth-0/+6
2021-08-05Merge #9790bors[bot]-1/+19
9790: fix: extract_type_alias extracts generics correctly r=Veykril a=Veykril Fixes #8335 bors r+ Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2021-08-05extract_type_alias extracts generics correctlyLukas Wirth-1/+19
2021-08-03tree-wide: fix rustdoc warnings, add some linksJade-2/+2
2021-07-31add_explicit_type is applicable for closure parametersLukas Wirth-3/+35
2021-07-29Simplify extract_function assistLukas Wirth-101/+0
2021-07-29Use more strictly typed syntax nodes for analysis in extract_function assistLukas Wirth-0/+75
2021-07-21Fix some more basic clippy lintsLukas Wirth-1/+1
2021-07-03Inline parameters in `inline_call` if possibleLukas Wirth-0/+9
2021-07-02`replace_match_with_if_let` works on more binary matchesLukas Wirth-0/+4
2021-06-30Don't classify NameRef paths inside attribute TokenTreesLukas Wirth-0/+8
2021-06-27Deduplicate ast expression walking logicLukas Wirth-1/+51
2021-06-18Don't insert imports outside of cfg attributed itemsLukas Wirth-1/+7
2021-06-18Allow to disable import insertion on single path glob importsLukas Wirth-0/+9
2021-06-17Create modules in correct directory for nested modules in move_module assistLukas Wirth-0/+8
2021-06-15Highlight unsafe trait refs as unsafe only in impl blocks and definitionsLukas Wirth-0/+9