aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_hir_expand/src
Commit message (Collapse)AuthorAgeFilesLines
* Expand macros in blocks to expressions for nowFlorian Diebold2019-12-081-2/+2
| | | | Expanding to statements isn't handled properly yet and breaks things.
* Fix expansion of format_argsFlorian Diebold2019-12-081-6/+13
|
* Remove MacroFileKindEdwin Cheng2019-12-084-25/+46
|
* Implement ancestors_with_macros in a better wayFlorian Diebold2019-12-061-0/+21
|
* Builtin macros only use caller tokensFlorian Diebold2019-12-061-2/+2
|
* Try to make go to definition work in format!Florian Diebold2019-12-061-0/+18
| | | | | | | SourceAnalyzer didn't work properly within expression macro expansions because it didn't find the enclosing function. Fix this by going up the expansion chain to find ancestors. This makes the test work, but apparently in real usage it's still not working.
* Implement format_args more properlyFlorian Diebold2019-12-061-4/+43
|
* Remove unnecessary len parameter for Name::new_inline_asciiFlorian Diebold2019-12-061-59/+59
| | | | | I assume it was previously required because `len` was not const, but that doesn't seem to be a problem anymore.
* Add stub implementation of format_args{_nl} macrosFlorian Diebold2019-12-062-1/+20
| | | | Just enough to fix the huge amount of type mismatches they cause.
* Implement all the other built-in derivesFlorian Diebold2019-12-052-15/+86
| | | | Since as long as we're not implementing the bodies, they all work the same way.
* Implement derive(Copy, Clone) properly (well, kind of)Florian Diebold2019-12-052-7/+190
|
* Add expansion infrastructure for derive macrosFlorian Diebold2019-12-057-51/+170
|
* Replace `ra_hir_expand::either` with crateice10002019-12-033-58/+3
|
* Infer range typesoxalica2019-11-281-0/+6
|
* Use InFile for AstIdAleksey Kladov2019-11-281-35/+4
|
* Rename Source -> InFileAleksey Kladov2019-11-282-23/+23
|
* Hide MacroCallLocEdwin Cheng2019-11-261-2/+12
|
* :arrow_up: salsaAleksey Kladov2019-11-261-0/+4
|
* Merge #2362bors[bot]2019-11-252-0/+39
|\ | | | | | | | | | | | | | | 2362: Expand compile_error! r=edwin0cheng a=kjeremy Does not validate that the input is a string literal. I thought that I could `match_ast!` against the `macro_args` but that did not work. Even if it had I am not sure which error would be appropriate. Co-authored-by: Jeremy Kolb <[email protected]>
| * Expand compile_error!Jeremy Kolb2019-11-252-0/+39
| |
* | Fix panic during the expansion of `column!`Marco Groppo2019-11-241-5/+16
|/
* Use macro for all the thingsEdwin Cheng2019-11-231-48/+31
|
* Rename BuiltinExpander to BuiltinFnLikeExpanderEdwin Cheng2019-11-233-14/+14
|
* Refactor builtin macroEdwin Cheng2019-11-221-18/+124
|
* Add TestDBEdwin Cheng2019-11-222-0/+53
|
* Expand column!()Jeremy Kolb2019-11-222-1/+44
|
* Expand file! to dummy ""kjeremy2019-11-222-1/+26
|
* Add support for Stringify builtin macroPiotr Szpetkowski2019-11-222-0/+28
|
* Add MacroFileKind::StatementsEdwin Cheng2019-11-212-0/+2
|
* Rename with_ast -> with_valueAleksey Kladov2019-11-201-4/+4
|
* Rename Source::ast -> Source::valueAleksey Kladov2019-11-202-17/+21
|
* Fixed a bug for string lit in quoteEdwin Cheng2019-11-191-4/+4
|
* Collapse TokenMap and RevTokenMapAleksey Kladov2019-11-182-7/+5
|
* Token-based reverse-mappingAleksey Kladov2019-11-181-29/+22
|
* More correct expansion mappingAleksey Kladov2019-11-171-14/+30
| | | | We can't really map arbitrary ranges, we only can map tokens
* Make shift an implementation detail of mbeAleksey Kladov2019-11-172-9/+16
|
* Don't store shift redundantlyAleksey Kladov2019-11-171-6/+5
|
* Goto definition works inside macrosAleksey Kladov2019-11-161-0/+9
|
* Prepare SourceAnalyzer for macrosAleksey Kladov2019-11-151-2/+8
|
* Sourcify some moreAleksey Kladov2019-11-151-0/+2
|
* Sourcify some thingsAleksey Kladov2019-11-151-0/+4
| | | | | If we want to support macros properly, we need to get rid of those FileIds everywhere...
* Heed the advice of rustc's into_iter() warningmemoryruins2019-11-151-4/+2
|
* Handle macro-generated expressions slightly less wrongAleksey Kladov2019-11-141-1/+4
|
* Add MacroDefKindEdwin Cheng2019-11-114-35/+19
|
* Add line macro and testsEdwin Cheng2019-11-112-7/+65
|
* Add quote macroEdwin Cheng2019-11-112-0/+262
|
* Add basic bultin macro infrastructureEdwin Cheng2019-11-115-22/+109
|
* Remove typed macro parsing APIAleksey Kladov2019-11-091-8/+7
| | | | | We do type-erasure on every path anyway, so it doesn't make much sense to duplicate this function for every type
* Minor cleanupAleksey Kladov2019-11-091-6/+8
|
* Remove map_ranges in RevTokenMapEdwin Cheng2019-11-092-34/+33
|