Aleksey Kladov
77751cfe01
remove debug-print
2019-08-20 19:55:34 +03:00
Aleksey Kladov
deba1fedfa
⬆️ rustc_lexer
2019-08-20 19:53:05 +03:00
Aleksey Kladov
bbeb07e5ca
switch to upstream ra_vfs
2019-08-20 19:53:05 +03:00
Aleksey Kladov
188c9967c0
Drop unnecessary &'_
from impls
2019-08-20 19:53:05 +03:00
Aleksey Kladov
4753409f86
refactor TryConvWith similar to ConvWith
2019-08-20 19:53:05 +03:00
Aleksey Kladov
6ea4184fd1
translate \n -> \r\n on the way out
2019-08-20 19:53:05 +03:00
Aleksey Kladov
80a6e61446
make CTX type param instead of assoc type
...
that way, we can implement ConvWith<&'_ CTX> for different lifetimes
2019-08-20 19:53:05 +03:00
Aleksey Kladov
de3f2948ea
add tests for crlf
2019-08-20 19:53:05 +03:00
Aleksey Kladov
ccca427ce4
minor
2019-08-20 19:53:05 +03:00
bors[bot]
43dd8b64e7
Merge #1707
...
1707: make sure lockfile is used for cargo install r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-08-20 16:27:57 +00:00
Aleksey Kladov
1ae186a4cc
make sure lockfile is used for cargo install
2019-08-20 19:27:33 +03:00
bors[bot]
c7d37e424f
Merge #1703
...
1703: don't load sysroot in most heavy tests r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-08-19 12:42:06 +00:00
Aleksey Kladov
7cd9b1dd7a
don't load sysroot in most heavy tests
2019-08-19 15:41:18 +03:00
bors[bot]
3ba9bc493f
Merge #1702
...
1702: replace heck with just ascii transformation r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-08-19 12:09:33 +00:00
Aleksey Kladov
58e9d7ef6f
replace heck with just ascii transformation
2019-08-19 15:08:36 +03:00
bors[bot]
cef90ce45e
Merge #1701
...
1701: qualify ast types with `ast::` r=matklad a=matklad
(only the last commit is relevant, the rest are from #1700 )
bors r+
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-08-19 11:31:01 +00:00
Aleksey Kladov
db84437d6f
qualify ast types with ast::
...
By convention, ast nodes should always be used as `ast::FnDef`. This
is to avoid confusion with similarly-named hir types.
2019-08-19 14:27:15 +03:00
bors[bot]
8704a74cd5
Merge #1700
...
1700: remove ast::*Kind enums r=matklad a=matklad
bors r+
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-08-19 11:18:09 +00:00
Aleksey Kladov
df6dce23a7
remove ast::*Kind from ra_ide_api
2019-08-19 14:13:58 +03:00
Aleksey Kladov
3bec812258
remove ast::*Kind enums from assists
2019-08-19 14:11:09 +03:00
Aleksey Kladov
b50a04827c
remove ast::*Kind from hir
2019-08-19 14:04:51 +03:00
Aleksey Kladov
39e444d701
remove ast::*Kind enums
...
With the new owned trees, we don't need an indirection here
2019-08-19 13:58:49 +03:00
bors[bot]
ba2836245b
Merge #1699
...
1699: ⬆️ vfs r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-08-19 10:30:19 +00:00
Aleksey Kladov
97a36c85a5
⬆️ vfs
2019-08-19 13:21:34 +03:00
bors[bot]
2a34f5ca47
Merge #1698
...
1698: use derive(Debug) for SyntaxKind r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-08-19 10:17:23 +00:00
Aleksey Kladov
00ccc6c292
use derive(Debug) for SyntaxKind
2019-08-19 13:11:51 +03:00
bors[bot]
53241928e5
Merge #1697
...
1697: Use quote instead of tera for boilerplate generation r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-08-19 09:37:03 +00:00
Aleksey Kladov
038975b348
plug new boilerplate_gen into ra_tools
2019-08-19 12:26:34 +03:00
Aleksey Kladov
aa250ff612
rename codegen -> boilerplate_gen
2019-08-19 11:42:39 +03:00
Aleksey Kladov
5633829a16
drop tera dependency
2019-08-19 11:42:39 +03:00
Aleksey Kladov
832b40a075
use new quote-generated syntax kinds
2019-08-19 11:42:39 +03:00
bors[bot]
83413cc9ef
Merge #1696
...
1696: fix #1424 r=matklad a=coderfox
- resolve "~" in raLspServerPath
I think expanding simply `~/` is quite simple as node provides `homedir`, but expanding `~foo/` is difficult as there is no cross-platform approach of reading home directory of another user. So this pull request only resolves `~/` in `raLspServerPath`.
Besides, the source code is arranged in a way hard to write tests. Would anyone provide me with instructions of writing tests for this feature, or no test is required for this feature?
Co-authored-by: xfoxfu <i@xfox.me>
2019-08-19 08:05:39 +00:00
Aleksey Kladov
7d29cf1225
use quote! to generate syntax kinds
2019-08-19 11:02:04 +03:00
xfoxfu
d07a85ed7e
fix #1424
...
resolve "~" in raLspServerPath
2019-08-19 10:48:39 +08:00
Aleksey Kladov
39f50e7bd7
use new quote-generated ast
2019-08-18 23:36:22 +03:00
Aleksey Kladov
8cefdb5527
use quote! macro to generate grammar
...
We already use syn"e elsewhere (transitively), so it make sense to
cut down on the number of technologies and get rid of tera
2019-08-18 23:11:08 +03:00
Aleksey Kladov
d545a5c75c
deserialize grammar
2019-08-18 21:54:51 +03:00
Aleksey Kladov
229d7943d8
switch to new codegen
2019-08-18 21:44:24 +03:00
Aleksey Kladov
839d9cce89
codegen boilerplate
2019-08-18 21:36:06 +03:00
Aleksey Kladov
14fd9e72a7
add quote dep
2019-08-18 21:33:31 +03:00
bors[bot]
2bac1bdf17
Merge #1695
...
1695: update lsp r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-08-17 19:23:16 +00:00
Aleksey Kladov
64ecba4f15
update lsp
2019-08-17 22:21:59 +03:00
bors[bot]
5a2a97c7e8
Merge #1694
...
1694: Implement initial type-inference support for Index r=flodiebold a=matklad
This doesn't actually infer indexing types, but at least it walks sub-expressions!
Initially, I wanted to make `Index` just a new kind of `BinOp` (b/c indexing is kind of a binary op), so I've refactoring binop handing a bit.
However, in the end I've decided to add a separate expr kind for Index, because `foo[0]`, `&foo[1]` and `&mut foo[1]` all seem to need slightly different handing, which is not binop-like
r? @flodiebold
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-08-17 15:57:02 +00:00
Aleksey Kladov
189d879659
implement initial type inference for index expressions
2019-08-17 18:05:20 +03:00
Aleksey Kladov
b082cd679a
normalize ordering ops
2019-08-17 17:51:01 +03:00
Aleksey Kladov
7e5a186c1f
Introduce separate hir::BinaryOp
...
Unlike ast::BinOp, it has significantly more structure to it, so it's
easier to, say, handle all assignment-like operations in the same way.
2019-08-17 17:42:41 +03:00
Aleksey Kladov
8919aa8065
implement accessors for IndexExpr
2019-08-17 17:17:01 +03:00
Aleksey Kladov
fd4c083e42
simplify
2019-08-17 17:14:22 +03:00
bors[bot]
d15cf2c960
Merge #1693
...
1693: Remove cpuprofile dependencies r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-08-17 12:30:33 +00:00
Aleksey Kladov
e751e4d8a3
Remove cpuprofile dependencies
2019-08-17 15:29:57 +03:00