Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
| * | | Add item_scope module | Aleksey Kladov | 2019-12-20 | 2 | -0/+2 | |
| | | | ||||||
* | | | Merge #2623 | bors[bot] | 2019-12-20 | 3 | -48/+94 | |
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2623: Add support macros in impl blocks r=matklad a=edwin0cheng This PR add support for macros in impl blocks, which reuse `Expander` for macro expansion. see also: #2459 Co-authored-by: Edwin Cheng <[email protected]> | |||||
| * | | | Add support macros in impl blocks | Edwin Cheng | 2019-12-20 | 3 | -48/+94 | |
| |/ / | ||||||
* | / | Simplify | Aleksey Kladov | 2019-12-20 | 1 | -1/+1 | |
| |/ |/| | ||||||
* | | Handle closure return types | Florian Diebold | 2019-12-20 | 2 | -1/+3 | |
|/ | | | | Fixes #2547. | |||||
* | Merge #2592 | bors[bot] | 2019-12-20 | 1 | -0/+1 | |
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2592: Add std::ops::Index support for infering r=edwin0cheng a=edwin0cheng see also #2534 Seem like this can't fix #2534 for this case: ```rust fn foo3(bar: [usize; 2]) { let baz = bar[1]; // <--- baz is still unknown ? println!("{}", baz); } ``` Co-authored-by: Edwin Cheng <[email protected]> | |||||
| * | Add std::ops::Index support for infering | Edwin Cheng | 2019-12-19 | 1 | -0/+1 | |
| | | ||||||
* | | Remove code that never was alive? | Aleksey Kladov | 2019-12-20 | 1 | -9/+2 | |
| | | ||||||
* | | Fix resolve for field init shorthand | Aleksey Kladov | 2019-12-20 | 1 | -0/+5 | |
| | | ||||||
* | | Reduce copy-paste some more | Aleksey Kladov | 2019-12-20 | 2 | -87/+9 | |
| | | ||||||
* | | Use generic ItemLoc for impls | Aleksey Kladov | 2019-12-20 | 2 | -24/+6 | |
| | | ||||||
* | | Remove more copy-paste | Aleksey Kladov | 2019-12-20 | 1 | -121/+29 | |
| | | ||||||
* | | Remove more copy-paste | Aleksey Kladov | 2019-12-20 | 1 | -57/+30 | |
| | | ||||||
* | | Support for nested traits | Aleksey Kladov | 2019-12-20 | 3 | -6/+13 | |
| | | ||||||
* | | Support for nested statics, consts and type aliases | Aleksey Kladov | 2019-12-20 | 3 | -5/+18 | |
| | | ||||||
* | | Support for nested ADT | Aleksey Kladov | 2019-12-20 | 3 | -14/+27 | |
| | | ||||||
* | | Introduce `ContainerId` | Aleksey Kladov | 2019-12-20 | 4 | -15/+38 | |
| | | ||||||
* | | Rename ContainerId -> AssocContainerId | Aleksey Kladov | 2019-12-20 | 5 | -29/+29 | |
| | | ||||||
* | | Add local functions to bodies | Aleksey Kladov | 2019-12-20 | 2 | -18/+49 | |
| | | ||||||
* | | Implement ChildBySource for DefWithBody | Aleksey Kladov | 2019-12-19 | 1 | -42/+55 | |
| | | ||||||
* | | Add body as a possible container for items | Aleksey Kladov | 2019-12-19 | 2 | -12/+13 | |
| | | ||||||
* | | Allow storing defs in bodies | Aleksey Kladov | 2019-12-19 | 2 | -1/+3 | |
| | | ||||||
* | | Handle start imports in import groups | Aleksey Kladov | 2019-12-19 | 3 | -3/+31 | |
| | | ||||||
* | | Remove dead code | Aleksey Kladov | 2019-12-18 | 1 | -5/+0 | |
| | | ||||||
* | | Touch up docs | Aleksey Kladov | 2019-12-18 | 1 | -1/+2 | |
| | | ||||||
* | | Forbid <T>::foo syntax in mod paths | Aleksey Kladov | 2019-12-18 | 4 | -14/+21 | |
| | | ||||||
* | | Move PathKindUp | Aleksey Kladov | 2019-12-18 | 1 | -14/+14 | |
| | | ||||||
* | | Touch up docs | Aleksey Kladov | 2019-12-18 | 1 | -3/+4 | |
|/ | ||||||
* | Drop dead code | Aleksey Kladov | 2019-12-17 | 1 | -11/+0 | |
| | ||||||
* | Refactor PathKind | Aleksey Kladov | 2019-12-17 | 5 | -15/+26 | |
| | ||||||
* | Use different types for path with and without generics | Aleksey Kladov | 2019-12-14 | 10 | -267/+385 | |
| | ||||||
* | Use path macro | Florian Diebold | 2019-12-13 | 1 | -63/+32 | |
| | ||||||
* | Rename N! to name! | Florian Diebold | 2019-12-13 | 7 | -42/+42 | |
| | ||||||
* | Add macros for known names and paths | Florian Diebold | 2019-12-13 | 7 | -63/+58 | |
| | ||||||
* | Correctly infer - and ! using std::ops::{Neg,Not} | Emil Lauridsen | 2019-12-13 | 1 | -0/+8 | |
| | ||||||
* | Correct obsolete comment | Aleksey Kladov | 2019-12-12 | 1 | -2/+1 | |
| | ||||||
* | Move use tree lowering to a separate module | Aleksey Kladov | 2019-12-12 | 2 | -104/+118 | |
| | ||||||
* | Dedupe from_source impls | Aleksey Kladov | 2019-12-12 | 1 | -1/+1 | |
| | ||||||
* | Remove old location infra | Aleksey Kladov | 2019-12-12 | 2 | -63/+6 | |
| | ||||||
* | Move enum&union to new loc | Aleksey Kladov | 2019-12-12 | 10 | -48/+100 | |
| | ||||||
* | Move structs to new loc | Aleksey Kladov | 2019-12-12 | 10 | -24/+58 | |
| | ||||||
* | Move traits to the new loc | Aleksey Kladov | 2019-12-12 | 11 | -26/+58 | |
| | ||||||
* | Switch to the new location for impls | Aleksey Kladov | 2019-12-12 | 10 | -23/+54 | |
| | ||||||
*-. | Merge #2500 #2505 #2506 | bors[bot] | 2019-12-08 | 1 | -3/+4 | |
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2500: Fix format_args expansion & go to definition r=matklad a=flodiebold The expansion of format_args wasn't yet correct enough to type-check. Also make macros in statement position expand to expressions for now, since it's not handled correctly in HIR lowering yet. This finally fixes go to definition within print macros, I think :slightly_smiling_face: 2505: Remove more dead code r=matklad a=matklad 2506: Remove one more Ty r=matklad a=matklad Co-authored-by: Florian Diebold <[email protected]> Co-authored-by: Aleksey Kladov <[email protected]> | |||||
| * | | Expand macros in blocks to expressions for now | Florian Diebold | 2019-12-08 | 1 | -3/+4 | |
| |/ | | | | | | | Expanding to statements isn't handled properly yet and breaks things. | |||||
| | | ||||||
| \ | ||||||
*-. \ | Merge #2501 #2502 #2503 | bors[bot] | 2019-12-08 | 1 | -149/+57 | |
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2501: Fix coercion from &Foo to an inference variable in a reference r=matklad a=flodiebold We didn't try to unify within the reference, but we should. 2502: Delay legacy macro expansion r=matklad a=edwin0cheng This PR make the following changes: * Delay legacy macro expansion such that we concentrated all item collecting macro expansion in one place. * Add `MacroDirective` to replace 3-tuples * After this refactoring, no macro is expanded recursively, hence we can remove the `MacroStackMonitor` and we handle the expansion limit by the fix-point loop count. 2503: Code: check whether the LSP binary is in PATH r=matklad a=lnicola I'm not really sure about the TS changes. I just made a couple of functions async and it seems to work. Co-authored-by: Florian Diebold <[email protected]> Co-authored-by: Edwin Cheng <[email protected]> Co-authored-by: Laurențiu Nicola <[email protected]> | |||||
| * | | Delay legacy macro expansion | Edwin Cheng | 2019-12-08 | 1 | -149/+57 | |
| |/ | ||||||
* | | Merge #2498 | bors[bot] | 2019-12-08 | 1 | -16/+26 | |
|\ \ | |/ |/| | | | | | | | | | | | 2498: Drop some unused methods r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]> | |||||
| * | Cleanup Field ty | Aleksey Kladov | 2019-12-08 | 1 | -16/+26 | |
| | | ||||||
* | | Merge #2466 | bors[bot] | 2019-12-08 | 3 | -44/+165 | |
|\ \ | |/ |/| | | | | | | | | | | | | | | | | | 2466: Handle partial resolve cases r=matklad a=edwin0cheng Another try to fix #2443 : We resolve all imports every time in `DefCollector::collect` loop even it is resolved previously. This is because other unresolved imports and macros will bring in another `PerNs`, so we can only assume that it has been partially resolved. Co-authored-by: Edwin Cheng <[email protected]> |