Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | add ModuleDef::BuiltInType | Aleksey Kladov | 2019-05-30 | 5 | -10/+61 | |
| | ||||||
* | switch to upstream salsa | Aleksey Kladov | 2019-05-30 | 1 | -1/+1 | |
| | ||||||
* | :arrow_up: parking_lot | Aleksey Kladov | 2019-05-30 | 5 | -5/+2 | |
| | ||||||
* | cancel salsa's validation | Aleksey Kladov | 2019-05-30 | 1 | -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 #1346 | bors[bot] | 2019-05-29 | 5 | -2/+5 | |
|\ | | | | | | | | | | | | | | | 1346: bump timeout for CI r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]> | |||||
| * | bump timeout for CI | Aleksey Kladov | 2019-05-29 | 1 | -1/+1 | |
| | | ||||||
| * | add cacellation checks to expensive queries | Aleksey Kladov | 2019-05-29 | 3 | -0/+3 | |
| | | ||||||
| * | less noisy status | Aleksey Kladov | 2019-05-29 | 1 | -1/+1 | |
| | | ||||||
* | | Highlight primitive types | Laurențiu Nicola | 2019-05-29 | 2 | -42/+55 | |
|/ | ||||||
* | optimization: cancel backlog in onEnter | Aleksey Kladov | 2019-05-29 | 2 | -3/+16 | |
| | ||||||
* | add latest requests to status page | Aleksey Kladov | 2019-05-29 | 3 | -12/+67 | |
| | ||||||
* | log the actual time of requests | Aleksey Kladov | 2019-05-29 | 1 | -16/+31 | |
| | ||||||
* | trigger garbage collection *after* requests, not before | Aleksey Kladov | 2019-05-29 | 1 | -2/+5 | |
| | ||||||
* | more perf logging | Aleksey Kladov | 2019-05-29 | 1 | -3/+8 | |
| | ||||||
* | silnce profiling in tests | Aleksey Kladov | 2019-05-29 | 1 | -1/+2 | |
| | ||||||
* | flip Into to From | Aleksey Kladov | 2019-05-29 | 1 | -6/+6 | |
| | ||||||
* | show error offsets in tests | Aleksey Kladov | 2019-05-29 | 46 | -290/+299 | |
| | ||||||
* | Merge #1337 | bors[bot] | 2019-05-29 | 89 | -687/+705 | |
|\ | | | | | | | | | | | | | | | 1337: Move syntax errors our of syntax tree r=matklad a=matklad I am not really sure if it's a good idea, but `SyntaxError` do not really belong to a `SyntaxTree`. So let's just store them on the side? Co-authored-by: Aleksey Kladov <[email protected]> | |||||
| * | fix todo | Aleksey Kladov | 2019-05-28 | 1 | -3/+0 | |
| | | ||||||
| * | fix typos in mbe tests | Aleksey Kladov | 2019-05-28 | 29 | -91/+92 | |
| | | ||||||
| * | fix syntax errors in tests | Aleksey Kladov | 2019-05-28 | 7 | -121/+137 | |
| | | ||||||
| * | move mbe to the new API | Aleksey Kladov | 2019-05-28 | 3 | -73/+73 | |
| | | ||||||
| * | remove old parsing methods | Aleksey Kladov | 2019-05-28 | 7 | -62/+54 | |
| | | ||||||
| * | update test data | Aleksey Kladov | 2019-05-28 | 45 | -289/+290 | |
| | | ||||||
| * | update tests | Aleksey Kladov | 2019-05-28 | 4 | -47/+36 | |
| | | ||||||
| * | drop error from SOurceFile constructor | Aleksey Kladov | 2019-05-28 | 2 | -5/+5 | |
| | | ||||||
| * | return errors from tree builder | Aleksey Kladov | 2019-05-28 | 2 | -5/+6 | |
| | | ||||||
| * | drop errors from SyntaxNode | Aleksey Kladov | 2019-05-28 | 2 | -9/+6 | |
| | | ||||||
| * | add Parse | Aleksey Kladov | 2019-05-28 | 1 | -2/+26 | |
| | | ||||||
* | | Highlight type names correctly | Laurențiu Nicola | 2019-05-29 | 2 | -3/+20 | |
|/ | ||||||
* | Merge #1336 | bors[bot] | 2019-05-28 | 4 | -156/+149 | |
|\ | | | | | | | | | | | | | | | 1336: Refactor SubtreeSource r=matklad a=edwin0cheng This PR simplify `SubtreeSource` by removing `SubtreeWalk` and `Querier` and only walk through the top level `TokenTree` when collecting token from source, by comparing two cursors directly. Co-authored-by: Edwin Cheng <[email protected]> | |||||
| * | Use cfg(test) instead of allow(unused) | Edwin Cheng | 2019-05-28 | 1 | -1/+1 | |
| | | ||||||
| * | Minor use module | Edwin Cheng | 2019-05-27 | 1 | -3/+2 | |
| | | ||||||
| * | Simpliy how collecting token from src | Edwin Cheng | 2019-05-27 | 3 | -72/+39 | |
| | | ||||||
| * | Add more helper func in Cursor | Edwin Cheng | 2019-05-27 | 1 | -0/+15 | |
| | | ||||||
| * | Remove Queier and SubtreeWalk | Edwin Cheng | 2019-05-27 | 2 | -92/+104 | |
| | | ||||||
* | | Merge #1334 | bors[bot] | 2019-05-27 | 4 | -1/+87 | |
|\ \ | |/ |/| | | | | | | | | | | | 1334: check for cancellation during macro expansion r=matklad a=matklad closes #1331 Co-authored-by: Aleksey Kladov <[email protected]> | |||||
| * | check cancellation when expanding macros | Aleksey Kladov | 2019-05-27 | 2 | -3/+3 | |
| | | ||||||
| * | specifically profile cancellation | Aleksey Kladov | 2019-05-27 | 1 | -0/+4 | |
| | | ||||||
| * | enable profiling in tests | Aleksey Kladov | 2019-05-27 | 2 | -1/+83 | |
| | | ||||||
* | | Make rainbows optional | Pascal Hertleif | 2019-05-27 | 1 | -1/+2 | |
| | | ||||||
* | | rename stray id field | Pascal Hertleif | 2019-05-27 | 2 | -2/+2 | |
| | | ||||||
* | | make it build again | Pascal Hertleif | 2019-05-27 | 3 | -14/+28 | |
| | | ||||||
* | | Disable broken struct field rainbowing | Pascal Hertleif | 2019-05-27 | 3 | -23/+7 | |
| | | ||||||
* | | More clever highlighting, incl draft for structs | Pascal Hertleif | 2019-05-27 | 9 | -414/+158 | |
| | | ||||||
* | | Hash based on binding name and shadow counter | Pascal Hertleif | 2019-05-27 | 4 | -21/+81 | |
| | | ||||||
* | | Semantic highlighting spike | Pascal Hertleif | 2019-05-27 | 6 | -36/+355 | |
|/ | | | | | | | | | | Very simple approach: For each identifier, set the hash of the range where it's defined as its 'id' and use it in the VSCode extension to generate unique colors. Thus, the generated colors are per-file. They are also quite fragile, and I'm not entirely sure why. Looks like we need to make sure the same ranges aren't overwritten by a later request? | |||||
* | add profile calls to real-time requests | Aleksey Kladov | 2019-05-27 | 1 | -0/+5 | |
| | ||||||
* | Merge #1277 | bors[bot] | 2019-05-27 | 7 | -96/+272 | |
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1277: Improve macro item resolution r=matklad a=edwin0cheng ~This PR add a new namespace `Macros` in `per_ns.rs` to allow following use case:~ This PR improve macro item resolution to allow following use case: ```rust //- /main.rs use foo::bar; bar!(); //- /lib.rs (crate foo) #[macro_export] macro_rules! bar{ () => { struct Foo { field: u32 } } ``` Co-authored-by: Edwin Cheng <[email protected]> | |||||
| * | Formatting | Edwin Cheng | 2019-05-27 | 1 | -1/+0 | |
| | |