Guillaume Gomez
dc628b4f67
cleanup
2019-03-23 14:43:27 +01:00
Guillaume Gomez
6bce61cd4b
Fix invalid returned types generation
2019-03-21 22:49:43 +01:00
Guillaume Gomez
aefe75095a
Add bounds for return types as well
2019-03-21 22:49:43 +01:00
Guillaume Gomez
6ae73e2ff6
Improve bounds search
2019-03-21 22:49:43 +01:00
Guillaume Gomez
64382f4b78
Greatly improve generics handling in rustdoc search
2019-03-21 22:49:42 +01:00
bors
48e354d224
Auto merge of #58927 - GuillaumeGomez:default-keyword, r=QuietMisdreavus
...
Add default keyword handling in rustdoc
Fixes #58898 .
r? @QuietMisdreavus
2019-03-21 08:55:50 +00:00
bors
070cebd0aa
Auto merge of #59178 - oli-obk:lazy_const, r=eddyb
...
Revert the `LazyConst` PR
The introduction of `LazyConst` did not actually achieve the code simplicity improvements that were the main reason it was introduced. Especially in the presence of const generics, the differences between the "levels of evaluatedness" of a constant become less clear. As it can be seen by the changes in this PR, further simplifications were possible by folding `LazyConst` back into `ConstValue`. We have been able to keep all the advantages gained during the `LazyConst` refactoring (like `const_eval` not returning an interned value, thus making all the `match` code simpler and more performant).
fixes https://github.com/rust-lang/rust/issues/59209
r? @eddyb @varkor
2019-03-17 11:17:03 +00:00
Vadim Petrochenkov
0cf96131f4
Refactor away NestedMetaItemKind
...
Remove methods `Attribute::span` and `MetaItem::span` duplicating public fields
2019-03-16 23:14:42 +03:00
Vadim Petrochenkov
8371caf5ee
syntax: Do not accidentally treat multi-segment meta-items as single-segment
2019-03-16 23:13:15 +03:00
Oliver Scherer
5cd2806621
Revert the LazyConst PR
2019-03-16 21:04:10 +01:00
Eduard-Mihai Burtescu
a54a41ce47
rustc: provide DisambiguatedDefPathData in ty::print.
2019-03-15 13:25:10 +02:00
Eduard-Mihai Burtescu
8619edede1
rustc: slice substs in ty::print instead of passing the full ones.
2019-03-15 13:25:10 +02:00
Eduard-Mihai Burtescu
52b4f2daa0
rustc: remove PrintCx from ty::Print and rely on printers carrying TyCtxt.
2019-03-15 13:25:10 +02:00
Eduard-Mihai Burtescu
c0c485c3ad
rustc: don't thread existential projections through path_generic_args.
2019-03-15 13:25:10 +02:00
Eduard-Mihai Burtescu
ffa00d4628
rustc: make pretty_path_generic_args' task as simple as possible.
2019-03-15 13:25:10 +02:00
Eduard-Mihai Burtescu
381fa7aa18
rustc: move ty::print::PrintConfig's fields to FmtPrinter.
2019-03-15 13:25:10 +02:00
Eduard-Mihai Burtescu
5211e37b1d
rustc: don't pass Namespace explicitly, but rather track it in FmtPrinter.
2019-03-15 13:25:10 +02:00
Eduard-Mihai Burtescu
35e5123f51
rustc: support overriding type printing in ty::print::Printer.
2019-03-15 13:25:10 +02:00
Eduard-Mihai Burtescu
88d96b269c
rustc: support overriding region printing in ty::print::Printer.
2019-03-15 13:25:10 +02:00
Eduard-Mihai Burtescu
7c4eecef0b
rustc: pass ty::print::PrintCx by value.
2019-03-15 13:25:10 +02:00
Eduard-Mihai Burtescu
37e918526a
rustc: split off most of ty::print::PrintCx's fields into a separate struct.
2019-03-15 13:25:10 +02:00
Eduard-Mihai Burtescu
5616ca857d
rustc: uniformize ty::print's error handling by requiring Result.
2019-03-15 13:25:10 +02:00
Eduard-Mihai Burtescu
df6650f38c
rustc: move ...::<impl ...> printing into pretty_path_qualified.
2019-03-15 13:25:10 +02:00
Eduard-Mihai Burtescu
aec5a48481
rustc: move <...>-less impl path special-case to pretty_path_qualified.
2019-03-15 13:25:10 +02:00
Eduard-Mihai Burtescu
a15bfc6f48
rustc: merge PrintCx::parameterized and def_path printing.
2019-03-15 13:25:10 +02:00
Eduard-Mihai Burtescu
9f8aaa04e0
rustc: move the contents of ty::item_path to ty::print.
2019-03-15 13:25:10 +02:00
Eduard-Mihai Burtescu
e0c75ff40d
rustc: rename item_path to def_path (except the module in ty).
2019-03-15 13:25:10 +02:00
Eduard-Mihai Burtescu
f1af5a77a0
rustc: remove TyCtxt::parent_def_id in favor of TyCtxt::parent.
2019-03-15 13:25:10 +02:00
Eduard-Mihai Burtescu
3e1cef7007
rustc: pass Option<&Substs> and Namespace around in ty::item_path.
2019-03-15 13:25:10 +02:00
Eduard-Mihai Burtescu
08d27441ec
rustc: move the formatter into ty::print::PrintCx.
2019-03-15 09:26:13 +02:00
Eduard-Mihai Burtescu
387cacf76b
rustc: remove ty::item_path::RootMode by moving local logic into the printer.
2019-03-15 09:26:13 +02:00
Eduard-Mihai Burtescu
228d6f45d8
rustc: remove unnecessary extern_prelude logic from ty::item_path.
2019-03-15 09:26:13 +02:00
Guillaume Gomez
541ad45a83
Add default keyword handling in rustdoc
2019-03-14 13:18:36 +01:00
John Kåre Alsaker
51938c61f6
Make the rustc driver and interface demand driven
2019-03-10 04:49:45 +01:00
ljedrz
558a07b896
hir: remove NodeId from PatKind
2019-03-07 12:18:59 +01:00
ljedrz
78f91e3976
hir: remove NodeId from PathSegment
2019-03-07 09:25:51 +01:00
ljedrz
cd06038b54
HirIdification: replace NodeId method calls
2019-03-07 09:22:43 +01:00
varkor
fc0fbe8bb5
Stub rustdoc const generics implementations
...
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com >
2019-03-05 22:17:41 +00:00
ljedrz
fb22315f08
hir: remove NodeId from VariantData
2019-03-02 07:48:52 +01:00
ljedrz
77fa041fc1
hir: remove NodeId from Item
2019-03-02 07:48:52 +01:00
ljedrz
3c25193f3f
hir: remove NodeId from ForeignItem
2019-03-02 07:48:52 +01:00
ljedrz
ae45f170ee
hir: remove NodeId from StructField
2019-03-02 07:48:52 +01:00
ljedrz
a29ceb9f51
hir: remove NodeId from ImplItem
2019-03-01 11:18:49 +01:00
ljedrz
e72584c3a1
hir: remove NodeId from TraitItem
2019-03-01 11:18:49 +01:00
ljedrz
4543fc243e
hir: remove NodeId from AnonConst
2019-03-01 11:18:48 +01:00
Dan Robertson
58147d486b
Support defining C compatible variadic functions
...
Add support for defining C compatible variadic functions in unsafe rust
with extern "C".
2019-02-27 10:21:35 -05:00
csmoe
cf11729787
rename Substs to InternalSubsts
...
Change-Id: I3fa00e999a2ee4eb72db1fdf53a8633b49176a18
2019-02-27 00:39:13 +08:00
bors
ea43c3c688
Auto merge of #58561 - ljedrz:HirIdify_some_nodes, r=Zoxc
...
Remove NodeId from some HIR nodes
The next iteration of https://github.com/rust-lang/rust/pull/57578 .
Removes `NodeId` from:
- [x] `Lifetime`
- [x] `Ty`
- [x] `GenericParam`
- [x] `WhereClause`
- [x] `WhereEqPredicate`
- [x] `MacroDef`
- [x] `Block`
- [x] `Expr`
r? @Zoxc
2019-02-26 06:13:27 +00:00
ljedrz
e4f8a6bcc1
hir: remove NodeId from GenericParam
2019-02-24 07:50:46 +01:00
ljedrz
00b74e5eaf
hir: remove NodeId from Lifetime and Ty
2019-02-24 07:50:44 +01:00