aboutsummaryrefslogtreecommitdiff
path: root/crates/vfs
Commit message (Collapse)AuthorAgeFilesLines
* Deny unreachable-pubAleksey Kladov2020-11-021-1/+1
| | | | | | | | It's very useful when `pub` is equivalent to "this is crate's public API", let's enforce this! Ideally, we should enforce it for local `cargo test`, and only during CI, but that needs https://github.com/rust-lang/cargo/issues/5034.
* Rename the method to avoid false promisesKirill Bulatov2020-09-091-12/+10
|
* Add VirtualPath testsKirill Bulatov2020-09-091-3/+38
|
* Move rust-related logic from vfs to base_db levelKirill Bulatov2020-09-091-60/+5
|
* Properly handle special cases (binaries, mod.rs)Kirill Bulatov2020-09-091-26/+58
|
* Implement file name & extension retrieval method for VirtualPathKirill Bulatov2020-09-091-2/+20
|
* Small refactoringKirill Bulatov2020-09-091-11/+11
|
* Happy path implementedKirill Bulatov2020-09-092-13/+17
|
* Properly use FileSet APIKirill Bulatov2020-09-092-28/+41
|
* Better APIKirill Bulatov2020-09-092-14/+29
|
* First steps for mod<|> completionKirill Bulatov2020-09-091-2/+25
|
* Add description for crates that will be publishedPavan Kumar Sunkara2020-08-241-0/+1
|
* Add version to deps in cargo.tomlPavan Kumar Sunkara2020-08-241-1/+1
|
* Sophisticate Windows path encodingArmin Sander2020-08-141-7/+132
|
* Rename ra_ide -> ideAleksey Kladov2020-08-131-2/+2
|
* Add one more testAleksey Kladov2020-07-261-21/+50
|
* Expose package roots more directlyAleksey Kladov2020-07-211-1/+1
|
* SimplifyAleksey Kladov2020-07-201-9/+5
|
* Simplify exclusion logicAleksey Kladov2020-07-181-9/+73
|
* Minor, push allocations downAleksey Kladov2020-07-142-3/+3
|
* Add a license field to all the cratesYuki Okushi2020-07-141-0/+1
|
* no doctestsAleksey Kladov2020-07-111-0/+3
|
* Optimize VFS processingAleksey Kladov2020-07-101-1/+1
|
* Also reload when adding new examples, tests, etcAleksey Kladov2020-07-101-1/+1
|
* Replace ad hocery with scienceAleksey Kladov2020-07-073-56/+81
|
* Fix symbol search in salsaAleksey Kladov2020-07-071-19/+90
| | | | | | | | | | | | | | | | | | | | | | Previous solution for binning paths into disjoint directories was simple and fast -- just a single binary search. Unfortunatelly, it wasn't coorrect: if the ditr are /d /d/a /d/c then partitioning the file /d/b/lib.rs won't pick /d as a correct directory. The correct solution here is a trie, but it requires exposing path components. So, we use a poor man's substitution -- a *vector* of sorted paths, such that each bucket is prefix-free closes #5246
* FileSetConfig works with empty set of rootsAleksey Kladov2020-07-011-1/+1
| | | | Closes #5139
* Make VFS join methods fallibleJonas Schievink2020-06-262-8/+10
|
* Less error-prone namingAleksey Kladov2020-06-241-4/+4
|
* Cleanup project.json deserializationAleksey Kladov2020-06-241-2/+2
|
* Make Debug less verbose for VfsPath and use Display in analysis-statsLaurențiu Nicola2020-06-241-2/+17
|
* New VFSAleksey Kladov2020-06-236-134/+67
|
* Speedup VFS::partitionAleksey Kladov2020-06-192-9/+26
| | | | | | | | | | The task of `partition` function is to bin the flat list of paths into disjoint filesets. Ideally, it should be incremental -- each new file should be added to a specific fileset. However, preliminary measurnments show that it is actually fast enough if we just optimize this to use a binary search instead of a linear scan.
* New VFS APIAleksey Kladov2020-06-167-0/+508