Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | 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 |
| | | |||||
| * | Add Test for new item resolution | Edwin Cheng | 2019-05-26 | 2 | -2/+55 |
| | | |||||
| * | Use ItemOrMacro in item resolution | Edwin Cheng | 2019-05-26 | 4 | -94/+214 |
| | | |||||
| * | Add Either dep | Edwin Cheng | 2019-05-26 | 1 | -0/+1 |
| | | |||||
| * | Put back unexpaned_macros after resolve | Edwin Cheng | 2019-05-26 | 1 | -0/+3 |
| | | |||||
* | | Merge #1328 | bors[bot] | 2019-05-27 | 8 | -126/+166 |
|\ \ | |/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1328: Change TokenSource to iteration based r=matklad a=edwin0cheng This PR change the `TokenSource` trait from random access to be an iteration based trait: ```rust /// `TokenSource` abstracts the source of the tokens parser operates one. /// /// Hopefully this will allow us to treat text and token trees in the same way! pub trait TokenSource { fn current(&self) -> Token; /// Lookahead n token fn lookahead_nth(&self, n: usize) -> Token; /// bump cursor to next token fn bump(&mut self); /// Is the current token a specified keyword? fn is_keyword(&self, kw: &str) -> bool; } /// `TokenCursor` abstracts the cursor of `TokenSource` operates one. #[derive(Debug, Copy, Clone, Eq, PartialEq)] pub struct Token { /// What is the current token? pub kind: SyntaxKind, /// Is the current token joined to the next one (`> >` vs `>>`). pub is_jointed_to_next: bool, } ``` Note that the refactoring based on this new trait will be separated to incoming PRs Co-authored-by: Edwin Cheng <[email protected]> | ||||
| * | Remove duplicated code | Edwin Cheng | 2019-05-25 | 1 | -4/+0 |
| | | |||||
| * | Simplify token_tree_to_xxx | Edwin Cheng | 2019-05-25 | 1 | -47/+20 |
| | | |||||
| * | Change TokenSource to iteration based | Edwin Cheng | 2019-05-25 | 8 | -100/+171 |
| | | |||||
* | | Colorize Rust code as HTML | Aleksey Kladov | 2019-05-25 | 5 | -153/+138 |
| | | |||||
* | | reformat | Aleksey Kladov | 2019-05-23 | 4 | -8/+8 |
| | | |||||
* | | :arrow_up: rustc | Aleksey Kladov | 2019-05-23 | 58 | -610/+640 |
| | |