Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | 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. | ||||
* | Handle #![cfg] in crate root | Jonas Schievink | 2020-10-26 | 1 | -2/+5 |
| | |||||
* | Emit better #[cfg] diagnostics | Jonas Schievink | 2020-10-22 | 1 | -12/+17 |
| | |||||
* | Add a (hint) diagnostic for unconfigured items | Jonas Schievink | 2020-10-20 | 1 | -0/+13 |
| | |||||
* | Account for proc macro helpers when parsing attr | Jonas Schievink | 2020-10-05 | 1 | -1/+2 |
| | |||||
* | Add more comments about proc macro resolution | Jonas Schievink | 2020-09-28 | 1 | -0/+20 |
| | |||||
* | Reduce visibility of non-proc-macros | Jonas Schievink | 2020-09-18 | 1 | -0/+19 |
| | | | | | proc-macro crates only export proc-macros, but currently other items are also considered public (and show up in completion) | ||||
* | Remove obsolete proc macro collection code | Jonas Schievink | 2020-09-18 | 1 | -19/+0 |
| | | | | The new attribute-based resolution takes care of this | ||||
* | Use hir_def to resolve proc macros | Jonas Schievink | 2020-09-18 | 1 | -2/+48 |
| | |||||
* | Rename `CustomDerive` to `ProcMacro` | Jonas Schievink | 2020-09-18 | 1 | -1/+1 |
| | | | | | It handles fn-like macros too, and will handle attribute macros in the future |