aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_hir_def/src
Commit message (Collapse)AuthorAgeFilesLines
* Merge #3918bors[bot]2020-04-094-45/+82
|\ | | | | | | | | | | | | | | | | 3918: Add support for feature attributes in struct literal r=matklad a=bnjjj As promised here is the next PR to solve 2 different scenarios with feature flag on struct literal. close #3870 Co-authored-by: Benjamin Coenen <[email protected]>
| * feat: add support for feature attributes in struct literalBenjamin Coenen2020-04-095-5/+16
| |\ | | | | | | | | | Signed-off-by: Benjamin Coenen <[email protected]>
| * | feat: add support for feature attributes in struct literalBenjamin Coenen2020-04-094-45/+82
| | | | | | | | | | | | Signed-off-by: Benjamin Coenen <[email protected]>
* | | Be consistent about token accesorsAleksey Kladov2020-04-095-9/+12
| | |
* | | Add _token suffix to token accessorsAleksey Kladov2020-04-092-2/+2
| |/ |/| | | | | | | I think this makes is more clear which things are : AstNode and which are : AstToken
* | Scale back to only two traitsAleksey Kladov2020-04-091-1/+0
| |
* | Provide more complete AST accessors to support usage in rustcLuca Barbieri2020-04-095-5/+17
|/
* feat: add attributes support on struct fields and method #3870Benjamin Coenen2020-04-082-31/+24
| | | | Signed-off-by: Benjamin Coenen <[email protected]>
* Merge branch 'master' of github.com:rust-analyzer/rust-analyzerBenjamin Coenen2020-04-071-0/+5
|\
| * Check for eprintln on CIAleksey Kladov2020-04-061-0/+5
| |
* | feat: add attributes support on struct fields #3870Benjamin Coenen2020-04-072-4/+33
|/ | | | Signed-off-by: Benjamin Coenen <[email protected]>
* Fix inference of function pointer return typesLaurențiu Nicola2020-04-051-1/+5
|
* Macro patterns are not confused with expressions.Aleksey Kladov2020-04-031-2/+1
| | | | | | | | | | | We treat macro calls as expressions (there's appropriate Into impl), which causes problem if there's expresison and non-expression macro in the same node (like in the match arm). We fix this problem by nesting macor patterns into another node (the same way we nest path into PathExpr or PathPat). Ideally, we probably should add a similar nesting for macro expressions, but that needs some careful thinking about macros in blocks: `{ am_i_expression!() }`.
* lower bool literal with the value from source code rather than default bool ↵Josh Mcguigan2020-04-011-1/+1
| | | | value
* lower literal patternsJosh Mcguigan2020-04-011-21/+33
|
* Nice string formattingAleksey Kladov2020-03-281-2/+3
|
* 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-262-6/+8
| |
* | Minor incremental tests cleanupAleksey Kladov2020-03-261-8/+8
| |
* | Cleanup memory usage statsAleksey Kladov2020-03-251-6/+1
|/
* fix typo of visibility_ofEdwin Cheng2020-03-251-1/+1
|
* Remove collect proc_macro definitionsEdwin Cheng2020-03-251-23/+23
|
* Rename to CustomDeriveEdwin Cheng2020-03-251-1/+1
|
* Refactoring a bitEdwin Cheng2020-03-251-2/+5
|
* Add basic custom derive loweringEdwin Cheng2020-03-252-8/+57
|
* Add ItemScope::visibility_ofEdwin Cheng2020-03-241-0/+6
|
* Merge #3684bors[bot]2020-03-221-1/+1
|\ | | | | | | | | | | | | | | 3684: ra_hir_def: fix typo r=edwin0cheng a=Veetaha Co-authored-by: veetaha <[email protected]>
| * ra_hir_def: fix typoveetaha2020-03-221-1/+1
| |
* | Add support for macro in symbo_indexEdwin Cheng2020-03-221-11/+1
| |
* | Add recursive limit in expression macro expansionEdwin Cheng2020-03-211-1/+8
|/
* Simplify Arena to use a generic indexAleksey Kladov2020-03-1912-112/+85
|
* ra_hir_def: remove dat fixmeveetaha2020-03-181-1/+0
|
* 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-1622-177/+185
| | | | | | | 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).
* Use Display instead of a custom methodKirill Bulatov2020-03-161-1/+1
|
* Fix crate display name dashesKirill Bulatov2020-03-161-2/+7
|
* Merge #3591bors[bot]2020-03-154-16/+61
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | 3591: Support local macro_rules r=matklad a=edwin0cheng This PR implement local `macro_rules` in function body, by adding following things: 1. While lowering, add a `MacroDefId` in body's `ItemScope` as a textual legacy macro. 2. Make `Expander::enter_expand` search with given `ItemScope`. 3. Make `Resolver::resolve_path_as_macro` search with `LocalItemScope`. Fix #2181 Co-authored-by: Edwin Cheng <[email protected]>
| * Support local macro_rulesEdwin Cheng2020-03-144-16/+61
| |
* | Fix completion of trait itemsFlorian Diebold2020-03-142-11/+48
|/ | | | Trait items should be public by default.
* 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
|
* Add resolve_extern_path in DBEdwin Cheng2020-03-101-1/+9
|
* Print crate name in profilAleksey Kladov2020-03-091-1/+2
|
* Minimize APIAleksey Kladov2020-03-091-1/+1
|
* Use `Index` for CrateGraphAleksey Kladov2020-03-094-7/+6
|
* Merge #3519bors[bot]2020-03-094-8/+8
|\ | | | | | | | | | | | | | | 3519: Show mod path on hover r=matklad a=SomeoneToIgnore Closes #1064 Co-authored-by: Kirill Bulatov <[email protected]>
| * Less abstract CrateData apiKirill Bulatov2020-03-094-8/+8
| |
* | Handle visibility for assoc item path completion as wellFlorian Diebold2020-03-081-12/+19
| |