aboutsummaryrefslogtreecommitdiff
path: root/crates
Commit message (Collapse)AuthorAgeFilesLines
* Allow clippy::map_cloneAlan Du2019-06-041-2/+6
| | | | We should turn it on after Iterator::copied stabilizes
* Allow clippy::needless_pass_by_valueAlan Du2019-06-041-1/+2
|
* Implement cargo lint to run clippyAlan Du2019-06-042-1/+31
|
* add couple of debug utilsAleksey Kladov2019-06-032-0/+31
|
* Merge #1369bors[bot]2019-06-025-33/+61
|\ | | | | | | | | | | | | | | 1369: don't cache parses twice r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * don't cache parses twiceAleksey Kladov2019-06-025-33/+61
| | | | | | | | | | | | | | | | | | Before this commit, `Parse`s for original file ended up two times in salsa's db: first, when we parse original file, and second, when we parse macro or a file. Given that parse trees are the worst ofenders in terms of memory, it makes sense to make sure we store them only once.
* | Merge #1368bors[bot]2019-06-023-26/+28
|\ \ | |/ |/| | | | | | | | | | | | | | | 1368: Store referece instead of full token tree in tokenbuffer r=matklad a=edwin0cheng This PR try to minimize the memory allocation in converting `SyntaxNode` to `TokenTree` by using reference isnteead of full token tree in `TokenBuffer`. Note that the final goal is replace `TokenTree` with TokenBuffer such that there is no conversion between them. Co-authored-by: Edwin Cheng <[email protected]>
| * unnecessary paranthesisEdwin Cheng2019-06-021-1/+1
| |
| * Store referece in tokenbufferEdwin Cheng2019-06-023-26/+28
| |
* | collect macro queriesAleksey Kladov2019-06-021-0/+3
| |
* | add AstDatabaseAleksey Kladov2019-06-0217-98/+186
| |
* | collect types and bodiesAleksey Kladov2019-06-011-0/+4
| |
* | collect impl source mapsAleksey Kladov2019-06-013-11/+2
| |
* | don't cache ast_id_to_nodeAleksey Kladov2019-06-012-1/+1
| |
* | show macro expanded trees in the stats as wellAleksey Kladov2019-06-011-7/+8
|/
* Merge #1360bors[bot]2019-06-016-9/+55
|\ | | | | | | | | | | | | | | | | | | 1360: Improve goto definition for MBE r=matklad a=edwin0cheng This PR improve the macro resolution for goto definition and expression macro invocation by using proper path resolution for external macros. Co-authored-by: Edwin Cheng <[email protected]>
| * Improve goto definition for MBEEdwin Cheng2019-06-016-9/+55
| |
* | Merge #1359bors[bot]2019-06-012-3/+5
|\ \ | | | | | | | | | | | | | | | | | | | | | 1359: don't poison mutex around chalk r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * | don't poison mutex around chalkAleksey Kladov2019-06-012-3/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | We use panics for cancellation, so we could trigger panic while holding the solver. std::sync::Mutex will be poisoned as a result, which and all further attempts to use solver (from other threads) will panic as well. This commit switches to parking_lot::Mutex which just unlocks on panic.
* | | apply profile filter to top-level entries onlyAleksey Kladov2019-06-011-7/+6
| | |
* | | renameAleksey Kladov2019-06-016-80/+86
| | |
* | | move subs insideAleksey Kladov2019-06-011-4/+2
|/ /
* | use sync queries for join lines and friendsAleksey Kladov2019-05-311-5/+11
| |
* | add sync requestsAleksey Kladov2019-05-312-43/+56
| |
* | cleanupAleksey Kladov2019-05-311-39/+42
| |
* | cleanupAleksey Kladov2019-05-311-35/+48
| |
* | simplifyAleksey Kladov2019-05-311-51/+52
| |
* | move completed requests to a separate fileAleksey Kladov2019-05-315-80/+114
| |
* | simplifyAleksey Kladov2019-05-311-3/+3
| |
* | introduce constantAleksey Kladov2019-05-311-7/+13
| |
* | minorAleksey Kladov2019-05-311-1/+1
|/
* Sort hover results in testsLaurențiu Nicola2019-05-301-2/+8
|
* update ra_ide_api to use builtinsAleksey Kladov2019-05-308-55/+82
|
* add tests for primitive typesAleksey Kladov2019-05-305-30/+44
|
* add built-in types to scopesAleksey Kladov2019-05-306-24/+48
|
* add list of builtin typesAleksey Kladov2019-05-302-3/+29
|
* add ModuleDef::BuiltInTypeAleksey Kladov2019-05-305-10/+61
|
* switch to upstream salsaAleksey Kladov2019-05-301-1/+1
|
* :arrow_up: parking_lotAleksey Kladov2019-05-305-5/+2
|
* cancel salsa's validationAleksey Kladov2019-05-301-0/+5
| | | | | | | | | | | | | | | | | | | This small fix should improve rust-analyzer resopnsivness for real-time operations like onEnter handling. Turns out, salsa's validation can take hundreds of milliseconds, and, in case no changes were made, it won't be triggering any queries. Because we check for cancellation in queries, that means that validation is not cancellable! What this PR does is injecting check_canceled checks into validation, by using salsa's event API, which wasn't meant to be used like this, but, hey, it works! Here's the onEnter handling before and after this change: https://youtu.be/7-ffPzgvH7o
* Merge #1346bors[bot]2019-05-295-2/+5
|\ | | | | | | | | | | | | | | 1346: bump timeout for CI r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * bump timeout for CIAleksey Kladov2019-05-291-1/+1
| |
| * add cacellation checks to expensive queriesAleksey Kladov2019-05-293-0/+3
| |
| * less noisy statusAleksey Kladov2019-05-291-1/+1
| |
* | Highlight primitive typesLaurențiu Nicola2019-05-292-42/+55
|/
* optimization: cancel backlog in onEnterAleksey Kladov2019-05-292-3/+16
|
* add latest requests to status pageAleksey Kladov2019-05-293-12/+67
|
* log the actual time of requestsAleksey Kladov2019-05-291-16/+31
|
* trigger garbage collection *after* requests, not beforeAleksey Kladov2019-05-291-2/+5
|
* more perf loggingAleksey Kladov2019-05-291-3/+8
|