Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Add support for goto definition and hover on Self | Ville Penttinen | 2019-03-07 | 3 | -2/+165 | |
| | | | | This fixes #943 | |||||
* | Use source map | kjeremy | 2019-03-06 | 1 | -14/+9 | |
| | ||||||
* | Hover for associated items in patterns | kjeremy | 2019-03-06 | 2 | -8/+55 | |
| | ||||||
* | dont produce giant debug dumps | Aleksey Kladov | 2019-03-05 | 1 | -1/+8 | |
| | ||||||
* | Make ExpOrPatId private | kjeremy | 2019-03-04 | 1 | -1/+1 | |
| | ||||||
* | Format | Jeremy Kolb | 2019-03-04 | 1 | -7/+2 | |
| | ||||||
* | Add NavigationTarget::from_impl_item | Jeremy Kolb | 2019-03-04 | 2 | -14/+22 | |
| | ||||||
* | Use ImplItems instead of just Function | Jeremy Kolb | 2019-03-04 | 2 | -6/+17 | |
| | ||||||
* | Make goto definition/hover resolve constructors | kjeremy | 2019-03-04 | 2 | -4/+47 | |
| | ||||||
* | Allow syntax strings to contain test markers | Ville Penttinen | 2019-03-04 | 1 | -1/+3 | |
| | | | | | We simply remove all the CUSTOM_MARKERS before attempting to parse the file. This allows for the syntax selection to work with most of the test strings. | |||||
* | Implement syntax tree support for syntax inside string | Ville Penttinen | 2019-03-04 | 2 | -8/+88 | |
| | | | | | | This allows us to select a string or portions of it and try parsing it as rust syntax. This is mostly helpful when developing tests where the test itself contains some rust syntax as a string. | |||||
* | Add optional range parameter to SyntaxTreeParams | Ville Penttinen | 2019-03-03 | 1 | -3/+9 | |
| | | | | | When range is provided, instead of showing the syntax for the whole file, we'll show the syntax tree for the given range. | |||||
* | Represent unknown types as {unknown} instead of [unknown] | Florian Diebold | 2019-03-03 | 1 | -1/+1 | |
| | | | | Since the latter could actually be a real type... | |||||
* | Merge #908 | bors[bot] | 2019-03-02 | 1 | -8/+27 | |
|\ | | | | | | | | | | | | | | | | | | | | | 908: Enable markup for hover on expressions which resolve using type_of r=matklad a=vipentti This adds highlighting when hovering over items which are resolved using `type_of`. This adds basic highlighting, discussed in #904. Co-authored-by: Ville Penttinen <[email protected]> | |||||
| * | Enable markup for hover on expressions which resolve using type_of | Ville Penttinen | 2019-02-28 | 1 | -8/+27 | |
| | | | | | | | | | | This adds highlighting when hovering over items which are resolved using `type_of`. | |||||
* | | remove second way to get the body | Aleksey Kladov | 2019-03-02 | 1 | -1/+1 | |
| | | ||||||
* | | rename syntax_mapping as well | Aleksey Kladov | 2019-03-02 | 4 | -16/+15 | |
| | | ||||||
* | | align lower module query names | Aleksey Kladov | 2019-03-02 | 1 | -2/+1 | |
| | | ||||||
* | | dont store body inside source map | Aleksey Kladov | 2019-03-02 | 1 | -1/+1 | |
| | | ||||||
* | | rename syntax-mapping -> source-map | Aleksey Kladov | 2019-03-02 | 5 | -7/+7 | |
| | | ||||||
* | | Update hover message since we do support globs | kjeremy | 2019-02-28 | 1 | -1/+1 | |
|/ | ||||||
* | Enable hover support for NamedFieldDefs | Ville Penttinen | 2019-02-27 | 1 | -3/+79 | |
| | | | | Additionally add type ascription for const and statics as well. | |||||
* | Allow goto-definition to work for named fields in struct initializer | Ville Penttinen | 2019-02-27 | 2 | -0/+45 | |
| | | | | | Now goto definition should work when done on a named field in a struct initializer. | |||||
* | Add support for hovering over the name of an item | Ville Penttinen | 2019-02-27 | 2 | -2/+28 | |
| | ||||||
* | Replace visit_fn with crate::completion::function_label | Ville Penttinen | 2019-02-26 | 1 | -43/+2 | |
| | ||||||
* | Add new type HoverResult to contain the results of hovering | Ville Penttinen | 2019-02-26 | 2 | -15/+148 | |
| | | | | | This makes testing hovers easier as well as allows us to do more things with the results if needed. | |||||
* | Add support for showing fn signature when hovering | Ville Penttinen | 2019-02-26 | 1 | -3/+43 | |
| | ||||||
* | rename type to type_alias in the AST as well | Aleksey Kladov | 2019-02-25 | 4 | -7/+7 | |
| | ||||||
* | complete patterns | Aleksey Kladov | 2019-02-24 | 3 | -0/+103 | |
| | ||||||
* | Rename Type => TypeAlias | Florian Diebold | 2019-02-24 | 3 | -4/+4 | |
| | ||||||
* | 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 | 4 | -32/+41 | |
| | | | | | This module should remove completion rendering boilerplate from the "brains" of completion engine. | |||||
* | complete fields in struct literals | Aleksey Kladov | 2019-02-24 | 1 | -7/+16 | |
| | ||||||
* | complete struct literals | Aleksey Kladov | 2019-02-24 | 3 | -0/+72 | |
| | ||||||
* | Assign IDs to assists | Aleksey Kladov | 2019-02-24 | 2 | -4/+15 | |
| | ||||||
* | 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. | |||||
* | Merge #866 | bors[bot] | 2019-02-22 | 1 | -0/+20 | |
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | 866: Implement basic support for Associated Methods r=flodiebold a=vipentti This is my attempt at learning to understand how the type inference works by adding basic support for associated methods. Currently it does not resolve associated types or constants. The basic idea is that `Resolver::resolve_path` returns a new `PathResult` type, which has two variants, `FullyResolved` and `PartiallyResolved`, fully resolved matches the previous behavior, where as `PartiallyResolved` contains the `PerNs<Resolution` in addition to a `segment_index` which contains the index of the segment which we failed to resolve. This index can then be used to continue inference in `infer_path_expr` using the `Type` we managed to resolve. This changes some of the previous apis, so looking for feedback and suggestions. This should enable fixing #832 Co-authored-by: Ville Penttinen <[email protected]> | |||||
| * | Change resolve_path to return the fully resolved path or PerNs::none | Ville Penttinen | 2019-02-22 | 2 | -2/+2 | |
| | | | | | | | | | | | | This also adds new pub(crate) resolve_path_segments which returns the PathResult, which may or may not be fully resolved. PathResult is also now pub(crate) since it is an implementation detail. | |||||
| * | Implement basic support for Associated Methods and Constants | Ville Penttinen | 2019-02-21 | 3 | -2/+22 | |
| | | | | | | | | | | | | | | This is done in `infer_path_expr`. When `Resolver::resolve_path` returns `PartiallyResolved`, we use the returned `Resolution` together with the given `segment_index` to check if we can find something matching the segment at segment_index in the impls for that particular type. |