Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Merge #8352 | bors[bot] | 2021-04-05 | 1 | -9/+3 |
|\ | | | | | | | | | | | | | | | 8352: Remove dead legacy macro expansion code r=lnicola a=brandondong I was investigating some unrelated macro issue when I noticed this dead code. This legacy macro expansion logic was changed in https://github.com/rust-analyzer/rust-analyzer/pull/8128. Co-authored-by: Brandon <[email protected]> | ||||
| * | Remove dead legacy macro expansion code | Brandon | 2021-04-05 | 1 | -9/+3 |
| | | |||||
* | | Use shrink_to_fit to reduce DefMap sizes | Jonas Schievink | 2021-04-03 | 1 | -1/+3 |
| | | |||||
* | | Intern `ModPath` in `Import` | Jonas Schievink | 2021-04-03 | 1 | -2/+6 |
| | | | | | | | | Minor savings only | ||||
* | | Support `#[rustc_builtin_macro = "builtin_name"]` | Jonas Schievink | 2021-04-03 | 1 | -1/+11 |
| | | |||||
* | | Only populate prelude for crate-level DefMaps | Jonas Schievink | 2021-04-02 | 1 | -14/+16 |
| | | |||||
* | | Intern Attr, MacroCall and Path components | Jonas Schievink | 2021-04-01 | 1 | -1/+1 |
| | | |||||
* | | Basic Support Macro 2.0 | Edwin Cheng | 2021-03-27 | 1 | -39/+63 |
|/ | |||||
* | Merge bang-macros and derives in name resolution | Jonas Schievink | 2021-03-23 | 1 | -86/+79 |
| | |||||
* | Expand legacy-scoped macro during collection | Jonas Schievink | 2021-03-21 | 1 | -6/+7 |
| | |||||
* | Fix handling of `#![cfg]` in outline module file | Jonas Schievink | 2021-03-19 | 1 | -21/+29 |
| | |||||
* | Rename derive-specific APIs | Jonas Schievink | 2021-03-19 | 1 | -4/+4 |
| | |||||
* | Record custom derive helpers in `DefMap` | Jonas Schievink | 2021-03-18 | 1 | -24/+9 |
| | | | | Also clean up proc macro attribute parsing a bit | ||||
* | Store an `AstId` for procedural macros | Jonas Schievink | 2021-03-18 | 1 | -6/+7 |
| | |||||
* | Make MacroDefId's `AstId` mandatory when possible | Jonas Schievink | 2021-03-18 | 1 | -4/+1 |
| | |||||
* | Rename `item_tree` query to `file_item_tree` | Jonas Schievink | 2021-03-18 | 1 | -4/+4 |
| | |||||
* | Make `ItemTreeId` its own type | Jonas Schievink | 2021-03-18 | 1 | -6/+6 |
| | |||||
* | Fix `use crate as <name>;` imports | Jonas Schievink | 2021-03-17 | 1 | -16/+18 |
| | |||||
* | Use first early expansion error during nameres | Jonas Schievink | 2021-03-17 | 1 | -1/+3 |
| | |||||
* | Update crates/hir_def/src/nameres/collector.rs | brandondong | 2021-03-15 | 1 | -1/+1 |
| | | | Co-authored-by: Jonas Schievink <[email protected]> | ||||
* | Fix incorrect diagnositics for failing built in eager macros | Brandon | 2021-03-14 | 1 | -10/+23 |
| | |||||
* | Delete `ContainerId` | Jonas Schievink | 2021-03-09 | 1 | -12/+11 |
| | |||||
* | Stop using `ContainerId` in `AssocContainerId` | Jonas Schievink | 2021-03-09 | 1 | -3/+3 |
| | |||||
* | Use upstream cov-mark | Laurențiu Nicola | 2021-03-08 | 1 | -9/+8 |
| | |||||
* | For unresolved macros, hightlight only the last segment | Aleksey Kladov | 2021-02-28 | 1 | -33/+48 |
| | |||||
* | is_visible_from_def_map: handle block expressions | Jonas Schievink | 2021-02-23 | 1 | -2/+2 |
| | |||||
* | Make `ModPath`'s representation private | Jonas Schievink | 2021-02-04 | 1 | -2/+2 |
| | |||||
* | Don't keep the parent DefMap alive via Arc | Jonas Schievink | 2021-02-04 | 1 | -4/+5 |
| | | | | | This seems like it could easily leak a lot of memory since we don't currently run GC | ||||
* | Use the right `DefMap` when looking up modules | Jonas Schievink | 2021-02-02 | 1 | -1/+7 |
| | |||||
* | Honor #![macro_use] in mod source files | Lukas Wirth | 2021-01-31 | 1 | -8/+9 |
| | |||||
* | Fix incorrect `FileId` and remove broken shortcut | Jonas Schievink | 2021-01-28 | 1 | -7/+6 |
| | | | | | Apparently we were using the crate's root file instead of the file containing the block. | ||||
* | Fix legacy macro resolution in block expressions | Jonas Schievink | 2021-01-27 | 1 | -1/+4 |
| | |||||
* | Create all `ModuleId`s through a `DefMap` method | Jonas Schievink | 2021-01-25 | 1 | -17/+10 |
| | | | | | `ModuleId` needs to be able to represent blocks, and only the associated `DefMap` will know how to construct that `ModuleId` | ||||
* | Obtain `ModuleId`'s `DefMap` through a method | Jonas Schievink | 2021-01-22 | 1 | -1/+1 |
| | |||||
* | Add name resolution query for block expressions | Jonas Schievink | 2021-01-21 | 1 | -17/+41 |
| | |||||
* | Rename `CrateDefMap` to `DefMap` | Jonas Schievink | 2021-01-18 | 1 | -7/+7 |
| | |||||
* | prepare to publish el libro de arena | Aleksey Kladov | 2021-01-14 | 1 | -1/+1 |
| | |||||
* | Fixed typos in code comments | Vincent Esche | 2021-01-09 | 1 | -4/+4 |
| | |||||
* | Emit diagnostics for unresolved item-level macros | Jonas Schievink | 2021-01-05 | 1 | -1/+32 |
| | |||||
* | More accurate `#[derive]` parsing | Jonas Schievink | 2020-12-19 | 1 | -14/+14 |
| | | | | This now allows full paths to the derive macro | ||||
* | Don't look at attributes when lowering to ItemTree | Jonas Schievink | 2020-12-18 | 1 | -5/+26 |
| | | | | Resolves 2 `cfg_attr` FIXMEs | ||||
* | Refactor attributes API to allow handling cfg_attr | Jonas Schievink | 2020-12-18 | 1 | -19/+29 |
| | |||||
* | Avoid querying attributes in item tree lowering | Jonas Schievink | 2020-12-16 | 1 | -8/+26 |
| | | | | | | | | ItemTree is per-file, so there is no unique crate associated with it. This means that it cannot know the active CfgOptions and thus couldn't handle `cfg_attr`. Prepare it for `cfg_attr`s by avoiding accessing attributes. | ||||
* | Make macro def krate mandatory | Jonas Schievink | 2020-12-15 | 1 | -12/+6 |
| | | | | Refactors builtin derive support to go through proper name resolution | ||||
* | Basic support for decl macros 2.0 | Jonas Schievink | 2020-12-15 | 1 | -1/+28 |
| | |||||
* | Move to upstream `macro_rules!` model | Jonas Schievink | 2020-12-15 | 1 | -37/+28 |
| | |||||
* | Publish diagnostics for macro expansion errors | Jonas Schievink | 2020-11-27 | 1 | -2/+25 |
| | |||||
* | Don't store `SyntaxNodePtr` in `CrateDefMap` | Jonas Schievink | 2020-11-26 | 1 | -4/+2 |
| | | | | It is volatile across reparses and makes incrementality worse. | ||||
* | Don't stack overflow on circular modules | Aleksey Kladov | 2020-11-04 | 1 | -11/+14 |
| | | | | closes #6453 | ||||
* | Deny unreachable-pub | Aleksey Kladov | 2020-11-02 | 1 | -7/+7 |
| | | | | | | | | It's very useful when `pub` is equivalent to "this is crate's public API", let's enforce this! Ideally, we should enforce it for local `cargo test`, and only during CI, but that needs https://github.com/rust-lang/cargo/issues/5034. |