aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Cargo.lock178
-rw-r--r--crates/ra_hir/src/code_model.rs46
-rw-r--r--crates/ra_hir/src/db.rs16
-rw-r--r--crates/ra_hir/src/lib.rs4
-rw-r--r--crates/ra_hir/src/ty/infer.rs25
-rw-r--r--crates/ra_hir/src/ty/lower.rs15
-rw-r--r--crates/ra_hir/src/ty/method_resolution.rs8
-rw-r--r--crates/ra_ide_api/src/call_info.rs2
-rw-r--r--crates/ra_ide_api/src/completion/complete_dot.rs4
-rw-r--r--crates/ra_ide_api/src/completion/complete_path.rs4
-rw-r--r--crates/ra_ide_api/src/completion/presentation.rs12
-rw-r--r--docs/user/README.md21
12 files changed, 176 insertions, 159 deletions
diff --git a/Cargo.lock b/Cargo.lock
index b7489fda5..7a18122ee 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -30,7 +30,7 @@ version = "0.2.11"
30source = "registry+https://github.com/rust-lang/crates.io-index" 30source = "registry+https://github.com/rust-lang/crates.io-index"
31dependencies = [ 31dependencies = [
32 "libc 0.2.58 (registry+https://github.com/rust-lang/crates.io-index)", 32 "libc 0.2.58 (registry+https://github.com/rust-lang/crates.io-index)",
33 "termion 1.5.2 (registry+https://github.com/rust-lang/crates.io-index)", 33 "termion 1.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
34 "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", 34 "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
35] 35]
36 36
@@ -65,7 +65,7 @@ name = "base64"
65version = "0.10.1" 65version = "0.10.1"
66source = "registry+https://github.com/rust-lang/crates.io-index" 66source = "registry+https://github.com/rust-lang/crates.io-index"
67dependencies = [ 67dependencies = [
68 "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", 68 "byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
69] 69]
70 70
71[[package]] 71[[package]]
@@ -93,7 +93,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
93dependencies = [ 93dependencies = [
94 "block-padding 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", 94 "block-padding 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
95 "byte-tools 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", 95 "byte-tools 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
96 "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", 96 "byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
97 "generic-array 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", 97 "generic-array 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)",
98] 98]
99 99
@@ -112,7 +112,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
112 112
113[[package]] 113[[package]]
114name = "byteorder" 114name = "byteorder"
115version = "1.3.1" 115version = "1.3.2"
116source = "registry+https://github.com/rust-lang/crates.io-index" 116source = "registry+https://github.com/rust-lang/crates.io-index"
117 117
118[[package]] 118[[package]]
@@ -248,7 +248,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
248 248
249[[package]] 249[[package]]
250name = "console" 250name = "console"
251version = "0.7.5" 251version = "0.7.6"
252source = "registry+https://github.com/rust-lang/crates.io-index" 252source = "registry+https://github.com/rust-lang/crates.io-index"
253dependencies = [ 253dependencies = [
254 "atty 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", 254 "atty 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -257,7 +257,7 @@ dependencies = [
257 "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", 257 "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
258 "libc 0.2.58 (registry+https://github.com/rust-lang/crates.io-index)", 258 "libc 0.2.58 (registry+https://github.com/rust-lang/crates.io-index)",
259 "parking_lot 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", 259 "parking_lot 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
260 "regex 1.1.6 (registry+https://github.com/rust-lang/crates.io-index)", 260 "regex 1.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
261 "termios 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", 261 "termios 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
262 "unicode-width 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", 262 "unicode-width 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
263 "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", 263 "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -269,38 +269,37 @@ version = "0.3.8"
269source = "registry+https://github.com/rust-lang/crates.io-index" 269source = "registry+https://github.com/rust-lang/crates.io-index"
270dependencies = [ 270dependencies = [
271 "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", 271 "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
272 "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", 272 "smallvec 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)",
273] 273]
274 274
275[[package]] 275[[package]]
276name = "crossbeam-deque" 276name = "crossbeam-deque"
277version = "0.2.0" 277version = "0.6.3"
278source = "registry+https://github.com/rust-lang/crates.io-index" 278source = "registry+https://github.com/rust-lang/crates.io-index"
279dependencies = [ 279dependencies = [
280 "crossbeam-epoch 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", 280 "crossbeam-epoch 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
281 "crossbeam-utils 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", 281 "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
282] 282]
283 283
284[[package]] 284[[package]]
285name = "crossbeam-epoch" 285name = "crossbeam-epoch"
286version = "0.3.1" 286version = "0.7.1"
287source = "registry+https://github.com/rust-lang/crates.io-index" 287source = "registry+https://github.com/rust-lang/crates.io-index"
288dependencies = [ 288dependencies = [
289 "arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", 289 "arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
290 "cfg-if 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", 290 "cfg-if 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
291 "crossbeam-utils 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", 291 "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
292 "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", 292 "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
293 "memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", 293 "memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
294 "nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)",
295 "scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", 294 "scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
296] 295]
297 296
298[[package]] 297[[package]]
299name = "crossbeam-utils" 298name = "crossbeam-queue"
300version = "0.2.2" 299version = "0.1.2"
301source = "registry+https://github.com/rust-lang/crates.io-index" 300source = "registry+https://github.com/rust-lang/crates.io-index"
302dependencies = [ 301dependencies = [
303 "cfg-if 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", 302 "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
304] 303]
305 304
306[[package]] 305[[package]]
@@ -319,7 +318,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
319dependencies = [ 318dependencies = [
320 "proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)", 319 "proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)",
321 "quote 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)", 320 "quote 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)",
322 "syn 0.15.34 (registry+https://github.com/rust-lang/crates.io-index)", 321 "syn 0.15.36 (registry+https://github.com/rust-lang/crates.io-index)",
323] 322]
324 323
325[[package]] 324[[package]]
@@ -401,7 +400,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
401dependencies = [ 400dependencies = [
402 "proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)", 401 "proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)",
403 "quote 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)", 402 "quote 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)",
404 "syn 0.15.34 (registry+https://github.com/rust-lang/crates.io-index)", 403 "syn 0.15.36 (registry+https://github.com/rust-lang/crates.io-index)",
405 "synstructure 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)", 404 "synstructure 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)",
406] 405]
407 406
@@ -433,7 +432,7 @@ dependencies = [
433 "chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", 432 "chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
434 "glob 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", 433 "glob 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
435 "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", 434 "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
436 "regex 1.1.6 (registry+https://github.com/rust-lang/crates.io-index)", 435 "regex 1.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
437] 436]
438 437
439[[package]] 438[[package]]
@@ -463,7 +462,7 @@ name = "fst"
463version = "0.3.3" 462version = "0.3.3"
464source = "registry+https://github.com/rust-lang/crates.io-index" 463source = "registry+https://github.com/rust-lang/crates.io-index"
465dependencies = [ 464dependencies = [
466 "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", 465 "byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
467] 466]
468 467
469[[package]] 468[[package]]
@@ -548,11 +547,11 @@ name = "indicatif"
548version = "0.11.0" 547version = "0.11.0"
549source = "registry+https://github.com/rust-lang/crates.io-index" 548source = "registry+https://github.com/rust-lang/crates.io-index"
550dependencies = [ 549dependencies = [
551 "console 0.7.5 (registry+https://github.com/rust-lang/crates.io-index)", 550 "console 0.7.6 (registry+https://github.com/rust-lang/crates.io-index)",
552 "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", 551 "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
553 "number_prefix 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", 552 "number_prefix 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
554 "parking_lot 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", 553 "parking_lot 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
555 "regex 1.1.6 (registry+https://github.com/rust-lang/crates.io-index)", 554 "regex 1.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
556] 555]
557 556
558[[package]] 557[[package]]
@@ -580,7 +579,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
580dependencies = [ 579dependencies = [
581 "chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", 580 "chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
582 "ci_info 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", 581 "ci_info 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
583 "console 0.7.5 (registry+https://github.com/rust-lang/crates.io-index)", 582 "console 0.7.6 (registry+https://github.com/rust-lang/crates.io-index)",
584 "difference 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)", 583 "difference 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
585 "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", 584 "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
586 "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", 585 "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -809,7 +808,7 @@ dependencies = [
809 "libc 0.2.58 (registry+https://github.com/rust-lang/crates.io-index)", 808 "libc 0.2.58 (registry+https://github.com/rust-lang/crates.io-index)",
810 "mio 0.6.19 (registry+https://github.com/rust-lang/crates.io-index)", 809 "mio 0.6.19 (registry+https://github.com/rust-lang/crates.io-index)",
811 "mio-extras 2.0.5 (registry+https://github.com/rust-lang/crates.io-index)", 810 "mio-extras 2.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
812 "walkdir 2.2.7 (registry+https://github.com/rust-lang/crates.io-index)", 811 "walkdir 2.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
813 "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", 812 "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
814] 813]
815 814
@@ -820,7 +819,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
820dependencies = [ 819dependencies = [
821 "proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)", 820 "proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)",
822 "quote 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)", 821 "quote 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)",
823 "syn 0.15.34 (registry+https://github.com/rust-lang/crates.io-index)", 822 "syn 0.15.36 (registry+https://github.com/rust-lang/crates.io-index)",
824] 823]
825 824
826[[package]] 825[[package]]
@@ -842,7 +841,7 @@ dependencies = [
842 841
843[[package]] 842[[package]]
844name = "num_cpus" 843name = "num_cpus"
845version = "1.10.0" 844version = "1.10.1"
846source = "registry+https://github.com/rust-lang/crates.io-index" 845source = "registry+https://github.com/rust-lang/crates.io-index"
847dependencies = [ 846dependencies = [
848 "libc 0.2.58 (registry+https://github.com/rust-lang/crates.io-index)", 847 "libc 0.2.58 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -901,7 +900,7 @@ dependencies = [
901 "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", 900 "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
902 "redox_syscall 0.1.54 (registry+https://github.com/rust-lang/crates.io-index)", 901 "redox_syscall 0.1.54 (registry+https://github.com/rust-lang/crates.io-index)",
903 "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", 902 "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
904 "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", 903 "smallvec 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)",
905 "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", 904 "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
906] 905]
907 906
@@ -936,7 +935,7 @@ dependencies = [
936 "pest_meta 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)", 935 "pest_meta 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
937 "proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)", 936 "proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)",
938 "quote 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)", 937 "quote 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)",
939 "syn 0.15.34 (registry+https://github.com/rust-lang/crates.io-index)", 938 "syn 0.15.36 (registry+https://github.com/rust-lang/crates.io-index)",
940] 939]
941 940
942[[package]] 941[[package]]
@@ -968,19 +967,19 @@ dependencies = [
968 967
969[[package]] 968[[package]]
970name = "proptest" 969name = "proptest"
971version = "0.9.3" 970version = "0.9.4"
972source = "registry+https://github.com/rust-lang/crates.io-index" 971source = "registry+https://github.com/rust-lang/crates.io-index"
973dependencies = [ 972dependencies = [
974 "bit-set 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", 973 "bit-set 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
975 "bitflags 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", 974 "bitflags 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
976 "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", 975 "byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
977 "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", 976 "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
978 "num-traits 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", 977 "num-traits 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
979 "quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)", 978 "quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
980 "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", 979 "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
981 "rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", 980 "rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
982 "rand_xorshift 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", 981 "rand_xorshift 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
983 "regex-syntax 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)", 982 "regex-syntax 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
984] 983]
985 984
986[[package]] 985[[package]]
@@ -1026,7 +1025,7 @@ dependencies = [
1026 "ra_ide_api 0.1.0", 1025 "ra_ide_api 0.1.0",
1027 "ra_project_model 0.1.0", 1026 "ra_project_model 0.1.0",
1028 "ra_syntax 0.1.0", 1027 "ra_syntax 0.1.0",
1029 "ra_vfs 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", 1028 "ra_vfs 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)",
1030 "rustc-hash 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", 1029 "rustc-hash 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
1031 "test_utils 0.1.0", 1030 "test_utils 0.1.0",
1032] 1031]
@@ -1106,7 +1105,7 @@ dependencies = [
1106 "jemallocator 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", 1105 "jemallocator 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
1107 "join_to_string 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", 1106 "join_to_string 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
1108 "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", 1107 "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
1109 "proptest 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)", 1108 "proptest 0.9.4 (registry+https://github.com/rust-lang/crates.io-index)",
1110 "ra_assists 0.1.0", 1109 "ra_assists 0.1.0",
1111 "ra_db 0.1.0", 1110 "ra_db 0.1.0",
1112 "ra_fmt 0.1.0", 1111 "ra_fmt 0.1.0",
@@ -1115,7 +1114,7 @@ dependencies = [
1115 "ra_syntax 0.1.0", 1114 "ra_syntax 0.1.0",
1116 "ra_text_edit 0.1.0", 1115 "ra_text_edit 0.1.0",
1117 "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", 1116 "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
1118 "rayon 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", 1117 "rayon 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
1119 "relative-path 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", 1118 "relative-path 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
1120 "rustc-hash 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", 1119 "rustc-hash 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
1121 "superslice 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", 1120 "superslice 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1139,7 +1138,7 @@ dependencies = [
1139 "ra_project_model 0.1.0", 1138 "ra_project_model 0.1.0",
1140 "ra_syntax 0.1.0", 1139 "ra_syntax 0.1.0",
1141 "ra_text_edit 0.1.0", 1140 "ra_text_edit 0.1.0",
1142 "ra_vfs 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", 1141 "ra_vfs 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)",
1143 "relative-path 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", 1142 "relative-path 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
1144 "rustc-hash 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", 1143 "rustc-hash 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
1145 "serde 1.0.92 (registry+https://github.com/rust-lang/crates.io-index)", 1144 "serde 1.0.92 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1161,7 +1160,7 @@ dependencies = [
1161 "ra_syntax 0.1.0", 1160 "ra_syntax 0.1.0",
1162 "ra_tt 0.1.0", 1161 "ra_tt 0.1.0",
1163 "rustc-hash 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", 1162 "rustc-hash 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
1164 "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", 1163 "smallvec 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)",
1165] 1164]
1166 1165
1167[[package]] 1166[[package]]
@@ -1193,7 +1192,7 @@ dependencies = [
1193 "serde 1.0.92 (registry+https://github.com/rust-lang/crates.io-index)", 1192 "serde 1.0.92 (registry+https://github.com/rust-lang/crates.io-index)",
1194 "serde_json 1.0.39 (registry+https://github.com/rust-lang/crates.io-index)", 1193 "serde_json 1.0.39 (registry+https://github.com/rust-lang/crates.io-index)",
1195 "test_utils 0.1.0", 1194 "test_utils 0.1.0",
1196 "walkdir 2.2.7 (registry+https://github.com/rust-lang/crates.io-index)", 1195 "walkdir 2.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
1197] 1196]
1198 1197
1199[[package]] 1198[[package]]
@@ -1205,19 +1204,19 @@ dependencies = [
1205 "itertools 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", 1204 "itertools 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
1206 "ra_parser 0.1.0", 1205 "ra_parser 0.1.0",
1207 "ra_text_edit 0.1.0", 1206 "ra_text_edit 0.1.0",
1208 "rowan 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)", 1207 "rowan 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)",
1209 "smol_str 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", 1208 "smol_str 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)",
1210 "test_utils 0.1.0", 1209 "test_utils 0.1.0",
1211 "text_unit 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", 1210 "text_unit 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
1212 "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", 1211 "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
1213 "walkdir 2.2.7 (registry+https://github.com/rust-lang/crates.io-index)", 1212 "walkdir 2.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
1214] 1213]
1215 1214
1216[[package]] 1215[[package]]
1217name = "ra_text_edit" 1216name = "ra_text_edit"
1218version = "0.1.0" 1217version = "0.1.0"
1219dependencies = [ 1218dependencies = [
1220 "proptest 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)", 1219 "proptest 0.9.4 (registry+https://github.com/rust-lang/crates.io-index)",
1221 "test_utils 0.1.0", 1220 "test_utils 0.1.0",
1222 "text_unit 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", 1221 "text_unit 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
1223] 1222]
@@ -1229,7 +1228,7 @@ dependencies = [
1229 "clap 2.33.0 (registry+https://github.com/rust-lang/crates.io-index)", 1228 "clap 2.33.0 (registry+https://github.com/rust-lang/crates.io-index)",
1230 "itertools 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", 1229 "itertools 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
1231 "teraron 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", 1230 "teraron 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
1232 "walkdir 2.2.7 (registry+https://github.com/rust-lang/crates.io-index)", 1231 "walkdir 2.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
1233] 1232]
1234 1233
1235[[package]] 1234[[package]]
@@ -1241,7 +1240,7 @@ dependencies = [
1241 1240
1242[[package]] 1241[[package]]
1243name = "ra_vfs" 1242name = "ra_vfs"
1244version = "0.2.4" 1243version = "0.2.5"
1245source = "registry+https://github.com/rust-lang/crates.io-index" 1244source = "registry+https://github.com/rust-lang/crates.io-index"
1246dependencies = [ 1245dependencies = [
1247 "crossbeam-channel 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", 1246 "crossbeam-channel 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1250,7 +1249,7 @@ dependencies = [
1250 "parking_lot 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", 1249 "parking_lot 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
1251 "relative-path 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", 1250 "relative-path 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
1252 "rustc-hash 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", 1251 "rustc-hash 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
1253 "walkdir 2.2.7 (registry+https://github.com/rust-lang/crates.io-index)", 1252 "walkdir 2.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
1254] 1253]
1255 1254
1256[[package]] 1255[[package]]
@@ -1351,23 +1350,24 @@ dependencies = [
1351 1350
1352[[package]] 1351[[package]]
1353name = "rayon" 1352name = "rayon"
1354version = "1.0.3" 1353version = "1.1.0"
1355source = "registry+https://github.com/rust-lang/crates.io-index" 1354source = "registry+https://github.com/rust-lang/crates.io-index"
1356dependencies = [ 1355dependencies = [
1357 "crossbeam-deque 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", 1356 "crossbeam-deque 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)",
1358 "either 1.5.2 (registry+https://github.com/rust-lang/crates.io-index)", 1357 "either 1.5.2 (registry+https://github.com/rust-lang/crates.io-index)",
1359 "rayon-core 1.4.1 (registry+https://github.com/rust-lang/crates.io-index)", 1358 "rayon-core 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
1360] 1359]
1361 1360
1362[[package]] 1361[[package]]
1363name = "rayon-core" 1362name = "rayon-core"
1364version = "1.4.1" 1363version = "1.5.0"
1365source = "registry+https://github.com/rust-lang/crates.io-index" 1364source = "registry+https://github.com/rust-lang/crates.io-index"
1366dependencies = [ 1365dependencies = [
1367 "crossbeam-deque 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", 1366 "crossbeam-deque 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)",
1367 "crossbeam-queue 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
1368 "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
1368 "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", 1369 "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
1369 "libc 0.2.58 (registry+https://github.com/rust-lang/crates.io-index)", 1370 "num_cpus 1.10.1 (registry+https://github.com/rust-lang/crates.io-index)",
1370 "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
1371] 1371]
1372 1372
1373[[package]] 1373[[package]]
@@ -1393,19 +1393,19 @@ dependencies = [
1393 1393
1394[[package]] 1394[[package]]
1395name = "regex" 1395name = "regex"
1396version = "1.1.6" 1396version = "1.1.7"
1397source = "registry+https://github.com/rust-lang/crates.io-index" 1397source = "registry+https://github.com/rust-lang/crates.io-index"
1398dependencies = [ 1398dependencies = [
1399 "aho-corasick 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)", 1399 "aho-corasick 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
1400 "memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)", 1400 "memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
1401 "regex-syntax 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)", 1401 "regex-syntax 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)",
1402 "thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", 1402 "thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
1403 "utf8-ranges 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", 1403 "utf8-ranges 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
1404] 1404]
1405 1405
1406[[package]] 1406[[package]]
1407name = "regex-syntax" 1407name = "regex-syntax"
1408version = "0.6.6" 1408version = "0.6.7"
1409source = "registry+https://github.com/rust-lang/crates.io-index" 1409source = "registry+https://github.com/rust-lang/crates.io-index"
1410dependencies = [ 1410dependencies = [
1411 "ucd-util 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", 1411 "ucd-util 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1418,7 +1418,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
1418 1418
1419[[package]] 1419[[package]]
1420name = "remove_dir_all" 1420name = "remove_dir_all"
1421version = "0.5.1" 1421version = "0.5.2"
1422source = "registry+https://github.com/rust-lang/crates.io-index" 1422source = "registry+https://github.com/rust-lang/crates.io-index"
1423dependencies = [ 1423dependencies = [
1424 "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", 1424 "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1436,7 +1436,7 @@ dependencies = [
1436 1436
1437[[package]] 1437[[package]]
1438name = "rowan" 1438name = "rowan"
1439version = "0.5.2" 1439version = "0.5.4"
1440source = "registry+https://github.com/rust-lang/crates.io-index" 1440source = "registry+https://github.com/rust-lang/crates.io-index"
1441dependencies = [ 1441dependencies = [
1442 "colosseum 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", 1442 "colosseum 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1455,7 +1455,7 @@ name = "rustc-hash"
1455version = "1.0.1" 1455version = "1.0.1"
1456source = "registry+https://github.com/rust-lang/crates.io-index" 1456source = "registry+https://github.com/rust-lang/crates.io-index"
1457dependencies = [ 1457dependencies = [
1458 "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", 1458 "byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
1459] 1459]
1460 1460
1461[[package]] 1461[[package]]
@@ -1484,7 +1484,7 @@ dependencies = [
1484 "parking_lot 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", 1484 "parking_lot 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
1485 "rustc-hash 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", 1485 "rustc-hash 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
1486 "salsa-macros 0.12.1 (registry+https://github.com/rust-lang/crates.io-index)", 1486 "salsa-macros 0.12.1 (registry+https://github.com/rust-lang/crates.io-index)",
1487 "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", 1487 "smallvec 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)",
1488] 1488]
1489 1489
1490[[package]] 1490[[package]]
@@ -1495,7 +1495,7 @@ dependencies = [
1495 "heck 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", 1495 "heck 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
1496 "proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)", 1496 "proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)",
1497 "quote 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)", 1497 "quote 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)",
1498 "syn 0.15.34 (registry+https://github.com/rust-lang/crates.io-index)", 1498 "syn 0.15.36 (registry+https://github.com/rust-lang/crates.io-index)",
1499] 1499]
1500 1500
1501[[package]] 1501[[package]]
@@ -1545,7 +1545,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
1545dependencies = [ 1545dependencies = [
1546 "proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)", 1546 "proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)",
1547 "quote 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)", 1547 "quote 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)",
1548 "syn 0.15.34 (registry+https://github.com/rust-lang/crates.io-index)", 1548 "syn 0.15.36 (registry+https://github.com/rust-lang/crates.io-index)",
1549] 1549]
1550 1550
1551[[package]] 1551[[package]]
@@ -1595,7 +1595,7 @@ dependencies = [
1595 1595
1596[[package]] 1596[[package]]
1597name = "smallvec" 1597name = "smallvec"
1598version = "0.6.9" 1598version = "0.6.10"
1599source = "registry+https://github.com/rust-lang/crates.io-index" 1599source = "registry+https://github.com/rust-lang/crates.io-index"
1600 1600
1601[[package]] 1601[[package]]
@@ -1629,7 +1629,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
1629 1629
1630[[package]] 1630[[package]]
1631name = "syn" 1631name = "syn"
1632version = "0.15.34" 1632version = "0.15.36"
1633source = "registry+https://github.com/rust-lang/crates.io-index" 1633source = "registry+https://github.com/rust-lang/crates.io-index"
1634dependencies = [ 1634dependencies = [
1635 "proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)", 1635 "proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1644,7 +1644,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
1644dependencies = [ 1644dependencies = [
1645 "proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)", 1645 "proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)",
1646 "quote 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)", 1646 "quote 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)",
1647 "syn 0.15.34 (registry+https://github.com/rust-lang/crates.io-index)", 1647 "syn 0.15.36 (registry+https://github.com/rust-lang/crates.io-index)",
1648 "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", 1648 "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
1649] 1649]
1650 1650
@@ -1657,7 +1657,7 @@ dependencies = [
1657 "libc 0.2.58 (registry+https://github.com/rust-lang/crates.io-index)", 1657 "libc 0.2.58 (registry+https://github.com/rust-lang/crates.io-index)",
1658 "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", 1658 "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
1659 "redox_syscall 0.1.54 (registry+https://github.com/rust-lang/crates.io-index)", 1659 "redox_syscall 0.1.54 (registry+https://github.com/rust-lang/crates.io-index)",
1660 "remove_dir_all 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", 1660 "remove_dir_all 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)",
1661 "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", 1661 "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
1662] 1662]
1663 1663
@@ -1673,7 +1673,7 @@ dependencies = [
1673 "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", 1673 "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
1674 "pest 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)", 1674 "pest 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
1675 "pest_derive 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", 1675 "pest_derive 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
1676 "regex 1.1.6 (registry+https://github.com/rust-lang/crates.io-index)", 1676 "regex 1.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
1677 "serde 1.0.92 (registry+https://github.com/rust-lang/crates.io-index)", 1677 "serde 1.0.92 (registry+https://github.com/rust-lang/crates.io-index)",
1678 "serde_json 1.0.39 (registry+https://github.com/rust-lang/crates.io-index)", 1678 "serde_json 1.0.39 (registry+https://github.com/rust-lang/crates.io-index)",
1679 "slug 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", 1679 "slug 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1693,7 +1693,7 @@ dependencies = [
1693 1693
1694[[package]] 1694[[package]]
1695name = "termion" 1695name = "termion"
1696version = "1.5.2" 1696version = "1.5.3"
1697source = "registry+https://github.com/rust-lang/crates.io-index" 1697source = "registry+https://github.com/rust-lang/crates.io-index"
1698dependencies = [ 1698dependencies = [
1699 "libc 0.2.58 (registry+https://github.com/rust-lang/crates.io-index)", 1699 "libc 0.2.58 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1757,7 +1757,7 @@ name = "threadpool"
1757version = "1.7.1" 1757version = "1.7.1"
1758source = "registry+https://github.com/rust-lang/crates.io-index" 1758source = "registry+https://github.com/rust-lang/crates.io-index"
1759dependencies = [ 1759dependencies = [
1760 "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", 1760 "num_cpus 1.10.1 (registry+https://github.com/rust-lang/crates.io-index)",
1761] 1761]
1762 1762
1763[[package]] 1763[[package]]
@@ -1850,7 +1850,7 @@ name = "unicode-normalization"
1850version = "0.1.8" 1850version = "0.1.8"
1851source = "registry+https://github.com/rust-lang/crates.io-index" 1851source = "registry+https://github.com/rust-lang/crates.io-index"
1852dependencies = [ 1852dependencies = [
1853 "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", 1853 "smallvec 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)",
1854] 1854]
1855 1855
1856[[package]] 1856[[package]]
@@ -1889,7 +1889,7 @@ dependencies = [
1889 1889
1890[[package]] 1890[[package]]
1891name = "utf8-ranges" 1891name = "utf8-ranges"
1892version = "1.0.2" 1892version = "1.0.3"
1893source = "registry+https://github.com/rust-lang/crates.io-index" 1893source = "registry+https://github.com/rust-lang/crates.io-index"
1894 1894
1895[[package]] 1895[[package]]
@@ -1913,7 +1913,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
1913 1913
1914[[package]] 1914[[package]]
1915name = "walkdir" 1915name = "walkdir"
1916version = "2.2.7" 1916version = "2.2.8"
1917source = "registry+https://github.com/rust-lang/crates.io-index" 1917source = "registry+https://github.com/rust-lang/crates.io-index"
1918dependencies = [ 1918dependencies = [
1919 "same-file 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", 1919 "same-file 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1990,7 +1990,7 @@ dependencies = [
1990"checksum block-buffer 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)" = "c0940dc441f31689269e10ac70eb1002a3a1d3ad1390e030043662eb7fe4688b" 1990"checksum block-buffer 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)" = "c0940dc441f31689269e10ac70eb1002a3a1d3ad1390e030043662eb7fe4688b"
1991"checksum block-padding 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "6d4dc3af3ee2e12f3e5d224e5e1e3d73668abbeb69e566d361f7d5563a4fdf09" 1991"checksum block-padding 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "6d4dc3af3ee2e12f3e5d224e5e1e3d73668abbeb69e566d361f7d5563a4fdf09"
1992"checksum byte-tools 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7" 1992"checksum byte-tools 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7"
1993"checksum byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a019b10a2a7cdeb292db131fc8113e57ea2a908f6e7894b0c3c671893b65dbeb" 1993"checksum byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a7c3dd8985a7111efc5c80b44e23ecdd8c007de8ade3b96595387e812b957cf5"
1994"checksum cargo_metadata 0.7.4 (registry+https://github.com/rust-lang/crates.io-index)" = "178d62b240c34223f265a4c1e275e37d62da163d421fc8d7f7e3ee340f803c57" 1994"checksum cargo_metadata 0.7.4 (registry+https://github.com/rust-lang/crates.io-index)" = "178d62b240c34223f265a4c1e275e37d62da163d421fc8d7f7e3ee340f803c57"
1995"checksum cc 1.0.37 (registry+https://github.com/rust-lang/crates.io-index)" = "39f75544d7bbaf57560d2168f28fd649ff9c76153874db88bdbdfd839b1a7e7d" 1995"checksum cc 1.0.37 (registry+https://github.com/rust-lang/crates.io-index)" = "39f75544d7bbaf57560d2168f28fd649ff9c76153874db88bdbdfd839b1a7e7d"
1996"checksum cfg-if 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "b486ce3ccf7ffd79fdeb678eac06a9e6c09fc88d33836340becb8fffe87c5e33" 1996"checksum cfg-if 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "b486ce3ccf7ffd79fdeb678eac06a9e6c09fc88d33836340becb8fffe87c5e33"
@@ -2005,11 +2005,11 @@ dependencies = [
2005"checksum clicolors-control 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "73abfd4c73d003a674ce5d2933fca6ce6c42480ea84a5ffe0a2dc39ed56300f9" 2005"checksum clicolors-control 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "73abfd4c73d003a674ce5d2933fca6ce6c42480ea84a5ffe0a2dc39ed56300f9"
2006"checksum cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f" 2006"checksum cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f"
2007"checksum colosseum 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "370c83b49aedf022ee27942e8ae1d9de1cf40dc9653ee6550e4455d08f6406f9" 2007"checksum colosseum 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "370c83b49aedf022ee27942e8ae1d9de1cf40dc9653ee6550e4455d08f6406f9"
2008"checksum console 0.7.5 (registry+https://github.com/rust-lang/crates.io-index)" = "2bf3720d3f3fc30b721ef1ae54e13af3264af4af39dc476a8de56a6ee1e2184b" 2008"checksum console 0.7.6 (registry+https://github.com/rust-lang/crates.io-index)" = "b11432ec626c0a221d0ff3914ea6887de61a12d89a814a4f1c49882fc3151a11"
2009"checksum crossbeam-channel 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)" = "0f0ed1a4de2235cabda8558ff5840bffb97fcb64c97827f354a451307df5f72b" 2009"checksum crossbeam-channel 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)" = "0f0ed1a4de2235cabda8558ff5840bffb97fcb64c97827f354a451307df5f72b"
2010"checksum crossbeam-deque 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f739f8c5363aca78cfb059edf753d8f0d36908c348f3d8d1503f03d8b75d9cf3" 2010"checksum crossbeam-deque 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)" = "05e44b8cf3e1a625844d1750e1f7820da46044ff6d28f4d43e455ba3e5bb2c13"
2011"checksum crossbeam-epoch 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "927121f5407de9956180ff5e936fe3cf4324279280001cd56b669d28ee7e9150" 2011"checksum crossbeam-epoch 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "04c9e3102cc2d69cd681412141b390abd55a362afc1540965dad0ad4d34280b4"
2012"checksum crossbeam-utils 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "2760899e32a1d58d5abb31129f8fae5de75220bc2176e77ff7c627ae45c918d9" 2012"checksum crossbeam-queue 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7c979cd6cfe72335896575c6b5688da489e420d36a27a0b9eb0c73db574b4a4b"
2013"checksum crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "f8306fcef4a7b563b76b7dd949ca48f52bc1141aa067d2ea09565f3e2652aa5c" 2013"checksum crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "f8306fcef4a7b563b76b7dd949ca48f52bc1141aa067d2ea09565f3e2652aa5c"
2014"checksum derive-new 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)" = "6ca414e896ae072546f4d789f452daaecf60ddee4c9df5dc6d5936d769e3d87c" 2014"checksum derive-new 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)" = "6ca414e896ae072546f4d789f452daaecf60ddee4c9df5dc6d5936d769e3d87c"
2015"checksum deunicode 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "850878694b7933ca4c9569d30a34b55031b9b139ee1fc7b94a527c4ef960d690" 2015"checksum deunicode 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "850878694b7933ca4c9569d30a34b55031b9b139ee1fc7b94a527c4ef960d690"
@@ -2076,7 +2076,7 @@ dependencies = [
2076"checksum num-derive 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "eafd0b45c5537c3ba526f79d3e75120036502bebacbb3f3220914067ce39dbf2" 2076"checksum num-derive 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "eafd0b45c5537c3ba526f79d3e75120036502bebacbb3f3220914067ce39dbf2"
2077"checksum num-integer 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)" = "b85e541ef8255f6cf42bbfe4ef361305c6c135d10919ecc26126c4e5ae94bc09" 2077"checksum num-integer 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)" = "b85e541ef8255f6cf42bbfe4ef361305c6c135d10919ecc26126c4e5ae94bc09"
2078"checksum num-traits 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "6ba9a427cfca2be13aa6f6403b0b7e7368fe982bfa16fccc450ce74c46cd9b32" 2078"checksum num-traits 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "6ba9a427cfca2be13aa6f6403b0b7e7368fe982bfa16fccc450ce74c46cd9b32"
2079"checksum num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1a23f0ed30a54abaa0c7e83b1d2d87ada7c3c23078d1d87815af3e3b6385fbba" 2079"checksum num_cpus 1.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "bcef43580c035376c0705c42792c294b66974abbfd2789b511784023f71f3273"
2080"checksum number_prefix 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "dbf9993e59c894e3c08aa1c2712914e9e6bf1fcbfc6bef283e2183df345a4fee" 2080"checksum number_prefix 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "dbf9993e59c894e3c08aa1c2712914e9e6bf1fcbfc6bef283e2183df345a4fee"
2081"checksum numtoa 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b8f8bdf33df195859076e54ab11ee78a1b208382d3a26ec40d142ffc1ecc49ef" 2081"checksum numtoa 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b8f8bdf33df195859076e54ab11ee78a1b208382d3a26ec40d142ffc1ecc49ef"
2082"checksum once_cell 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4c7118943e044e53fb4f0400ba153201e7b3e1ee61f137d47aa45367223caa19" 2082"checksum once_cell 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4c7118943e044e53fb4f0400ba153201e7b3e1ee61f137d47aa45367223caa19"
@@ -2091,10 +2091,10 @@ dependencies = [
2091"checksum pest_meta 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f249ea6de7c7b7aba92b4ff4376a994c6dbd98fd2166c89d5c4947397ecb574d" 2091"checksum pest_meta 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f249ea6de7c7b7aba92b4ff4376a994c6dbd98fd2166c89d5c4947397ecb574d"
2092"checksum petgraph 0.4.13 (registry+https://github.com/rust-lang/crates.io-index)" = "9c3659d1ee90221741f65dd128d9998311b0e40c5d3c23a62445938214abce4f" 2092"checksum petgraph 0.4.13 (registry+https://github.com/rust-lang/crates.io-index)" = "9c3659d1ee90221741f65dd128d9998311b0e40c5d3c23a62445938214abce4f"
2093"checksum proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)" = "cf3d2011ab5c909338f7887f4fc896d35932e29146c12c8d01da6b22a80ba759" 2093"checksum proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)" = "cf3d2011ab5c909338f7887f4fc896d35932e29146c12c8d01da6b22a80ba759"
2094"checksum proptest 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2afed8cbdc8a64b58a5c021757a782351ec1afee85be374872721c84d5da5d80" 2094"checksum proptest 0.9.4 (registry+https://github.com/rust-lang/crates.io-index)" = "cf147e022eacf0c8a054ab864914a7602618adba841d800a9a9868a5237a529f"
2095"checksum quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9274b940887ce9addde99c4eee6b5c44cc494b182b97e73dc8ffdcb3397fd3f0" 2095"checksum quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9274b940887ce9addde99c4eee6b5c44cc494b182b97e73dc8ffdcb3397fd3f0"
2096"checksum quote 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)" = "faf4799c5d274f3868a4aae320a0a182cbd2baee377b378f080e16a23e9d80db" 2096"checksum quote 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)" = "faf4799c5d274f3868a4aae320a0a182cbd2baee377b378f080e16a23e9d80db"
2097"checksum ra_vfs 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "70927388fff29059b93221d2bad05167788a41cbf1302504f9ed5918d0654ce8" 2097"checksum ra_vfs 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "fb7cd4e302032c5ab514f1c01c89727cd96fd950dd36f9ebee9252df45d9fb1a"
2098"checksum rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "6d71dacdc3c88c1fde3885a3be3fbab9f35724e6ce99467f7d9c5026132184ca" 2098"checksum rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "6d71dacdc3c88c1fde3885a3be3fbab9f35724e6ce99467f7d9c5026132184ca"
2099"checksum rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "556d3a1ca6600bfcbab7c7c91ccb085ac7fbbcd70e008a98742e7847f4f7bcef" 2099"checksum rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "556d3a1ca6600bfcbab7c7c91ccb085ac7fbbcd70e008a98742e7847f4f7bcef"
2100"checksum rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b" 2100"checksum rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b"
@@ -2105,17 +2105,17 @@ dependencies = [
2105"checksum rand_os 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7b75f676a1e053fc562eafbb47838d67c84801e38fc1ba459e8f180deabd5071" 2105"checksum rand_os 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7b75f676a1e053fc562eafbb47838d67c84801e38fc1ba459e8f180deabd5071"
2106"checksum rand_pcg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "abf9b09b01790cfe0364f52bf32995ea3c39f4d2dd011eac241d2914146d0b44" 2106"checksum rand_pcg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "abf9b09b01790cfe0364f52bf32995ea3c39f4d2dd011eac241d2914146d0b44"
2107"checksum rand_xorshift 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cbf7e9e623549b0e21f6e97cf8ecf247c1a8fd2e8a992ae265314300b2455d5c" 2107"checksum rand_xorshift 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cbf7e9e623549b0e21f6e97cf8ecf247c1a8fd2e8a992ae265314300b2455d5c"
2108"checksum rayon 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "373814f27745b2686b350dd261bfd24576a6fb0e2c5919b3a2b6005f820b0473" 2108"checksum rayon 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a4b0186e22767d5b9738a05eab7c6ac90b15db17e5b5f9bd87976dd7d89a10a4"
2109"checksum rayon-core 1.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b055d1e92aba6877574d8fe604a63c8b5df60f60e5982bf7ccbb1338ea527356" 2109"checksum rayon-core 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ebbe0df8435ac0c397d467b6cad6d25543d06e8a019ef3f6af3c384597515bd2"
2110"checksum rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2" 2110"checksum rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2"
2111"checksum redox_syscall 0.1.54 (registry+https://github.com/rust-lang/crates.io-index)" = "12229c14a0f65c4f1cb046a3b52047cdd9da1f4b30f8a39c5063c8bae515e252" 2111"checksum redox_syscall 0.1.54 (registry+https://github.com/rust-lang/crates.io-index)" = "12229c14a0f65c4f1cb046a3b52047cdd9da1f4b30f8a39c5063c8bae515e252"
2112"checksum redox_termios 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7e891cfe48e9100a70a3b6eb652fef28920c117d366339687bd5576160db0f76" 2112"checksum redox_termios 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7e891cfe48e9100a70a3b6eb652fef28920c117d366339687bd5576160db0f76"
2113"checksum regex 1.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "8f0a0bcab2fd7d1d7c54fa9eae6f43eddeb9ce2e7352f8518a814a4f65d60c58" 2113"checksum regex 1.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "0b2f0808e7d7e4fb1cb07feb6ff2f4bc827938f24f8c2e6a3beb7370af544bdd"
2114"checksum regex-syntax 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)" = "dcfd8681eebe297b81d98498869d4aae052137651ad7b96822f09ceb690d0a96" 2114"checksum regex-syntax 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)" = "9d76410686f9e3a17f06128962e0ecc5755870bb890c34820c7af7f1db2e1d48"
2115"checksum relative-path 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0e7790c7f1cc73d831d28dc5a7deb316a006e7848e6a7f467cdb10a0a9e0fb1c" 2115"checksum relative-path 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0e7790c7f1cc73d831d28dc5a7deb316a006e7848e6a7f467cdb10a0a9e0fb1c"
2116"checksum remove_dir_all 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3488ba1b9a2084d38645c4c08276a1752dcbf2c7130d74f1569681ad5d2799c5" 2116"checksum remove_dir_all 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "4a83fa3702a688b9359eccba92d153ac33fd2e8462f9e0e3fdf155239ea7792e"
2117"checksum ron 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "17f52a24414403f81528b67488cf8edc4eda977d3af1646bb6b106a600ead78f" 2117"checksum ron 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "17f52a24414403f81528b67488cf8edc4eda977d3af1646bb6b106a600ead78f"
2118"checksum rowan 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dbbf724d1e1f30669766ffc7e2490cd942d3b792367c12f9b00852b506b659f9" 2118"checksum rowan 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)" = "695dbacb8b8e077caf0cdeb65b0fe0c27bd99a9b7bf5f6467681c4c94cbe6133"
2119"checksum rustc-demangle 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)" = "a7f4dccf6f4891ebcc0c39f9b6eb1a83b9bf5d747cb439ec6fba4f3b977038af" 2119"checksum rustc-demangle 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)" = "a7f4dccf6f4891ebcc0c39f9b6eb1a83b9bf5d747cb439ec6fba4f3b977038af"
2120"checksum rustc-hash 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7540fc8b0c49f096ee9c961cda096467dce8084bec6bdca2fc83895fd9b28cb8" 2120"checksum rustc-hash 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7540fc8b0c49f096ee9c961cda096467dce8084bec6bdca2fc83895fd9b28cb8"
2121"checksum rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" 2121"checksum rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a"
@@ -2134,17 +2134,17 @@ dependencies = [
2134"checksum sha-1 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "23962131a91661d643c98940b20fcaffe62d776a823247be80a48fcb8b6fce68" 2134"checksum sha-1 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "23962131a91661d643c98940b20fcaffe62d776a823247be80a48fcb8b6fce68"
2135"checksum slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8" 2135"checksum slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8"
2136"checksum slug 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "b3bc762e6a4b6c6fcaade73e77f9ebc6991b676f88bb2358bddb56560f073373" 2136"checksum slug 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "b3bc762e6a4b6c6fcaade73e77f9ebc6991b676f88bb2358bddb56560f073373"
2137"checksum smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)" = "c4488ae950c49d403731982257768f48fada354a5203fe81f9bb6f43ca9002be" 2137"checksum smallvec 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)" = "ab606a9c5e214920bb66c458cd7be8ef094f813f20fe77a54cc7dbfff220d4b7"
2138"checksum smol_str 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "e6507d018aa8dfcaa08aaab587605591cd2109df66a921486a2220e2daf9fa29" 2138"checksum smol_str 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "e6507d018aa8dfcaa08aaab587605591cd2109df66a921486a2220e2daf9fa29"
2139"checksum stacker 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "fb79482f57cf598af52094ec4cc3b3c42499d3ce5bd426f2ac41515b7e57404b" 2139"checksum stacker 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "fb79482f57cf598af52094ec4cc3b3c42499d3ce5bd426f2ac41515b7e57404b"
2140"checksum strsim 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a" 2140"checksum strsim 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
2141"checksum superslice 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ab16ced94dbd8a46c82fd81e3ed9a8727dac2977ea869d217bcc4ea1f122e81f" 2141"checksum superslice 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ab16ced94dbd8a46c82fd81e3ed9a8727dac2977ea869d217bcc4ea1f122e81f"
2142"checksum syn 0.15.34 (registry+https://github.com/rust-lang/crates.io-index)" = "a1393e4a97a19c01e900df2aec855a29f71cf02c402e2f443b8d2747c25c5dbe" 2142"checksum syn 0.15.36 (registry+https://github.com/rust-lang/crates.io-index)" = "8b4f551a91e2e3848aeef8751d0d4eec9489b6474c720fd4c55958d8d31a430c"
2143"checksum synstructure 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)" = "02353edf96d6e4dc81aea2d8490a7e9db177bf8acb0e951c24940bf866cb313f" 2143"checksum synstructure 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)" = "02353edf96d6e4dc81aea2d8490a7e9db177bf8acb0e951c24940bf866cb313f"
2144"checksum tempfile 3.0.8 (registry+https://github.com/rust-lang/crates.io-index)" = "7dc4738f2e68ed2855de5ac9cdbe05c9216773ecde4739b2f095002ab03a13ef" 2144"checksum tempfile 3.0.8 (registry+https://github.com/rust-lang/crates.io-index)" = "7dc4738f2e68ed2855de5ac9cdbe05c9216773ecde4739b2f095002ab03a13ef"
2145"checksum tera 0.11.20 (registry+https://github.com/rust-lang/crates.io-index)" = "4b505279e19d8f7d24b1a9dc58327c9c36174b1a2c7ebdeac70792d017cb64f3" 2145"checksum tera 0.11.20 (registry+https://github.com/rust-lang/crates.io-index)" = "4b505279e19d8f7d24b1a9dc58327c9c36174b1a2c7ebdeac70792d017cb64f3"
2146"checksum teraron 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9a447d012fef5c222f4b11a98fcef2a7e347a57f28be9957c5c390ac9a0e41e0" 2146"checksum teraron 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9a447d012fef5c222f4b11a98fcef2a7e347a57f28be9957c5c390ac9a0e41e0"
2147"checksum termion 1.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dde0593aeb8d47accea5392b39350015b5eccb12c0d98044d856983d89548dea" 2147"checksum termion 1.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "6a8fb22f7cde82c8220e5aeacb3258ed7ce996142c77cba193f203515e26c330"
2148"checksum termios 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "72b620c5ea021d75a735c943269bb07d30c9b77d6ac6b236bc8b5c496ef05625" 2148"checksum termios 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "72b620c5ea021d75a735c943269bb07d30c9b77d6ac6b236bc8b5c496ef05625"
2149"checksum text_unit 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "e08bbcb7a3adbda0eb23431206b653bdad3d8dea311e72d36bf2215e27a42579" 2149"checksum text_unit 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "e08bbcb7a3adbda0eb23431206b653bdad3d8dea311e72d36bf2215e27a42579"
2150"checksum textwrap 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060" 2150"checksum textwrap 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060"
@@ -2168,11 +2168,11 @@ dependencies = [
2168"checksum unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc" 2168"checksum unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc"
2169"checksum url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a" 2169"checksum url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a"
2170"checksum url_serde 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "74e7d099f1ee52f823d4bdd60c93c3602043c728f5db3b97bdb548467f7bddea" 2170"checksum url_serde 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "74e7d099f1ee52f823d4bdd60c93c3602043c728f5db3b97bdb548467f7bddea"
2171"checksum utf8-ranges 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "796f7e48bef87609f7ade7e06495a87d5cd06c7866e6a5cbfceffc558a243737" 2171"checksum utf8-ranges 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "9d50aa7650df78abf942826607c62468ce18d9019673d4a2ebe1865dbb96ffde"
2172"checksum uuid 0.7.4 (registry+https://github.com/rust-lang/crates.io-index)" = "90dbc611eb48397705a6b0f6e917da23ae517e4d127123d2cf7674206627d32a" 2172"checksum uuid 0.7.4 (registry+https://github.com/rust-lang/crates.io-index)" = "90dbc611eb48397705a6b0f6e917da23ae517e4d127123d2cf7674206627d32a"
2173"checksum vec_map 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "05c78687fb1a80548ae3250346c3db86a80a7cdd77bda190189f2d0a0987c81a" 2173"checksum vec_map 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "05c78687fb1a80548ae3250346c3db86a80a7cdd77bda190189f2d0a0987c81a"
2174"checksum version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "914b1a6776c4c929a602fafd8bc742e06365d4bcbe48c30f9cca5824f70dc9dd" 2174"checksum version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "914b1a6776c4c929a602fafd8bc742e06365d4bcbe48c30f9cca5824f70dc9dd"
2175"checksum walkdir 2.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "9d9d7ed3431229a144296213105a390676cc49c9b6a72bd19f3176c98e129fa1" 2175"checksum walkdir 2.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "c7904a7e2bb3cdf0cf5e783f44204a85a37a93151738fa349f06680f59a98b45"
2176"checksum winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a" 2176"checksum winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a"
2177"checksum winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)" = "f10e386af2b13e47c89e7236a7a14a086791a2b88ebad6df9bf42040195cf770" 2177"checksum winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)" = "f10e386af2b13e47c89e7236a7a14a086791a2b88ebad6df9bf42040195cf770"
2178"checksum winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc" 2178"checksum winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc"
diff --git a/crates/ra_hir/src/code_model.rs b/crates/ra_hir/src/code_model.rs
index 6602d1220..10f975b31 100644
--- a/crates/ra_hir/src/code_model.rs
+++ b/crates/ra_hir/src/code_model.rs
@@ -519,9 +519,8 @@ pub struct Function {
519 pub(crate) id: FunctionId, 519 pub(crate) id: FunctionId,
520} 520}
521 521
522/// The declared signature of a function.
523#[derive(Debug, Clone, PartialEq, Eq)] 522#[derive(Debug, Clone, PartialEq, Eq)]
524pub struct FnSignature { 523pub struct FnData {
525 pub(crate) name: Name, 524 pub(crate) name: Name,
526 pub(crate) params: Vec<TypeRef>, 525 pub(crate) params: Vec<TypeRef>,
527 pub(crate) ret_type: TypeRef, 526 pub(crate) ret_type: TypeRef,
@@ -530,11 +529,11 @@ pub struct FnSignature {
530 pub(crate) has_self_param: bool, 529 pub(crate) has_self_param: bool,
531} 530}
532 531
533impl FnSignature { 532impl FnData {
534 pub(crate) fn fn_signature_query( 533 pub(crate) fn fn_data_query(
535 db: &(impl DefDatabase + AstDatabase), 534 db: &(impl DefDatabase + AstDatabase),
536 func: Function, 535 func: Function,
537 ) -> Arc<FnSignature> { 536 ) -> Arc<FnData> {
538 let src = func.source(db); 537 let src = func.source(db);
539 let name = src.ast.name().map(|n| n.as_name()).unwrap_or_else(Name::missing); 538 let name = src.ast.name().map(|n| n.as_name()).unwrap_or_else(Name::missing);
540 let mut params = Vec::new(); 539 let mut params = Vec::new();
@@ -569,7 +568,7 @@ impl FnSignature {
569 TypeRef::unit() 568 TypeRef::unit()
570 }; 569 };
571 570
572 let sig = FnSignature { name, params, ret_type, has_self_param }; 571 let sig = FnData { name, params, ret_type, has_self_param };
573 Arc::new(sig) 572 Arc::new(sig)
574 } 573 }
575 pub fn name(&self) -> &Name { 574 pub fn name(&self) -> &Name {
@@ -597,7 +596,7 @@ impl Function {
597 } 596 }
598 597
599 pub fn name(self, db: &impl HirDatabase) -> Name { 598 pub fn name(self, db: &impl HirDatabase) -> Name {
600 self.signature(db).name.clone() 599 self.data(db).name.clone()
601 } 600 }
602 601
603 pub(crate) fn body_source_map(self, db: &impl HirDatabase) -> Arc<BodySourceMap> { 602 pub(crate) fn body_source_map(self, db: &impl HirDatabase) -> Arc<BodySourceMap> {
@@ -612,8 +611,8 @@ impl Function {
612 db.type_for_def(self.into(), Namespace::Values) 611 db.type_for_def(self.into(), Namespace::Values)
613 } 612 }
614 613
615 pub fn signature(self, db: &impl HirDatabase) -> Arc<FnSignature> { 614 pub fn data(self, db: &impl HirDatabase) -> Arc<FnData> {
616 db.fn_signature(self) 615 db.fn_data(self)
617 } 616 }
618 617
619 pub fn infer(self, db: &impl HirDatabase) -> Arc<InferenceResult> { 618 pub fn infer(self, db: &impl HirDatabase) -> Arc<InferenceResult> {
@@ -670,8 +669,8 @@ impl Const {
670 self.id.module(db) 669 self.id.module(db)
671 } 670 }
672 671
673 pub fn signature(self, db: &impl HirDatabase) -> Arc<ConstSignature> { 672 pub fn data(self, db: &impl HirDatabase) -> Arc<ConstData> {
674 db.const_signature(self) 673 db.const_data(self)
675 } 674 }
676 675
677 pub fn infer(self, db: &impl HirDatabase) -> Arc<InferenceResult> { 676 pub fn infer(self, db: &impl HirDatabase) -> Arc<InferenceResult> {
@@ -696,14 +695,13 @@ impl Const {
696 } 695 }
697} 696}
698 697
699/// The declared signature of a const.
700#[derive(Debug, Clone, PartialEq, Eq)] 698#[derive(Debug, Clone, PartialEq, Eq)]
701pub struct ConstSignature { 699pub struct ConstData {
702 pub(crate) name: Name, 700 pub(crate) name: Name,
703 pub(crate) type_ref: TypeRef, 701 pub(crate) type_ref: TypeRef,
704} 702}
705 703
706impl ConstSignature { 704impl ConstData {
707 pub fn name(&self) -> &Name { 705 pub fn name(&self) -> &Name {
708 &self.name 706 &self.name
709 } 707 }
@@ -712,27 +710,27 @@ impl ConstSignature {
712 &self.type_ref 710 &self.type_ref
713 } 711 }
714 712
715 pub(crate) fn const_signature_query( 713 pub(crate) fn const_data_query(
716 db: &(impl DefDatabase + AstDatabase), 714 db: &(impl DefDatabase + AstDatabase),
717 konst: Const, 715 konst: Const,
718 ) -> Arc<ConstSignature> { 716 ) -> Arc<ConstData> {
719 let node = konst.source(db).ast; 717 let node = konst.source(db).ast;
720 const_signature_for(&*node) 718 const_data_for(&*node)
721 } 719 }
722 720
723 pub(crate) fn static_signature_query( 721 pub(crate) fn static_data_query(
724 db: &(impl DefDatabase + AstDatabase), 722 db: &(impl DefDatabase + AstDatabase),
725 konst: Static, 723 konst: Static,
726 ) -> Arc<ConstSignature> { 724 ) -> Arc<ConstData> {
727 let node = konst.source(db).ast; 725 let node = konst.source(db).ast;
728 const_signature_for(&*node) 726 const_data_for(&*node)
729 } 727 }
730} 728}
731 729
732fn const_signature_for<N: NameOwner + TypeAscriptionOwner>(node: &N) -> Arc<ConstSignature> { 730fn const_data_for<N: NameOwner + TypeAscriptionOwner>(node: &N) -> Arc<ConstData> {
733 let name = node.name().map(|n| n.as_name()).unwrap_or_else(Name::missing); 731 let name = node.name().map(|n| n.as_name()).unwrap_or_else(Name::missing);
734 let type_ref = TypeRef::from_ast_opt(node.ascribed_type()); 732 let type_ref = TypeRef::from_ast_opt(node.ascribed_type());
735 let sig = ConstSignature { name, type_ref }; 733 let sig = ConstData { name, type_ref };
736 Arc::new(sig) 734 Arc::new(sig)
737} 735}
738 736
@@ -746,8 +744,8 @@ impl Static {
746 self.id.module(db) 744 self.id.module(db)
747 } 745 }
748 746
749 pub fn signature(self, db: &impl HirDatabase) -> Arc<ConstSignature> { 747 pub fn data(self, db: &impl HirDatabase) -> Arc<ConstData> {
750 db.static_signature(self) 748 db.static_data(self)
751 } 749 }
752 750
753 /// Builds a resolver for code inside this item. 751 /// Builds a resolver for code inside this item.
diff --git a/crates/ra_hir/src/db.rs b/crates/ra_hir/src/db.rs
index c4dd54596..23c36014b 100644
--- a/crates/ra_hir/src/db.rs
+++ b/crates/ra_hir/src/db.rs
@@ -6,9 +6,9 @@ use ra_db::{SourceDatabase, salsa};
6 6
7use crate::{ 7use crate::{
8 HirFileId, MacroDefId, AstIdMap, ErasedFileAstId, Crate, Module, MacroCallLoc, 8 HirFileId, MacroDefId, AstIdMap, ErasedFileAstId, Crate, Module, MacroCallLoc,
9 Function, FnSignature, ExprScopes, TypeAlias, 9 Function, FnData, ExprScopes, TypeAlias,
10 Struct, Enum, StructField, 10 Struct, Enum, StructField,
11 Const, ConstSignature, Static, 11 Const, ConstData, Static,
12 DefWithBody, Trait, 12 DefWithBody, Trait,
13 ids, 13 ids,
14 nameres::{Namespace, ImportSourceMap, RawItems, CrateDefMap}, 14 nameres::{Namespace, ImportSourceMap, RawItems, CrateDefMap},
@@ -109,17 +109,17 @@ pub trait DefDatabase: SourceDatabase {
109 #[salsa::invoke(crate::generics::GenericParams::generic_params_query)] 109 #[salsa::invoke(crate::generics::GenericParams::generic_params_query)]
110 fn generic_params(&self, def: GenericDef) -> Arc<GenericParams>; 110 fn generic_params(&self, def: GenericDef) -> Arc<GenericParams>;
111 111
112 #[salsa::invoke(crate::FnSignature::fn_signature_query)] 112 #[salsa::invoke(crate::FnData::fn_data_query)]
113 fn fn_signature(&self, func: Function) -> Arc<FnSignature>; 113 fn fn_data(&self, func: Function) -> Arc<FnData>;
114 114
115 #[salsa::invoke(crate::type_alias::type_alias_data_query)] 115 #[salsa::invoke(crate::type_alias::type_alias_data_query)]
116 fn type_alias_data(&self, typ: TypeAlias) -> Arc<TypeAliasData>; 116 fn type_alias_data(&self, typ: TypeAlias) -> Arc<TypeAliasData>;
117 117
118 #[salsa::invoke(crate::ConstSignature::const_signature_query)] 118 #[salsa::invoke(crate::ConstData::const_data_query)]
119 fn const_signature(&self, konst: Const) -> Arc<ConstSignature>; 119 fn const_data(&self, konst: Const) -> Arc<ConstData>;
120 120
121 #[salsa::invoke(crate::ConstSignature::static_signature_query)] 121 #[salsa::invoke(crate::ConstData::static_data_query)]
122 fn static_signature(&self, konst: Static) -> Arc<ConstSignature>; 122 fn static_data(&self, konst: Static) -> Arc<ConstData>;
123 123
124 #[salsa::invoke(crate::lang_item::LangItems::lang_items_query)] 124 #[salsa::invoke(crate::lang_item::LangItems::lang_items_query)]
125 fn lang_items(&self, krate: Crate) -> Arc<LangItems>; 125 fn lang_items(&self, krate: Crate) -> Arc<LangItems>;
diff --git a/crates/ra_hir/src/lib.rs b/crates/ra_hir/src/lib.rs
index 2e99bdac8..f07a36926 100644
--- a/crates/ra_hir/src/lib.rs
+++ b/crates/ra_hir/src/lib.rs
@@ -75,9 +75,9 @@ pub use self::code_model::{
75 DefWithBody, 75 DefWithBody,
76 Module, ModuleDef, ModuleSource, 76 Module, ModuleDef, ModuleSource,
77 Struct, Union, Enum, EnumVariant, 77 Struct, Union, Enum, EnumVariant,
78 Function, FnSignature, 78 Function, FnData,
79 StructField, FieldSource, 79 StructField, FieldSource,
80 Static, Const, ConstSignature, 80 Static, Const, ConstData,
81 Trait, TypeAlias, MacroDef, Container, 81 Trait, TypeAlias, MacroDef, Container,
82 BuiltinType, 82 BuiltinType,
83 src::{Source, HasSource}, 83 src::{Source, HasSource},
diff --git a/crates/ra_hir/src/ty/infer.rs b/crates/ra_hir/src/ty/infer.rs
index 1ee40c70a..2c05ca734 100644
--- a/crates/ra_hir/src/ty/infer.rs
+++ b/crates/ra_hir/src/ty/infer.rs
@@ -27,7 +27,7 @@ use ra_prof::profile;
27use test_utils::tested_by; 27use test_utils::tested_by;
28 28
29use crate::{ 29use crate::{
30 Function, StructField, Path, Name, FnSignature, AdtDef, ConstSignature, HirDatabase, 30 Function, StructField, Path, Name, FnData, AdtDef, ConstData, HirDatabase,
31 DefWithBody, ImplItem, 31 DefWithBody, ImplItem,
32 type_ref::{TypeRef, Mutability}, 32 type_ref::{TypeRef, Mutability},
33 expr::{ 33 expr::{
@@ -59,9 +59,9 @@ pub fn infer_query(db: &impl HirDatabase, def: DefWithBody) -> Arc<InferenceResu
59 let mut ctx = InferenceContext::new(db, body, resolver); 59 let mut ctx = InferenceContext::new(db, body, resolver);
60 60
61 match def { 61 match def {
62 DefWithBody::Const(ref c) => ctx.collect_const_signature(&c.signature(db)), 62 DefWithBody::Const(ref c) => ctx.collect_const(&c.data(db)),
63 DefWithBody::Function(ref f) => ctx.collect_fn_signature(&f.signature(db)), 63 DefWithBody::Function(ref f) => ctx.collect_fn(&f.data(db)),
64 DefWithBody::Static(ref s) => ctx.collect_const_signature(&s.signature(db)), 64 DefWithBody::Static(ref s) => ctx.collect_const(&s.data(db)),
65 } 65 }
66 66
67 ctx.infer_body(); 67 ctx.infer_body();
@@ -509,8 +509,7 @@ impl<'a, D: HirDatabase> InferenceContext<'a, D> {
509 let item: crate::ModuleDef = ty.iterate_impl_items(self.db, krate, |item| { 509 let item: crate::ModuleDef = ty.iterate_impl_items(self.db, krate, |item| {
510 let matching_def: Option<crate::ModuleDef> = match item { 510 let matching_def: Option<crate::ModuleDef> = match item {
511 crate::ImplItem::Method(func) => { 511 crate::ImplItem::Method(func) => {
512 let sig = func.signature(self.db); 512 if segment.name == func.name(self.db) {
513 if segment.name == *sig.name() {
514 Some(func.into()) 513 Some(func.into())
515 } else { 514 } else {
516 None 515 None
@@ -518,8 +517,8 @@ impl<'a, D: HirDatabase> InferenceContext<'a, D> {
518 } 517 }
519 518
520 crate::ImplItem::Const(konst) => { 519 crate::ImplItem::Const(konst) => {
521 let sig = konst.signature(self.db); 520 let data = konst.data(self.db);
522 if segment.name == *sig.name() { 521 if segment.name == *data.name() {
523 Some(konst.into()) 522 Some(konst.into())
524 } else { 523 } else {
525 None 524 None
@@ -1283,18 +1282,18 @@ impl<'a, D: HirDatabase> InferenceContext<'a, D> {
1283 ty 1282 ty
1284 } 1283 }
1285 1284
1286 fn collect_const_signature(&mut self, signature: &ConstSignature) { 1285 fn collect_const(&mut self, data: &ConstData) {
1287 self.return_ty = self.make_ty(signature.type_ref()); 1286 self.return_ty = self.make_ty(data.type_ref());
1288 } 1287 }
1289 1288
1290 fn collect_fn_signature(&mut self, signature: &FnSignature) { 1289 fn collect_fn(&mut self, data: &FnData) {
1291 let body = Arc::clone(&self.body); // avoid borrow checker problem 1290 let body = Arc::clone(&self.body); // avoid borrow checker problem
1292 for (type_ref, pat) in signature.params().iter().zip(body.params()) { 1291 for (type_ref, pat) in data.params().iter().zip(body.params()) {
1293 let ty = self.make_ty(type_ref); 1292 let ty = self.make_ty(type_ref);
1294 1293
1295 self.infer_pat(*pat, &ty, BindingMode::default()); 1294 self.infer_pat(*pat, &ty, BindingMode::default());
1296 } 1295 }
1297 self.return_ty = self.make_ty(signature.ret_type()); 1296 self.return_ty = self.make_ty(data.ret_type());
1298 } 1297 }
1299 1298
1300 fn infer_body(&mut self) { 1299 fn infer_body(&mut self) {
diff --git a/crates/ra_hir/src/ty/lower.rs b/crates/ra_hir/src/ty/lower.rs
index 300616a53..cb494baf4 100644
--- a/crates/ra_hir/src/ty/lower.rs
+++ b/crates/ra_hir/src/ty/lower.rs
@@ -353,11 +353,10 @@ pub(crate) fn generic_defaults(db: &impl HirDatabase, def: GenericDef) -> Substs
353} 353}
354 354
355fn fn_sig_for_fn(db: &impl HirDatabase, def: Function) -> FnSig { 355fn fn_sig_for_fn(db: &impl HirDatabase, def: Function) -> FnSig {
356 let signature = def.signature(db); 356 let data = def.data(db);
357 let resolver = def.resolver(db); 357 let resolver = def.resolver(db);
358 let params = 358 let params = data.params().iter().map(|tr| Ty::from_hir(db, &resolver, tr)).collect::<Vec<_>>();
359 signature.params().iter().map(|tr| Ty::from_hir(db, &resolver, tr)).collect::<Vec<_>>(); 359 let ret = Ty::from_hir(db, &resolver, data.ret_type());
360 let ret = Ty::from_hir(db, &resolver, signature.ret_type());
361 FnSig::from_params_and_return(params, ret) 360 FnSig::from_params_and_return(params, ret)
362} 361}
363 362
@@ -371,18 +370,18 @@ fn type_for_fn(db: &impl HirDatabase, def: Function) -> Ty {
371 370
372/// Build the declared type of a const. 371/// Build the declared type of a const.
373fn type_for_const(db: &impl HirDatabase, def: Const) -> Ty { 372fn type_for_const(db: &impl HirDatabase, def: Const) -> Ty {
374 let signature = def.signature(db); 373 let data = def.data(db);
375 let resolver = def.resolver(db); 374 let resolver = def.resolver(db);
376 375
377 Ty::from_hir(db, &resolver, signature.type_ref()) 376 Ty::from_hir(db, &resolver, data.type_ref())
378} 377}
379 378
380/// Build the declared type of a static. 379/// Build the declared type of a static.
381fn type_for_static(db: &impl HirDatabase, def: Static) -> Ty { 380fn type_for_static(db: &impl HirDatabase, def: Static) -> Ty {
382 let signature = def.signature(db); 381 let data = def.data(db);
383 let resolver = def.resolver(db); 382 let resolver = def.resolver(db);
384 383
385 Ty::from_hir(db, &resolver, signature.type_ref()) 384 Ty::from_hir(db, &resolver, data.type_ref())
386} 385}
387 386
388/// Build the declared type of a static. 387/// Build the declared type of a static.
diff --git a/crates/ra_hir/src/ty/method_resolution.rs b/crates/ra_hir/src/ty/method_resolution.rs
index ad26d591c..46ec136bd 100644
--- a/crates/ra_hir/src/ty/method_resolution.rs
+++ b/crates/ra_hir/src/ty/method_resolution.rs
@@ -192,8 +192,8 @@ fn iterate_trait_method_candidates<T>(
192 let mut known_implemented = false; 192 let mut known_implemented = false;
193 for item in data.items() { 193 for item in data.items() {
194 if let TraitItem::Function(m) = *item { 194 if let TraitItem::Function(m) = *item {
195 let sig = m.signature(db); 195 let data = m.data(db);
196 if name.map_or(true, |name| sig.name() == name) && sig.has_self_param() { 196 if name.map_or(true, |name| data.name() == name) && data.has_self_param() {
197 if !known_implemented { 197 if !known_implemented {
198 let trait_ref = canonical_trait_ref(db, t, ty.clone()); 198 let trait_ref = canonical_trait_ref(db, t, ty.clone());
199 if db.implements(krate, trait_ref).is_none() { 199 if db.implements(krate, trait_ref).is_none() {
@@ -227,8 +227,8 @@ fn iterate_inherent_methods<T>(
227 for impl_block in impls.lookup_impl_blocks(&ty.value) { 227 for impl_block in impls.lookup_impl_blocks(&ty.value) {
228 for item in impl_block.items(db) { 228 for item in impl_block.items(db) {
229 if let ImplItem::Method(f) = item { 229 if let ImplItem::Method(f) = item {
230 let sig = f.signature(db); 230 let data = f.data(db);
231 if name.map_or(true, |name| sig.name() == name) && sig.has_self_param() { 231 if name.map_or(true, |name| data.name() == name) && data.has_self_param() {
232 if let Some(result) = callback(&ty.value, f) { 232 if let Some(result) = callback(&ty.value, f) {
233 return Some(result); 233 return Some(result);
234 } 234 }
diff --git a/crates/ra_ide_api/src/call_info.rs b/crates/ra_ide_api/src/call_info.rs
index bd08e183d..2948c646b 100644
--- a/crates/ra_ide_api/src/call_info.rs
+++ b/crates/ra_ide_api/src/call_info.rs
@@ -35,7 +35,7 @@ pub(crate) fn call_info(db: &RootDatabase, position: FilePosition) -> Option<Cal
35 35
36 // If we have a calling expression let's find which argument we are on 36 // If we have a calling expression let's find which argument we are on
37 let num_params = call_info.parameters().len(); 37 let num_params = call_info.parameters().len();
38 let has_self = function.signature(db).has_self_param(); 38 let has_self = function.data(db).has_self_param();
39 39
40 if num_params == 1 { 40 if num_params == 1 {
41 if !has_self { 41 if !has_self {
diff --git a/crates/ra_ide_api/src/completion/complete_dot.rs b/crates/ra_ide_api/src/completion/complete_dot.rs
index f26fd06b3..40bd1e75e 100644
--- a/crates/ra_ide_api/src/completion/complete_dot.rs
+++ b/crates/ra_ide_api/src/completion/complete_dot.rs
@@ -37,8 +37,8 @@ fn complete_fields(acc: &mut Completions, ctx: &CompletionContext, receiver: Ty)
37 37
38fn complete_methods(acc: &mut Completions, ctx: &CompletionContext, receiver: Ty) { 38fn complete_methods(acc: &mut Completions, ctx: &CompletionContext, receiver: Ty) {
39 ctx.analyzer.iterate_method_candidates(ctx.db, receiver, None, |_ty, func| { 39 ctx.analyzer.iterate_method_candidates(ctx.db, receiver, None, |_ty, func| {
40 let sig = func.signature(ctx.db); 40 let data = func.data(ctx.db);
41 if sig.has_self_param() { 41 if data.has_self_param() {
42 acc.add_function(ctx, func); 42 acc.add_function(ctx, func);
43 } 43 }
44 None::<()> 44 None::<()>
diff --git a/crates/ra_ide_api/src/completion/complete_path.rs b/crates/ra_ide_api/src/completion/complete_path.rs
index 99da24142..c14af593b 100644
--- a/crates/ra_ide_api/src/completion/complete_path.rs
+++ b/crates/ra_ide_api/src/completion/complete_path.rs
@@ -49,8 +49,8 @@ pub(super) fn complete_path(acc: &mut Completions, ctx: &CompletionContext) {
49 ty.iterate_impl_items(ctx.db, krate, |item| { 49 ty.iterate_impl_items(ctx.db, krate, |item| {
50 match item { 50 match item {
51 hir::ImplItem::Method(func) => { 51 hir::ImplItem::Method(func) => {
52 let sig = func.signature(ctx.db); 52 let data = func.data(ctx.db);
53 if !sig.has_self_param() { 53 if !data.has_self_param() {
54 acc.add_function(ctx, func); 54 acc.add_function(ctx, func);
55 } 55 }
56 } 56 }
diff --git a/crates/ra_ide_api/src/completion/presentation.rs b/crates/ra_ide_api/src/completion/presentation.rs
index f4ff4404b..973936736 100644
--- a/crates/ra_ide_api/src/completion/presentation.rs
+++ b/crates/ra_ide_api/src/completion/presentation.rs
@@ -98,13 +98,13 @@ impl Completions {
98 name: Option<String>, 98 name: Option<String>,
99 func: hir::Function, 99 func: hir::Function,
100 ) { 100 ) {
101 let sig = func.signature(ctx.db); 101 let data = func.data(ctx.db);
102 let name = name.unwrap_or_else(|| sig.name().to_string()); 102 let name = name.unwrap_or_else(|| data.name().to_string());
103 let ast_node = func.source(ctx.db).ast; 103 let ast_node = func.source(ctx.db).ast;
104 let detail = function_label(&ast_node); 104 let detail = function_label(&ast_node);
105 105
106 let mut builder = CompletionItem::new(CompletionKind::Reference, ctx.source_range(), name) 106 let mut builder = CompletionItem::new(CompletionKind::Reference, ctx.source_range(), name)
107 .kind(if sig.has_self_param() { 107 .kind(if data.has_self_param() {
108 CompletionItemKind::Method 108 CompletionItemKind::Method
109 } else { 109 } else {
110 CompletionItemKind::Function 110 CompletionItemKind::Function
@@ -115,10 +115,10 @@ impl Completions {
115 if ctx.use_item_syntax.is_none() && !ctx.is_call { 115 if ctx.use_item_syntax.is_none() && !ctx.is_call {
116 tested_by!(inserts_parens_for_function_calls); 116 tested_by!(inserts_parens_for_function_calls);
117 let snippet = 117 let snippet =
118 if sig.params().is_empty() || sig.has_self_param() && sig.params().len() == 1 { 118 if data.params().is_empty() || data.has_self_param() && data.params().len() == 1 {
119 format!("{}()$0", sig.name()) 119 format!("{}()$0", data.name())
120 } else { 120 } else {
121 format!("{}($0)", sig.name()) 121 format!("{}($0)", data.name())
122 }; 122 };
123 builder = builder.insert_snippet(snippet); 123 builder = builder.insert_snippet(snippet);
124 } 124 }
diff --git a/docs/user/README.md b/docs/user/README.md
index af8a99a47..d56330192 100644
--- a/docs/user/README.md
+++ b/docs/user/README.md
@@ -92,7 +92,13 @@ to load path and require it in `init.el`
92## Vim and NeoVim 92## Vim and NeoVim
93 93
94* Install coc.nvim by following the instructions at [coc.nvim] 94* Install coc.nvim by following the instructions at [coc.nvim]
95 - You will need nodejs installed.
96 - You may want to include some of the sample vim configurations [from here][coc-vim-conf]
97 - Note that if you use a plugin manager other than `vim-plug`, you may need to manually
98 checkout the `release` branch wherever your plugin manager cloned it. Otherwise you will
99 get errors about a missing javascript file.
95* Add rust analyzer using: [coc.nvim wiki][coc-wiki] 100* Add rust analyzer using: [coc.nvim wiki][coc-wiki]
101 - Use `:CocConfig` in command mode to edit the config file.
96 102
97```jsonc 103```jsonc
98 "languageserver": { 104 "languageserver": {
@@ -101,11 +107,26 @@ to load path and require it in `init.el`
101 "filetypes": ["rust"], 107 "filetypes": ["rust"],
102 "rootPatterns": ["Cargo.toml"] 108 "rootPatterns": ["Cargo.toml"]
103 } 109 }
110 }
111```
112
113For those not familiar with js, the whole file should be enclosed in `{` and `}`, with all of your config options in between. So for example, if rust-analyzer was your only language server, you could do the following:
114
115```jsonc
116{
117 "languageserver": {
118 "rust": {
119 "command": "ra_lsp_server",
120 "filetypes": ["rust"],
121 "rootPatterns": ["Cargo.toml"]
122 }
123 }
104} 124}
105``` 125```
106 126
107[coc.nvim]: https://github.com/neoclide/coc.nvim 127[coc.nvim]: https://github.com/neoclide/coc.nvim
108[coc-wiki]: https://github.com/neoclide/coc.nvim/wiki/Language-servers#rust 128[coc-wiki]: https://github.com/neoclide/coc.nvim/wiki/Language-servers#rust
129[coc-vim-conf]: https://github.com/neoclide/coc.nvim/#example-vim-configuration
109 130
110 131
111## Sublime Text 3 132## Sublime Text 3