aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_hir_def/src
Commit message (Collapse)AuthorAgeFilesLines
* Switch to ungrammar from ast_srcAleksey Kladov2020-07-291-1/+1
| | | | | | | | | | | | | | | | | | The primary advantage of ungrammar is that it (eventually) allows one to describe concrete syntax tree structure -- with alternatives and specific sequence of tokens & nodes. That should be re-usable for: * generate `make` calls * Rust reference * Hypothetical parser's evented API We loose doc comments for the time being unfortunately. I don't think we should add support for doc comments to ungrammar -- they'll make grammar file hard to read. We might supply docs as out-of band info, or maybe just via a reference, but we'll think about that once things are no longer in flux
* Cleanup CFG APIAleksey Kladov2020-07-231-3/+6
|
* Check that visibility upgrade path is hitJonas Schievink2020-07-222-4/+8
|
* Support `Trait as _` importsJonas Schievink2020-07-215-26/+244
|
* SimplifyAleksey Kladov2020-07-202-11/+11
|
* Remove insta for ra_hir_defAleksey Kladov2020-07-172-163/+169
|
* Rewrite def map tests from insta to expectAleksey Kladov2020-07-175-1938/+1821
| | | | Those indentation markers are annoying...
* Semantical call infoAleksey Kladov2020-07-161-1/+9
|
* Remove TypeCtor interningFlorian Diebold2020-07-151-4/+4
| | | | Our TypeCtor and Chalk's TypeName match now!
* Cleanup limitsAleksey Kladov2020-07-151-7/+7
|
* Check cancellation when updating imports recursivelyAleksey Kladov2020-07-151-0/+1
| | | | | For winapi, this takes a lot of CPU time without doing queries and causes the main event loop to stall on cancellation.
* Micro-optimize updateAleksey Kladov2020-07-151-5/+6
|
* Update ItemTree snapshotsJonas Schievink2020-07-141-12/+12
|
* Thread varargs through r-aJonas Schievink2020-07-144-3/+22
|
* ItemTree: Lower tuple types despite invalid typeJonas Schievink2020-07-141-7/+6
|
* Guard against infinite macro expansionsAleksey Kladov2020-07-142-0/+29
| | | | closes #4463
* Don't copy-paste `impl_froms` into every crateAleksey Kladov2020-07-131-30/+15
|
* Rewrite item_tree tests to expectAleksey Kladov2020-07-111-105/+109
| | | | insta review wouldn't update the test, so ...
* Extern fns are implicitly unsafeAleksey Kladov2020-07-111-0/+1
| | | | closes #4865
* Bump macro recursion limit in releaseAleksey Kladov2020-07-111-2/+8
|
* More tight recursion limit when expanding macros in function bodiesAleksey Kladov2020-07-111-6/+48
| | | | | | | | | | | cc #4944 cc #5317 This doesn't fully close #4944 -- looks like we hit SO in syntax highlighting, when we use `Semantics::expand_macro`. Seems like we need to place expansion limit on the macro itself (store it as a part of MacroCallId?)!
* Goto type definition works for selfAleksey Kladov2020-07-101-0/+5
|
* Re-enable IDE features for incomplete impl blocsAleksey Kladov2020-07-091-2/+3
|
* Remove relative_path dependencyAleksey Kladov2020-07-081-29/+87
|
* Switch to fully dynamically dispatched salsaAleksey Kladov2020-07-072-15/+15
| | | | This improves compile times quite a bit
* Use SmolStrJonas Schievink2020-07-021-3/+4
|
* Fix testsJonas Schievink2020-07-021-1/+27
|
* Record and suggest trait items via ImportMapJonas Schievink2020-07-021-8/+39
|
* ItemTree: Lower fields despite invalid typeJonas Schievink2020-07-011-1/+1
|
* Remove `entries_without_primitives`Jonas Schievink2020-06-302-11/+3
|
* Simplify entry API usageJonas Schievink2020-06-301-21/+12
|
* Reorder importsJonas Schievink2020-06-301-1/+2
|
* Split namespace maps in `ItemScope`Jonas Schievink2020-06-301-34/+79
| | | | Reduces memory usage of the CrateDefMap query by ~130 MB on r-a.
* Cleanup changes leftover from previous tracking attemptPaul Daniel Faria2020-06-271-14/+16
|
* Remove track_parent and parent_map, replace with simple walk in missign ↵Paul Daniel Faria2020-06-272-272/+98
| | | | unsafe validator
* Fix issues caused during rebasePaul Daniel Faria2020-06-271-45/+63
|
* unsafe: Clean up, improve tracking, add debug_assertPaul Daniel Faria2020-06-272-81/+158
| | | | | | Move unsafe_expressions to unsafe_validation.rs, replace vec tracking of child exprs with inline macro, add debug assert to ensure tracked children match walked children exactly
* Track expr parents during lowering, use parent map when checking if unsafe ↵Paul Daniel Faria2020-06-272-88/+165
| | | | exprs are within unsafe blocks
* Rename Expr::UnsafeBlock to Expr::UnsafePaul Daniel Faria2020-06-272-3/+3
|
* Track unsafe blocks, don't trigger missing unsafe diagnostic when unsafe ↵Paul Daniel Faria2020-06-272-2/+9
| | | | exprs within unsafe block
* Merge #5033bors[bot]2020-06-273-20/+198
|\ | | | | | | | | | | | | | | 5033: Order of glob imports should not affect import shadowing r=Nashenas88 a=Nashenas88 Fixes #5032 Co-authored-by: Paul Daniel Faria <[email protected]>
| * Replace simple is_named with matches macroPaul Daniel Faria2020-06-271-10/+1
| |
| * Remove comment that's no longer validPaul Daniel Faria2020-06-261-2/+0
| |
| * Split glob import map to per-ns, switch ExprCollector to use a simpler push_resPaul Daniel Faria2020-06-263-33/+64
| |
| * Track import type outside of , use enum rather than bool to improve readabilityPaul Daniel Faria2020-06-254-40/+73
| |
| * Revert resolution of all glob imports first, replace with tracking of glob ↵Paul Daniel Faria2020-06-254-49/+119
| | | | | | | | imports and shadowing when more specific
| * Order of glob imports should not affect import shadowingPaul Daniel Faria2020-06-252-16/+71
| |
* | Make find_inner_item fallibleJonas Schievink2020-06-262-14/+28
| | | | | | | | | | The ItemTree does not collect incomplete items, such as traits with no name, so the (malformed) AST node might have no corresponding item.
* | find_inner_item: more detailed panic messageJonas Schievink2020-06-261-1/+7
| |
* | Simplify inner item loweringJonas Schievink2020-06-261-61/+30
| |