Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | | Work around for issue in vscode reporting a failure in request | Ville Penttinen | 2019-02-27 | 2 | -5/+16 | |
| | | | | | | | | | | | | vscode would report "A request has failed" when it got "Content modified" message and this would cause a pop-up to appear. This works around the issue by returning an "empty" response that vscode can ignore. | |||||
* | | Fix a typo | Dale Wijnand | 2019-02-26 | 1 | -4/+4 | |
|/ | ||||||
* | Merge #897 | bors[bot] | 2019-02-25 | 11 | -20/+206 | |
|\ | | | | | | | | | | | | | | | | | | | 897: Add basic const/static type inference r=flodiebold a=vipentti This adds basic const/static type inference discussed in #887. Currently the inference does not work for const/static declared inside a block. In addition the inference does not work inside the bodies of const/static. Co-authored-by: Ville Penttinen <[email protected]> | |||||
| * | Move ConstSignature creation to a single method | Ville Penttinen | 2019-02-25 | 1 | -17/+13 | |
| | | ||||||
| * | Add static type inference | Ville Penttinen | 2019-02-25 | 6 | -12/+54 | |
| | | ||||||
| * | Add const type inference | Ville Penttinen | 2019-02-25 | 11 | -20/+168 | |
| | | ||||||
* | | kill accidently commited file | Aleksey Kladov | 2019-02-25 | 1 | -182/+0 | |
| | | ||||||
* | | rename type to type_alias in the AST as well | Aleksey Kladov | 2019-02-25 | 45 | -108/+293 | |
|/ | ||||||
* | complete patterns | Aleksey Kladov | 2019-02-24 | 3 | -0/+103 | |
| | ||||||
* | Rename Type => TypeAlias | Florian Diebold | 2019-02-24 | 12 | -44/+58 | |
| | ||||||
* | Add test for recursive type aliases | Florian Diebold | 2019-02-24 | 1 | -0/+14 | |
| | ||||||
* | Implement support for type aliases | Florian Diebold | 2019-02-24 | 8 | -11/+102 | |
| | ||||||
* | move testing functions | Aleksey Kladov | 2019-02-24 | 10 | -20/+14 | |
| | ||||||
* | move the rest of presentation to presentation | Aleksey Kladov | 2019-02-24 | 2 | -50/+20 | |
| | ||||||
* | move more code to presentation | Aleksey Kladov | 2019-02-24 | 2 | -88/+57 | |
| | ||||||
* | move res completion to presentation | Aleksey Kladov | 2019-02-24 | 3 | -41/+42 | |
| | ||||||
* | simplify | Aleksey Kladov | 2019-02-24 | 1 | -31/+31 | |
| | ||||||
* | move enum-variants to presentation | Aleksey Kladov | 2019-02-24 | 2 | -21/+21 | |
| | ||||||
* | simplify | Aleksey Kladov | 2019-02-24 | 4 | -35/+31 | |
| | ||||||
* | move presentaion completion to presentation | Aleksey Kladov | 2019-02-24 | 2 | -80/+80 | |
| | ||||||
* | move function rendering to presentation | Aleksey Kladov | 2019-02-24 | 5 | -24/+49 | |
| | ||||||
* | introduce completion presentation | Aleksey Kladov | 2019-02-24 | 5 | -33/+42 | |
| | | | | | This module should remove completion rendering boilerplate from the "brains" of completion engine. | |||||
* | Merge #891 | bors[bot] | 2019-02-24 | 6 | -0/+494 | |
|\ | | | | | | | | | | | | | | | 891: Field completion r=matklad a=matklad bors r+ Co-authored-by: Aleksey Kladov <[email protected]> | |||||
| * | complete fields in struct literals | Aleksey Kladov | 2019-02-24 | 1 | -7/+16 | |
| | | ||||||
| * | complete struct literals | Aleksey Kladov | 2019-02-24 | 4 | -0/+78 | |
| | | ||||||
| * | support upcastig in AST enum | Aleksey Kladov | 2019-02-24 | 2 | -0/+407 | |
| | | ||||||
* | | Clean up imports a bit | Florian Diebold | 2019-02-24 | 2 | -6/+4 | |
|/ | ||||||
* | add marks to assists | Aleksey Kladov | 2019-02-24 | 4 | -47/+41 | |
| | ||||||
* | dont show introduce variable everywhere | Aleksey Kladov | 2019-02-24 | 2 | -46/+42 | |
| | ||||||
* | Assign IDs to assists | Aleksey Kladov | 2019-02-24 | 16 | -43/+102 | |
| | ||||||
* | Merge #885 | bors[bot] | 2019-02-24 | 9 | -47/+287 | |
|\ | | | | | | | | | | | | | | | 885: Parse token trees directy r=matklad a=matklad This takes advantage of the recent macro refactoring to directly parse token stream into a syntax tree. Co-authored-by: Aleksey Kladov <[email protected]> | |||||
| * | rename | Aleksey Kladov | 2019-02-24 | 1 | -8/+8 | |
| | | ||||||
| * | Add a test for macro parsing | Aleksey Kladov | 2019-02-23 | 2 | -10/+80 | |
| | | ||||||
| * | implement tt -> ast | Aleksey Kladov | 2019-02-23 | 2 | -5/+55 | |
| | | ||||||
| * | keep-text | Aleksey Kladov | 2019-02-23 | 1 | -10/+17 | |
| | | ||||||
| * | flatten tt | Aleksey Kladov | 2019-02-23 | 1 | -6/+55 | |
| | | ||||||
| * | token source scaffold | Aleksey Kladov | 2019-02-23 | 1 | -1/+22 | |
| | | ||||||
| * | add dependency on the parser | Aleksey Kladov | 2019-02-23 | 1 | -0/+1 | |
| | | ||||||
| * | add interface | Aleksey Kladov | 2019-02-23 | 1 | -0/+5 | |
| | | ||||||
| * | introduce tree builder | Aleksey Kladov | 2019-02-23 | 3 | -20/+61 | |
| | | ||||||
| * | rename | Aleksey Kladov | 2019-02-23 | 4 | -23/+19 | |
| | | ||||||
* | | Refactor associated method resolution a bit and make it work with generics | Florian Diebold | 2019-02-23 | 4 | -64/+98 | |
| | | ||||||
* | | Split ty.rs into several modules | Florian Diebold | 2019-02-23 | 5 | -1450/+1500 | |
| | | | | | | | | | | | | | | | | | | It was just getting too big. We now have: - ty: the `Ty` enum and helpers - ty::infer: actual type inference - ty::lower: lowering from HIR to `Ty` - ty::op: helpers for binary operations, currently | |||||
* | | Simplify test_fill_match_arm_refs test cases | Ville Penttinen | 2019-02-23 | 1 | -24/+0 | |
| | | ||||||
* | | Fix fill_match_arms not working with references | Ville Penttinen | 2019-02-23 | 1 | -0/+103 | |
|/ | ||||||
* | Merge #879 | bors[bot] | 2019-02-23 | 3 | -11/+139 | |
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 879: Fixes to goto definition r=vipentti a=vipentti Previously goto definition would fail when the cursor was over the name of the definition. Now we should properly resolve to a `NavigationTarget` when on top of the name of a definition. In addition this adds `name_range` field to `FileSymbol`, this further fixes goto_definition and symbol based navigation by allowing the `NavigationTarget` to actually have a `focus_range`, meaning instead of focusing on the start of the `full_range`, we can have the cursor focus on the name. e.g. goto definition ```rust fn bar() { fn foo() { } foo<|>(); } ``` Previously this would put the cursor at the start of the FN_DEF: ```rust fn bar() { <|>fn foo() { } foo(); } ``` Now when using the symbol based resolving, we'll have a proper focus range and instead put the cursor at the start of the name. ```rust fn bar() { fn <|>foo() { } foo(); } ``` This fixes #877 but doesn't contain the refactoring of the return type for `goto_definition` Co-authored-by: Ville Penttinen <[email protected]> | |||||
| * | Remove unnecessary to_nav_target | Ville Penttinen | 2019-02-23 | 1 | -16/+12 | |
| | | ||||||
| * | Add name_range field to FileSymbol | Ville Penttinen | 2019-02-23 | 2 | -7/+17 | |
| | | | | | | | | | | | | This contains the syntax range of the name itself, allowing NavigationTarget to properly set the focus_range. This should make it so that when using symbol based navigation, we should always focus on the name, instead of the full range. | |||||
| * | Fix NavigationTarget debug_render container_name output | Ville Penttinen | 2019-02-23 | 1 | -1/+1 | |
| | | ||||||
| * | Fix goto def not working when cursor was over the name of a def | Ville Penttinen | 2019-02-23 | 2 | -4/+126 | |
| | | | | | | | | | | We now allow goto_definition to return the named NavigationTarget if the cursor is on the name of a definition. |