aboutsummaryrefslogtreecommitdiff
path: root/crates
Commit message (Collapse)AuthorAgeFilesLines
* Merge #3169bors[bot]2020-02-175-14/+111
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3169: Show record field names in Enum completion r=flodiebold a=adamrk Adresses https://github.com/rust-analyzer/rust-analyzer/issues/2947. Previously the details shown when autocompleting an Enum variant would look like the variant was a tuple even if it was a record: ![2020-02-16-15:59:32_crop](https://user-images.githubusercontent.com/16367467/74607233-64f21980-50d7-11ea-99db-e973e29c71d7.png) This change will show the names of the fields for a record and use curly braces instead of parentheses: ![2020-02-16-15:33:00_crop](https://user-images.githubusercontent.com/16367467/74607251-8ce17d00-50d7-11ea-9d4d-38d198a4aec0.png) This required exposing the type `adt::StructKind` from `ra_hir` and adding a function ``` kind(self, db: &impl HirDatabase) -> StructKind ``` in the `impl` of `EnumVariant`. There was also a previously existing function `is_unit(self, db: &impl HirDatabase) -> bool` for `EnumVariant` which I removed because it seemed redundant after adding `kind`. Co-authored-by: adamrk <[email protected]>
| * use 'if let' instead of match on kind in lower.rsadamrk2020-02-171-6/+4
| |
| * add space before/after wrapping bracesadamrk2020-02-161-2/+2
| |
| * replace uses of VariantData::is_unit with VariantData::kindadamrk2020-02-162-10/+7
| |
| * show names for record fields in enum completionadamrk2020-02-164-7/+109
| |
* | Merge #3099bors[bot]2020-02-176-1/+356
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3099: Init implementation of structural search replace r=matklad a=mikhail-m1 next steps: * ignore space and other minor difference * add support to ra_cli * call rust parser to check pattern * documentation original issue #2267 Co-authored-by: Mikhail Modin <[email protected]>
| * | Init implementation of structural search replaceMikhail Modin2020-02-146-1/+356
| | |
* | | Merge #3108bors[bot]2020-02-176-36/+536
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3108: Magic Completion for `impl Trait for` Associated Items r=matklad a=kdelorey # Summary This PR adds a set of magic completions to auto complete associated trait items (functions/consts/types). ![Associated Trait Impl](https://user-images.githubusercontent.com/2295721/74493144-d8f1af00-4e96-11ea-93a4-82725bf89646.gif) ## Notes Since the assist and completion share the same logic when figuring out the associated items that are missing, a shared utility was created in the `ra_assists::utils` module. Resolves #1046 As this is my first PR to the rust-analyzer project, I'm new to the codebase, feedback welcomed! Co-authored-by: Kevin DeLorey <[email protected]>
| * | | Added module doc comment to explain the purpose of the completion.Kevin DeLorey2020-02-151-1/+32
| | | |
| * | | Fixed bug that allowed for completion in a nested method.Kevin DeLorey2020-02-151-7/+36
| | | |
| * | | Reordered the `use` items.Kevin DeLorey2020-02-151-9/+8
| | | |
| * | | Adjusted the completion lookups to filter by just the name.Kevin DeLorey2020-02-141-29/+44
| | | |
| * | | Completion now replaces whole fn/const/type def with snippet.Kevin DeLorey2020-02-131-16/+31
| | | |
| * | | Cheese const tests as they requre an ident before becoming a CONST_DEF.Kevin DeLorey2020-02-131-28/+21
| | | |
| * | | Started to refactor the trigger of the trait_impl completion.Kevin DeLorey2020-02-131-33/+77
| | | |
| * | | Formatting.Kevin DeLorey2020-02-111-1/+3
| | | |
| * | | Fixing minor suggestions and added module level documentation.Kevin DeLorey2020-02-112-11/+7
| | | |
| * | | Removed doc comments entirely from the changes.Kevin DeLorey2020-02-112-41/+0
| | | |
| * | | Formatted changes.Kevin DeLorey2020-02-113-29/+23
| | | |
| * | | Removed docs from private method.Kevin DeLorey2020-02-111-8/+0
| | | |
| * | | Fixed warning generated after refactoring.Kevin DeLorey2020-02-111-1/+1
| | | |
| * | | Updated the `add_missing_impl_members` to use the shared utility.Kevin DeLorey2020-02-112-34/+15
| | | |
| * | | Adjusted the hashset buckets to lump functions/consts together as their ↵Kevin DeLorey2020-02-111-9/+10
| | | | | | | | | | | | | | | | names must be unique.
| * | | Added tests to test associated types and consts.Kevin DeLorey2020-02-111-0/+78
| | | |
| * | | Added some documentation to the `complete_trait_impl` completion.Kevin DeLorey2020-02-111-1/+48
| | | |
| * | | Added associated const magic completion.Kevin DeLorey2020-02-101-11/+53
| | | |
| * | | Added a utility function that can be used to determine the missing impl items.Kevin DeLorey2020-02-094-118/+95
| | | |
| * | | Merge branch 'master' into kdelorey/complete-trait-implKevin DeLorey2020-02-09327-3117/+5756
| |\ \ \
| * | | | Added associated type completion.Kevin DeLorey2020-02-081-3/+15
| | | | |
| * | | | Cleaning up unessicary code that the Magic completion takes care of.Kevin DeLorey2020-02-081-39/+8
| | | | |
| * | | | Got the magic completion working.Kevin DeLorey2020-02-082-41/+16
| | | | |
| * | | | Update completion kind to Magic in the unit tests.Kevin DeLorey2020-02-081-2/+2
| | | | |
| * | | | Add detection for a user already starting a fn impl and still providing ↵Kevin DeLorey2020-02-052-38/+157
| | | | | | | | | | | | | | | | | | | | completion.
| * | | | Already implemented fn will no longer be suggested for trait implementations.Kevin DeLorey2020-01-292-17/+131
| | | | |
| * | | | Renamed the trait completion mod.Kevin DeLorey2020-01-232-3/+3
| | | | |
| * | | | Added basic support for completing `fn` for trait impl.Kevin DeLorey2020-01-233-0/+116
| | | | |
* | | | | Merge #3181bors[bot]2020-02-174-0/+6
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3181: Add ability to pass additional arguments to rustfmt. r=matklad a=Leonqn relates to #2848 Co-authored-by: Ilya Titkov <[email protected]>
| * | | | | Add arguments to rustfmtIlya Titkov2020-02-174-0/+6
| | | | | |
* | | | | | Merge #3153bors[bot]2020-02-175-33/+100
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3153: When a single test is run, do not run others with overlapping names r=matklad a=SomeoneToIgnore Co-authored-by: Kirill Bulatov <[email protected]>
| * | | | | | Fix a slow testKirill Bulatov2020-02-161-1/+1
| | | | | | |
| * | | | | | Simplify module retrievalKirill Bulatov2020-02-161-7/+5
| | | | | | |
| * | | | | | If possible, use --exact flag when running testsKirill Bulatov2020-02-144-32/+101
| | | | | | |
* | | | | | | Merge #3179bors[bot]2020-02-174-80/+130
|\ \ \ \ \ \ \ | |_|/ / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3179: Introduce AsMacroCall trait r=matklad a=edwin0cheng This PR introduce `AsMacroCall` trait to help convert `ast::MacroCall` to `MacroCallId`. The main goal here is to centralize various conversions to single place and make implementing eager macro calls without further ado. ```rust pub trait AsMacroCall { fn as_call_id( &self, db: &(impl db::DefDatabase + AstDatabase), resolver: impl Fn(path::ModPath) -> Option<MacroDefId>, ) -> Option<MacroCallId>; } ``` Co-authored-by: Edwin Cheng <[email protected]>
| * | | | | | Introduce AsMacroCall traitEdwin Cheng2020-02-174-80/+130
| | | | | | |
* | | | | | | 1-based columnsAleksey Kladov2020-02-161-1/+1
| | | | | | |
* | | | | | | Support goto def in bencesAleksey Kladov2020-02-162-13/+29
| | | | | | |
* | | | | | | Refactor arg parsingAleksey Kladov2020-02-161-11/+8
| | | | | | |
* | | | | | | Refactor position parsingAleksey Kladov2020-02-162-19/+28
| | | | | | |
* | | | | | | Enable profiling for benchAleksey Kladov2020-02-163-6/+10
| | | | | | |
* | | | | | | Add module colors to cssAleksey Kladov2020-02-163-0/+3
| | | | | | |