aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Add basic bultin macro infrastructureEdwin Cheng2019-11-118-29/+148
|
* Merge #2197bors[bot]2019-11-097-78/+92
|\ | | | | | | | | | | | | | | 2197: Remove typed macro parsing API r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * Remove typed macro parsing APIAleksey Kladov2019-11-096-72/+84
| | | | | | | | | | We do type-erasure on every path anyway, so it doesn't make much sense to duplicate this function for every type
| * Minor cleanupAleksey Kladov2019-11-091-6/+8
|/
* Merge #2169bors[bot]2019-11-098-101/+305
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | 2169: MBE: Mapping spans for goto definition r=matklad a=edwin0cheng Currently, go to definition gives the wrong span in MBE. This PR implement a mapping mechanism to fix it and it could be used for future MBE hygiene implementation. The basic idea of the mapping is: 1. When expanding the macro, generated 2 `TokenMap` which maps the macro args and macro defs between tokens and input text-ranges. 2. Before converting generated `TokenTree` to `SyntaxNode`, generated a `ExpandedRangeMap` which is a mapping between token and output text-ranges. 3. Using these 3 mappings to construct an `ExpansionInfo` which can map between input text ranges and output text ranges. Co-authored-by: Edwin Cheng <[email protected]>
| * Remove map_ranges in RevTokenMapEdwin Cheng2019-11-094-66/+35
| |
| * Refactor and simpfilyEdwin Cheng2019-11-085-89/+42
| |
| * Refactor and add more commentsEdwin Cheng2019-11-082-58/+52
| |
| * Fix formattingEdwin Cheng2019-11-051-1/+1
| |
| * Refactor a bitEdwin Cheng2019-11-042-11/+7
| |
| * Use macro_rules shift to map text rangesEdwin Cheng2019-11-044-51/+26
| |
| * Use ? and destructing to simplifed long codeEdwin Cheng2019-11-041-19/+17
| |
| * Rename and fix typosEdwin Cheng2019-11-044-24/+43
| |
| * Add note for recurseive macro generated codeEdwin Cheng2019-11-041-0/+1
| |
| * Add testsEdwin Cheng2019-11-041-0/+40
| |
| * Use new expansion feature in goto_definitionEdwin Cheng2019-11-042-45/+114
| |
| * Remove dbg!Edwin Cheng2019-11-042-5/+0
| |
| * Fixed bug in ExpandedRangeMapEdwin Cheng2019-11-041-34/+16
| |
| * Add parent_expansion to HirFileIdEdwin Cheng2019-11-041-0/+19
| |
| * Add macro_expansion_info in hir_expandEdwin Cheng2019-11-045-47/+212
| |
| * Add map_id to TokenIdEdwin Cheng2019-11-042-5/+34
| |
* | Merge #2196bors[bot]2019-11-084-281/+304
|\ \ | | | | | | | | | | | | | | | | | | | | | 2196: Touch up nameres doc comment r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * | Touch up nameres doc commentAleksey Kladov2019-11-081-7/+6
| | |
| * | Reduce visibilityAleksey Kladov2019-11-081-9/+9
| | |
| * | Extract path resolution submoduleAleksey Kladov2019-11-083-243/+269
| | |
| * | SimplifyAleksey Kladov2019-11-082-7/+5
| | | | | | | | | | | | | | | There's only one call-site for the function, so it seems fine to inline
| * | Reduce visibilityAleksey Kladov2019-11-081-23/+23
|/ /
* | Merge #2194bors[bot]2019-11-073-61/+66
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2194: Update crates r=matklad a=kjeremy Removes nodrop and extra arrayvec We have an extra crossbeam-queue and crossbeam-utils left but those should drop once rayon accepts https://github.com/rayon-rs/rayon/pull/704 Co-authored-by: kjeremy <[email protected]>
| * | Update crateskjeremy2019-11-073-61/+66
|/ / | | | | | | | | | | | | Removes nodrop and extra arrayvec We have an extra crossbeam-queue and crossbeam-utils left but those should drop once rayon accepts https://github.com/rayon-rs/rayon/pull/704
* | Merge #2193bors[bot]2019-11-071-3/+3
|\ \ | | | | | | | | | | | | | | | | | | | | | 2193: cargo xtask format with rust 1.39 r=matklad a=kjeremy Needed to pass tests on latest stable Co-authored-by: kjeremy <[email protected]>
| * | cargo xtask format with 1.39kjeremy2019-11-071-3/+3
|/ /
* | Merge #2179bors[bot]2019-11-065-14/+111
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2179: Use HirDatabase to compute `is_deprecated` r=matklad a=martskins This PR fixes #2167 by introducing `attributes_query` and adding `fn attrs(&self, def: crate::AttrDef) -> Option<Arc<[Attr]>>;` to the `DefDatabase` trait. I'm a little concerned about the two spots in `attributes_query` where code is repeated, but I couldn't figure out a way to avoid that, so.. I welcome suggestions :smile: Co-authored-by: Martin Asquino <[email protected]>
| * | HirDatabase stored attributesMartin Asquino2019-11-045-14/+111
| | |
* | | Merge #2191bors[bot]2019-11-061-52/+57
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2191: Cleanup complete_postfix r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * | | Cleanup complete_postfixAleksey Kladov2019-11-061-52/+57
|/ / /
* | | Merge #2188bors[bot]2019-11-061-2/+6
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2188: Ignore line-endings when checking generated files for freshness r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * | | Ignore line-endings when checking generated files for freshnessAleksey Kladov2019-11-061-2/+6
|/ / / | | | | | | | | | closes #2184
* | | Merge #2187bors[bot]2019-11-051-12/+21
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2187: Update smallvec to avoid UB and cc while we're at it r=kjeremy a=kjeremy See: https://github.com/servo/rust-smallvec/releases/tag/v0.6.13 Co-authored-by: kjeremy <[email protected]>
| * | | Update smallvec to avoid UB and cc while we're at itkjeremy2019-11-051-12/+21
|/ / /
* | | Merge #2185bors[bot]2019-11-052-11/+11
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2185: Bump psm, console, indicatif r=kjeremy a=kjeremy Co-authored-by: kjeremy <[email protected]>
| * | | Bump psm, console, indicatifkjeremy2019-11-052-11/+11
|/ / /
* | | Merge #2177bors[bot]2019-11-041-2/+2
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2177: Reduce visibility r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * | | Reduce visibilityAleksey Kladov2019-11-041-2/+2
|/ / /
* | | Merge #2176bors[bot]2019-11-049-26/+29
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2176: Move Namespace enum closer to usage r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * | | Move Namespace enum closer to usageAleksey Kladov2019-11-049-26/+29
| | | |
* | | | Merge #2175bors[bot]2019-11-048-306/+212
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2175: Appease the linter by dummy doc comments r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * | | Appease the linter by dummy doc commentsAleksey Kladov2019-11-042-1/+3
| | | |
| * | | SimplifyAleksey Kladov2019-11-041-35/+24
| | | |
| * | | Restore assists testsAleksey Kladov2019-11-043-4/+50
| | | |
| * | | Rename MockDatabase -> TestDBAleksey Kladov2019-11-046-60/+57
| | | | | | | | | | | | | | | | Actually working rename is sooo useful!