aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_hir/src
Commit message (Collapse)AuthorAgeFilesLines
* Merge #2114bors[bot]2019-10-299-319/+42
|\ | | | | | | | | | | | | | | 2114: Move macro expansion to a separate crate r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * cleanupAleksey Kladov2019-10-292-9/+4
| |
| * remove not that useful indirectionAleksey Kladov2019-10-293-4/+4
| |
| * remove empty moduleAleksey Kladov2019-10-292-15/+6
| |
| * reduce visibilityAleksey Kladov2019-10-292-2/+2
| |
| * flatten hir_expandAleksey Kladov2019-10-292-4/+2
| |
| * rename hir_def -> hir_expandAleksey Kladov2019-10-293-3/+3
| |
| * move expansion-related code to a separate crateAleksey Kladov2019-10-296-303/+42
| |
* | Upgrade Chalk, make use of TypeName::Error variantFlorian Diebold2019-10-291-8/+7
|/
* start ra_hir_def crateAleksey Kladov2019-10-297-131/+39
|
* weaken requirements of AstDefAleksey Kladov2019-10-281-23/+23
|
* remove relative_path_buf workaroundAleksey Kladov2019-10-271-10/+3
| | | | The upstream problem was fixed with the change to 1.0
* Upgrade Chalk (without using its dyn/impl Trait support)Florian Diebold2019-10-262-43/+73
|
* restore assertAleksey Kladov2019-10-231-0/+1
|
* classify module from declarationEkaterina Babshukova2019-10-221-1/+0
|
* replace trait by a bunch of functionsEkaterina Babshukova2019-10-221-58/+2
|
* return Declaration from classify_name_refEkaterina Babshukova2019-10-221-1/+39
|
* replace a chain of `if let` by macroEkaterina Babshukova2019-10-221-39/+1
|
* initial classify_nameEkaterina Babshukova2019-10-221-2/+58
|
* Bump depsLaurențiu Nicola2019-10-172-4/+10
|
* minor cleanupAleksey Kladov2019-10-163-33/+38
|
* Merge #2008bors[bot]2019-10-144-43/+27
|\ | | | | | | | | | | | | | | 2008: Prepare SourceDatabase API for lazy file loading r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * Prepare SourceDatabase API for lazy file loadingAleksey Kladov2019-10-144-43/+27
| |
* | Merge #2006bors[bot]2019-10-147-50/+49
|\ \ | |/ |/| | | | | | | | | | | 2006: Improvements around `Arc<[T]>` r=matklad a=sinkuu First commit tries to avoid cloning `Arc<[T]>` to a temporary `Vec` for mutating it, if there are no other strong references. Second commit utilizes [`FromIterator for Arc<[T]>`](https://doc.rust-lang.org/std/sync/struct.Arc.html#impl-FromIterator%3CT%3E) instead of `.collect::<Vec<_>>().into()` to avoid allocation in `From<Vec<T>> for Arc<[T]>`. Co-authored-by: Shotaro Yamada <[email protected]>
| * make_mut_sliceShotaro Yamada2019-10-144-42/+23
| |
| * import make_mut_arc_sliceShotaro Yamada2019-10-141-1/+2
| |
| * `.collect()` directly into `Arc<[T]>`Shotaro Yamada2019-10-144-25/+18
| |
| * Avoid cloning `Arc<[T]>` into a vec if possibleShotaro Yamada2019-10-145-31/+55
| |
* | remove one more dependency on source rootsAleksey Kladov2019-10-141-5/+3
|/
* Split up infer.rs furtherFlorian Diebold2019-10-124-1135/+1192
| | | | | | - coercion logic goes to `coerce.rs` - expression inference goes to `expr.rs` - pattern inference goes to `pat.rs`
* Merge #1989bors[bot]2019-10-111-24/+34
|\ | | | | | | | | | | | | | | 1989: Chalk update to simplified IR r=flodiebold a=kjeremy Co-authored-by: kjeremy <[email protected]>
| * Chalk update to simplified IRkjeremy2019-10-101-24/+34
| |
* | Merge #1994bors[bot]2019-10-113-45/+37
|\ \ | | | | | | | | | | | | | | | | | | | | | 1994: remove last traces of source roots from hir r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * | remove last traces of source roots from hirAleksey Kladov2019-10-113-45/+37
| |/
* / Remove `as_original_file`Shotaro Yamada2019-10-101-10/+0
|/
* don't special case macro_useAleksey Kladov2019-10-103-23/+13
|
* don't special case path attrAleksey Kladov2019-10-103-34/+31
|
* simplify a bitAleksey Kladov2019-10-102-10/+13
|
* simplify some testsAleksey Kladov2019-10-101-90/+24
|
* Refactor and fix some more edge cases around name resolutionAleksey Kladov2019-10-104-192/+209
|
* add `module` methodsEkaterina Babshukova2019-10-092-2/+42
|
* add <> for type aliases as wellAleksey Kladov2019-10-091-1/+1
|
* refactorAleksey Kladov2019-10-081-11/+9
|
* Merge #1969bors[bot]2019-10-083-11/+24
|\ | | | | | | | | | | | | | | 1969: restore coloring of attributes r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * macro DSL for cfg in testsAleksey Kladov2019-10-083-16/+23
| |
| * use slightly more idiomatic api for cfgAleksey Kladov2019-10-082-7/+13
| |
* | Address comments: fix docs, add completion test for `Self`.ice10002019-10-083-5/+3
| |
* | Support inferring `Self` type in enum definitionsice10002019-10-086-8/+53
|/ | | | Signed-off-by: ice1000 <[email protected]>
* Merge #1928bors[bot]2019-10-058-38/+322
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1928: Support `#[cfg(..)]` r=matklad a=oxalica This PR implement `#[cfg(..)]` conditional compilation. It read default cfg options from `rustc --print cfg` with also hard-coded `test` and `debug_assertion` enabled. Front-end settings are **not** included in this PR. There is also a known issue that inner control attributes are totally ignored. I think it is **not** a part of `cfg` and create a separated issue for it. #1949 Fixes #1920 Related: #1073 Co-authored-by: uHOOCCOOHu <[email protected]> Co-authored-by: oxalica <[email protected]>
| * Add docsuHOOCCOOHu2019-10-021-0/+2
| |