Aleksey Kladov
177229bfde
Move reference classification to ra_ide_db
...
Lost some marks along the way :-(
2020-03-03 18:50:15 +01:00
Aleksey Kladov
d49a4d1863
Rename NameDefinition -> Definition
2020-03-03 18:40:27 +01:00
Aleksey Kladov
1a6f51da66
Simplify: remove couple of useless functions
2020-03-02 19:03:46 +01:00
Aleksey Kladov
2716a1fa3f
More principled approach for gotodef for field shorhand
...
Callers can now decide for themselves if they should prefer field or
local definition. By default, it's the local.
2020-03-02 19:00:38 +01:00
Aleksey Kladov
a1e1869554
Rename ast::ImplBlock -> ast::ImplDef
2020-02-29 21:33:15 +01:00
Aleksey Kladov
c3a4c4429d
Refactor primary IDE API
...
This introduces the new type -- Semantics.
Semantics maps SyntaxNodes to various semantic info, such as type,
name resolution or macro expansions.
To do so, Semantics maintains a HashMap which maps every node it saw
to the file from which the node originated. This is enough to get all
the necessary hir bits just from syntax.
2020-02-26 12:55:50 +01:00
adamrk
fe8ce4c41d
remove unneeded collect
2020-02-21 23:51:30 +01:00
Adam Bratschi-Kaye
7be1044104
use Vec::extend instead of Vec::push in loop
...
Co-Authored-By: Laurențiu Nicola <lnicola@users.noreply.github.com>
2020-02-21 23:51:30 +01:00
adamrk
8b3f449b5f
rename module references
2020-02-21 23:51:30 +01:00
Aleksey Kladov
372439dec8
Merge NameDefinition and NameKind
2020-02-19 14:56:22 +01:00
Aleksey Kladov
0d5ae89948
Derive visibility as well
2020-02-19 14:45:49 +01:00
Aleksey Kladov
86b66067f6
Don't store deriveable Module info in NameDefinition
2020-02-19 14:32:22 +01:00
Edwin Cheng
dd0421e587
Handle macro token cases for rename
2020-02-09 17:17:56 +08:00
Aleksey Kladov
f55be75a17
Remove irrelevant distinction
2020-02-07 14:25:16 +01:00
Aleksey Kladov
271017e6bf
Move NameKind up
2020-02-06 16:23:28 +01:00
Aleksey Kladov
88267c86c0
cleanup imports
2020-02-06 14:03:45 +01:00
Veetaha
9e7eaa959f
ra_syntax: refactored the lexer design as per @matklad and @kiljacken PR review
2020-02-04 00:00:55 +02:00
Veetaha
ac37a11f04
Reimplemented lexer with vectors instead of iterators
2020-02-04 00:00:55 +02:00
Aleksey Kladov
595b06a1b8
Create modules via SourceBinder
2020-01-16 17:33:07 +01:00
Aleksey Kladov
9a6c26e348
Move module to SourceBinder
2020-01-16 16:53:11 +01:00
Aleksey Kladov
7aa627fe58
Move more stuff to SourceBinder
2020-01-16 16:37:51 +01:00
Aleksey Kladov
81a45ca1b3
Make FromSource private
2020-01-16 16:08:46 +01:00
Aleksey Kladov
11d6b9dadd
Only new-style classification
2020-01-15 16:52:28 +01:00
Aleksey Kladov
c640c2ea11
Make syntax highlighting linear
2020-01-15 16:52:28 +01:00
kjeremy
a82c679c97
Some clippy lints
2020-01-13 11:27:06 -05:00
Mikhail Modin
fb25c91979
Adds a way to limits reference search by StructLiteral
2020-01-08 15:21:54 +01:00
Aleksey Kladov
3d4b48e481
Fix resolve for field init shorthand
2019-12-20 14:48:14 +01:00
Aleksey Kladov
08d3166c8b
Cleanup Crate API
2019-12-08 12:02:53 +01:00
Aleksey Kladov
88c5b1282a
Rename GenericParam -> TypeParam
...
We don't have LifetimeParam yet, but they are planned!
2019-12-07 20:25:48 +01:00
Aleksey Kladov
f4f8b81474
Get the right analyzer for impls
2019-12-07 20:05:08 +01:00
Aleksey Kladov
7d2080a031
Classify name works for TypeParams
2019-12-07 19:52:09 +01:00
Wilco Kusee
b3856568af
Push identifier check to rename function
2019-11-29 16:06:20 +01:00
Wilco Kusee
645df2b5f5
Test rename for various identifiers
2019-11-29 16:03:39 +01:00
Aleksey Kladov
ccd1b0800a
Rename Source -> InFile
2019-11-28 12:50:26 +03:00
Aleksey Kladov
757e593b25
rename ra_ide_api -> ra_ide
2019-11-27 21:35:06 +03:00