Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | 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 | ||||
* | Invert condition to unindent code | Jonas Schievink | 2020-09-18 | 1 | -158/+157 |
| | |||||
* | Give `ExternCrate` a `Name`, not a `ModPath` | Jonas Schievink | 2020-09-17 | 1 | -10/+7 |
| | |||||
* | Don't diagnose imports whose base crate is missing | Jonas Schievink | 2020-09-17 | 1 | -17/+40 |
| | |||||
* | Track import sources and emit diagnostics | Jonas Schievink | 2020-09-16 | 1 | -12/+49 |
| | |||||
* | Leave extern crate items unresolved if they are | Jonas Schievink | 2020-09-16 | 1 | -1/+5 |
| | |||||
* | Add diagnostic types for unresolved crates/imports | Jonas Schievink | 2020-09-16 | 1 | -7/+5 |
| | |||||
* | Rename ra_hir_def -> hir_def | Aleksey Kladov | 2020-08-13 | 1 | -0/+1279 |