aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_hir_def/src/nameres
Commit message (Collapse)AuthorAgeFilesLines
* Provide more complete AST accessors to support usage in rustcLuca Barbieri2020-04-091-0/+4
|
* Merge #3727bors[bot]2020-03-261-4/+12
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | 3727: Introduce ra_proc_macro r=matklad a=edwin0cheng This PR implemented: 1. Reading dylib path of proc-macro crate from cargo check , similar to how `OUTDIR` is obtained. 2. Added a new crate `ra_proc_macro` and implement the foot-work for reading result from external proc-macro expander. 3. Added a struct `ProcMacroClient` , which will be responsible to the client side communication to the External process. Co-authored-by: Edwin Cheng <[email protected]>
| * Remove deps on tt_mbeEdwin Cheng2020-03-261-3/+3
| |
| * Add ProcMacroClientEdwin Cheng2020-03-251-5/+13
| |
* | Get rid of ItemOrMacroAleksey Kladov2020-03-261-5/+6
| |
* | Minor incremental tests cleanupAleksey Kladov2020-03-261-8/+8
|/
* Remove collect proc_macro definitionsEdwin Cheng2020-03-251-23/+23
|
* Rename to CustomDeriveEdwin Cheng2020-03-251-1/+1
|
* Add basic custom derive loweringEdwin Cheng2020-03-251-7/+53
|
* Simplify Arena to use a generic indexAleksey Kladov2020-03-193-52/+46
|
* Check that no file contains trailing wsAleksey Kladov2020-03-174-107/+107
| | | | rustfmt allows trailing spaces in string literals unfortunately.
* Use `dyn Trait` for working with databseAleksey Kladov2020-03-164-26/+16
| | | | | | | It improves compile time in `--release` mode quite a bit, it doesn't really slow things down and, conceptually, it seems closer to what we want the physical architecture to look like (we don't want to monomorphise EVERYTHING in a single leaf crate).
* Protect against infinite macro expansion in def collectorFlorian Diebold2020-03-131-9/+39
| | | | | | | | | There was a test for this, but it wasn't actually working because the first recursive expansion failed. (The comma...) Even with this limit, that test (when fixed) still takes some time to pass because of the exponential growth of the expansions, so I disabled it and added a different one without growth.
* fix issue 3444Josh Mcguigan2020-03-131-0/+22
|
* Minimize APIAleksey Kladov2020-03-091-1/+1
|
* Use `Index` for CrateGraphAleksey Kladov2020-03-091-3/+3
|
* Less abstract CrateData apiKirill Bulatov2020-03-091-4/+3
|
* Merge #3384bors[bot]2020-03-011-0/+36
|\ | | | | | | | | | | | | | | | | | | | | | | 3384: fix #2377 super::super::* r=flodiebold a=JoshMcguigan Thanks @matklad for the detailed explanation on #2377. I believe this fixes it. One thing I'm not sure about is you said the fix would involve changing `crates/ra_hir_def/src/path/lower/lower.rs`, but I only changed `crates/ra_hir_def/src/path/lower/lower_use.rs`. I'm not sure what kind of test code I'd have to write to expose the issue in `lower.rs`, but I'd be happy to add it if you are able to provide additional guidance. closes #2377 Co-authored-by: Josh Mcguigan <[email protected]>
| * fix #2377 super::super::*Josh Mcguigan2020-03-011-0/+36
| |
* | Rename ast::ImplBlock -> ast::ImplDefAleksey Kladov2020-02-291-3/+3
|/
* Refactor how builtins are resolvedFlorian Diebold2020-02-211-30/+33
| | | | This fixes autocompletion suggesting e.g. self::usize.
* Run cargo +nightly fix --clippy -Z unstable-optionsKirill Bulatov2020-02-182-5/+3
|
* Introduce AsMacroCall traitEdwin Cheng2020-02-171-37/+40
|
* Bump crate resolution limit for large projectsBenjamin Brittain2020-02-141-1/+1
| | | | Change-Id: Ie0221e5bcfd1779cd5e241f96b4489e5bd3854c1
* include requested changeszombiefungus2020-02-022-15/+12
|
* add new ImportAlias enum to differentiate no alias from an _ aliaszombiefungus2020-02-022-3/+17
|
* Publicize debug printing of CrateDefMapAleksey Kladov2020-01-281-41/+2
|
* Fix various names, e.g. Iterator not resolving in core preludeFlorian Diebold2020-01-112-1/+46
| | | | | | | | | | | | | Basically, `Iterator` is re-exported via several steps, which happened to not be resolved yet when we got to the prelude import, but since the name resolved to the reexport from `core::iter` (just to no actual items), we gave up trying to resolve it further. Maybe part of the problem is that we can have `PartialResolvedImport::Unresolved` or `PartialResolvedImport::Indeterminate` with `None` in all namespaces, and handle them differently. Fixes #2683.
* Remove a duplicate line in `collect_defs`Michal Terepeta2020-01-031-1/+0
| | | | Signed-off-by: Michal Terepeta <[email protected]>
* visible_from -> is_visible_fromFlorian Diebold2019-12-271-3/+3
|
* Fix cross-crate glob privacy handlingFlorian Diebold2019-12-262-6/+21
|
* Rename ResolvedVisibility -> VisibilityFlorian Diebold2019-12-262-27/+22
|
* Rename Visibility -> RawVisibilityFlorian Diebold2019-12-263-14/+14
|
* Handle privacy for modulesFlorian Diebold2019-12-263-11/+36
|
* Take visibility into account for glob importsFlorian Diebold2019-12-264-29/+139
|
* Keep track of visibility during def collectionFlorian Diebold2019-12-262-23/+55
|
* Collect visibility of items during nameresFlorian Diebold2019-12-262-3/+41
|
* Rudimentary name resolution for local itemsAleksey Kladov2019-12-221-1/+1
|
* SimplifyAleksey Kladov2019-12-221-10/+4
|
* RefactorAleksey Kladov2019-12-221-5/+4
|
* SimplifyAleksey Kladov2019-12-223-25/+16
|
* Remove unused parametersAleksey Kladov2019-12-221-22/+12
|
* Remove import fieldAleksey Kladov2019-12-221-8/+6
|
* Separate defs from importsAleksey Kladov2019-12-221-0/+2
|
* Refactor PerNs constructionAleksey Kladov2019-12-221-48/+33
|
* More profilingAleksey Kladov2019-12-211-0/+2
|
* Move LocalImportIdAleksey Kladov2019-12-212-14/+15
|
* Remove import source mapAleksey Kladov2019-12-211-44/+12
|
* Remove import from resolutionAleksey Kladov2019-12-211-5/+5
|
* Remove imports from hirAleksey Kladov2019-12-211-6/+0
|