aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAleksey Kladov <[email protected]>2019-01-26 16:39:31 +0000
committerAleksey Kladov <[email protected]>2019-01-26 16:39:31 +0000
commit6f862a670439a0ca1a4b78c02569ce6ecdffdf53 (patch)
tree99a33f7028df8e3c653339ca83f753c8fa1f3f0c
parenta8d32c4d1ae4b3e4276f7a97b6c6e5f95f91e67a (diff)
:arrow_up: rowan
The new rowan uses arena allocator for red nodes which helps slightly (5% on std completion test) with performance but should help quite a bit with avoiding memory fragmentation.
-rw-r--r--Cargo.lock13
-rw-r--r--crates/ra_syntax/Cargo.toml2
2 files changed, 11 insertions, 4 deletions
diff --git a/Cargo.lock b/Cargo.lock
index db09967ba..b3fa7354d 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -194,6 +194,11 @@ dependencies = [
194] 194]
195 195
196[[package]] 196[[package]]
197name = "colosseum"
198version = "0.2.2"
199source = "registry+https://github.com/rust-lang/crates.io-index"
200
201[[package]]
197name = "console" 202name = "console"
198version = "0.7.5" 203version = "0.7.5"
199source = "registry+https://github.com/rust-lang/crates.io-index" 204source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -986,7 +991,7 @@ dependencies = [
986 "itertools 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", 991 "itertools 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
987 "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", 992 "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
988 "ra_text_edit 0.1.0", 993 "ra_text_edit 0.1.0",
989 "rowan 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", 994 "rowan 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
990 "smol_str 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", 995 "smol_str 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
991 "test_utils 0.1.0", 996 "test_utils 0.1.0",
992 "text_unit 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", 997 "text_unit 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1213,9 +1218,10 @@ dependencies = [
1213 1218
1214[[package]] 1219[[package]]
1215name = "rowan" 1220name = "rowan"
1216version = "0.3.2" 1221version = "0.3.3"
1217source = "registry+https://github.com/rust-lang/crates.io-index" 1222source = "registry+https://github.com/rust-lang/crates.io-index"
1218dependencies = [ 1223dependencies = [
1224 "colosseum 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
1219 "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", 1225 "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
1220 "smol_str 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", 1226 "smol_str 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
1221 "text_unit 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", 1227 "text_unit 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1839,6 +1845,7 @@ dependencies = [
1839"checksum clap 2.32.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b957d88f4b6a63b9d70d5f454ac8011819c6efa7727858f458ab71c756ce2d3e" 1845"checksum clap 2.32.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b957d88f4b6a63b9d70d5f454ac8011819c6efa7727858f458ab71c756ce2d3e"
1840"checksum clicolors-control 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "73abfd4c73d003a674ce5d2933fca6ce6c42480ea84a5ffe0a2dc39ed56300f9" 1846"checksum clicolors-control 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "73abfd4c73d003a674ce5d2933fca6ce6c42480ea84a5ffe0a2dc39ed56300f9"
1841"checksum cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f" 1847"checksum cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f"
1848"checksum colosseum 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "370c83b49aedf022ee27942e8ae1d9de1cf40dc9653ee6550e4455d08f6406f9"
1842"checksum console 0.7.5 (registry+https://github.com/rust-lang/crates.io-index)" = "2bf3720d3f3fc30b721ef1ae54e13af3264af4af39dc476a8de56a6ee1e2184b" 1849"checksum console 0.7.5 (registry+https://github.com/rust-lang/crates.io-index)" = "2bf3720d3f3fc30b721ef1ae54e13af3264af4af39dc476a8de56a6ee1e2184b"
1843"checksum crossbeam-channel 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "137bc235f622ffaa0428e3854e24acb53291fc0b3ff6fb2cb75a8be6fb02f06b" 1850"checksum crossbeam-channel 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "137bc235f622ffaa0428e3854e24acb53291fc0b3ff6fb2cb75a8be6fb02f06b"
1844"checksum crossbeam-deque 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f739f8c5363aca78cfb059edf753d8f0d36908c348f3d8d1503f03d8b75d9cf3" 1851"checksum crossbeam-deque 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f739f8c5363aca78cfb059edf753d8f0d36908c348f3d8d1503f03d8b75d9cf3"
@@ -1937,7 +1944,7 @@ dependencies = [
1937"checksum relative-path 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0e7790c7f1cc73d831d28dc5a7deb316a006e7848e6a7f467cdb10a0a9e0fb1c" 1944"checksum relative-path 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0e7790c7f1cc73d831d28dc5a7deb316a006e7848e6a7f467cdb10a0a9e0fb1c"
1938"checksum remove_dir_all 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3488ba1b9a2084d38645c4c08276a1752dcbf2c7130d74f1569681ad5d2799c5" 1945"checksum remove_dir_all 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3488ba1b9a2084d38645c4c08276a1752dcbf2c7130d74f1569681ad5d2799c5"
1939"checksum ron 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d9cb28ade964585205aaca1f3d41a6297f72e1ad097b49c4bbde033ef86b38d7" 1946"checksum ron 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d9cb28ade964585205aaca1f3d41a6297f72e1ad097b49c4bbde033ef86b38d7"
1940"checksum rowan 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "acefc6f0bfd48f98b1d4424bf53c6b1c9dd379d69376e862ba3c44d29773602c" 1947"checksum rowan 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "74d41f779e2c893339e34bebf035652c58214823cd412550111886c06632f89d"
1941"checksum rustc-demangle 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "adacaae16d02b6ec37fdc7acfcddf365978de76d1983d3ee22afc260e1ca9619" 1948"checksum rustc-demangle 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "adacaae16d02b6ec37fdc7acfcddf365978de76d1983d3ee22afc260e1ca9619"
1942"checksum rustc-hash 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7540fc8b0c49f096ee9c961cda096467dce8084bec6bdca2fc83895fd9b28cb8" 1949"checksum rustc-hash 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7540fc8b0c49f096ee9c961cda096467dce8084bec6bdca2fc83895fd9b28cb8"
1943"checksum rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" 1950"checksum rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a"
diff --git a/crates/ra_syntax/Cargo.toml b/crates/ra_syntax/Cargo.toml
index c50dc6c67..0ec8492aa 100644
--- a/crates/ra_syntax/Cargo.toml
+++ b/crates/ra_syntax/Cargo.toml
@@ -13,7 +13,7 @@ unicode-xid = "0.1.0"
13itertools = "0.8.0" 13itertools = "0.8.0"
14drop_bomb = "0.1.4" 14drop_bomb = "0.1.4"
15parking_lot = "0.7.0" 15parking_lot = "0.7.0"
16rowan = "0.3.2" 16rowan = "0.3.3"
17 17
18# ideally, `serde` should be enabled by `ra_lsp_serder`, but we enable it here 18# ideally, `serde` should be enabled by `ra_lsp_serder`, but we enable it here
19# to reduce number of compilations 19# to reduce number of compilations