Nicholas Nethercote
b9cef6984b
Simplify various Symbol
use points.
...
Including removing a bunch of unnecessary `.as_str()` calls, and a bunch
of unnecessary sigils.
2019-11-02 09:01:02 +11:00
Nicholas Nethercote
5bc7084f7e
Convert x.as_str().to_string()
to x.to_string()
where possible.
2019-11-02 09:01:00 +11:00
Mazdak Farrokhzad
fb12c70852
rustc, rustc_passes: don't depend on syntax_expand.
...
This is done by moving some data definitions to syntax::expand.
2019-10-27 17:05:57 +01:00
Mazdak Farrokhzad
9e3e3a470e
with_desugared_doc: correctly refer to attr
instead of self
...
Co-Authored-By: David Wood <Q0KPU0H1YOEPHRY1R2SN5B5RL@david.davidtw.co>
2019-10-25 10:43:08 +02:00
Mazdak Farrokhzad
0a5b38f9c3
move Attribute::with_desugared_doc to librustdoc
2019-10-25 04:38:42 +02:00
Mazdak Farrokhzad
a649b1666c
Rollup merge of #65657 - nnethercote:rm-InternedString-properly, r=eddyb
...
Remove `InternedString`
This PR removes `InternedString` by converting all occurrences to `Symbol`. There are a handful of places that need to use the symbol chars instead of the symbol index, e.g. for stable sorting; local conversions `LocalInternedString` is used in those places.
r? @eddyb
2019-10-23 22:19:19 +02:00
Nicholas Nethercote
ac6daed384
Remove many unnecessary trait derivations.
2019-10-21 20:59:18 +11:00
Nicholas Nethercote
78c3427308
Remove unnecessary impl Clean<String> for InternedString
.
2019-10-21 11:33:52 +11:00
Nicholas Nethercote
02edd14cde
Convert some InternedString
s to Symbols
.
...
This avoids the needs for various conversions, and makes the code
slightly faster, because `Symbol` comparisons and hashing is faster.
2019-10-21 11:31:02 +11:00
Tyler Mandry
bc85061203
Rollup merge of #65535 - eddyb:sliced-predicates, r=nikomatsakis
...
rustc: arena-allocate the slice in `ty::GenericsPredicate`, not the whole struct.
While rebasing #59789 I noticed we can do this now. However, it doesn't help much without changing `inferred_outlives_of` to the same type, which I might try next.
2019-10-18 13:48:34 -07:00
Eduard-Mihai Burtescu
cd9e4441eb
rustc: arena-allocate the slice in ty::GenericsPredicate
, not the whole struct.
2019-10-18 03:14:57 +03:00
Mazdak Farrokhzad
d420d719c4
move syntax::ext to new crate syntax_expand
2019-10-16 10:59:53 +02:00
Avi Dessauer
c087111345
Use shorthand initialization in rustdoc
2019-10-06 03:42:53 -04:00
csmoe
64f61c7888
remove indexed_vec re-export from rustc_data_structures
2019-09-29 16:48:31 +00:00
Eduard-Mihai Burtescu
a88d181a02
rustc: rely on c_variadic == true instead of CVarArgs in HIR/Ty fn signatures.
2019-09-28 17:39:00 +03:00
Eduard-Mihai Burtescu
7683d1c3aa
rustc: don't store a lifetime in hir::TyKind::CVarArgs.
2019-09-28 17:39:00 +03:00
varkor
38121173e2
Rename MetaItem.node
to MetaItem.kind
2019-09-26 18:21:48 +01:00
varkor
7bc94cc3c2
Rename Item.node
to Item.kind
2019-09-26 18:21:48 +01:00
varkor
c3d8791373
Rename Ty.node
to Ty.kind
2019-09-26 18:21:10 +01:00
varkor
d4573c9c1e
Rename TraitItem.node
to TraitItem.kind
2019-09-26 18:21:09 +01:00
varkor
ce6aabbaa1
Rename ImplItem.node
to ImplItem.kind
2019-09-26 18:21:09 +01:00
varkor
8bd0382134
Rename Pat.node
to Pat.kind
2019-09-26 18:21:09 +01:00
bors
ddf43867a9
Auto merge of #64515 - varkor:kindedterm, r=oli-obk
...
Rename `subst::Kind` to `subst::GenericArg`
And `subst::UnpackedKind` to `subst::GenericArgKind`. Individual variable names (e.g. `kind`) are not renamed, which would be an infeasible mission.
Fixes https://github.com/rust-lang/rust/issues/64352 .
r? @eddyb
2019-09-26 12:34:54 +00:00
varkor
e3fb05dc3c
Rename some _sty
variables to _kind
2019-09-26 12:10:43 +01:00
varkor
bea3d67c77
Rename subst::Kind
to subst::GenericArg
2019-09-26 11:48:05 +01:00
bors
134004f74d
Auto merge of #62661 - arielb1:never-reserve, r=nikomatsakis
...
reserve `impl<T> From<!> for T`
this is necessary for never-type stabilization.
cc #57012 #35121
I think we wanted a crater run for this @nikomatsakis?
r? @nikomatsakis
2019-09-26 08:42:34 +00:00
varkor
e2e0f9af85
Rename sty
to kind
2019-09-25 15:50:04 +01:00
Mazdak Farrokhzad
34067ee961
Rollup merge of #64599 - csmoe:doc_async_reexport, r=nikomatsakis
...
Rustdoc render async function re-export
Closes #63710
r? @nikomatsakis
2019-09-25 03:48:27 +02:00
Ariel Ben-Yehuda
1ec7ae14fa
resolve the rustc_reservation_impl attribute in 1 place
2019-09-24 21:11:50 +03:00
csmoe
a813cc1bf1
rename is_async_fn to asyncness
2019-09-21 03:17:57 +00:00
csmoe
9ffb1ce28c
append asyncness info to functions
2019-09-19 18:38:55 +00:00
Mark Rousskov
ec349bef24
Unwrap Visibility fields
...
There's not really any reason to not have the visibility default to
inherited, and this saves us the trouble of checking everywhere for
whether we have a visibility or not.
2019-09-13 19:44:44 -04:00
Mark Rousskov
04b27efa00
Move to print functions on types instead of impl fmt::Display
...
This will eventually allow us to easily pass in more parameters to the
functions without TLS or other such hacks
2019-09-13 19:44:44 -04:00
Nicholas Nethercote
4fd18c9c06
Use Symbol
in external_path()
.
2019-09-11 11:31:38 +10:00
varkor
f0386a10e0
Add "bool" lang item
2019-09-07 13:16:18 +01:00
Mazdak Farrokhzad
d4757d5bbf
Rollup merge of #63961 - JohnTitor:improve-require-lang-item, r=estebank
...
Add Option<Span> to `require_lang_item`
Fixes #63954
I'm not sure where to take `Some(span)` or something so I use `None` in many places.
r? @estebank
2019-08-29 05:32:51 +02:00
bors
bbd48e6f16
Auto merge of #63127 - kper:pr, r=nikomatsakis
...
Cleanup: Consistently use `Param` instead of `Arg` #62426
Fixes #62426
2019-08-28 03:42:00 +00:00
Yuki Okushi
82f2b37635
Add Option<Span> to require_lang_item
2019-08-28 07:11:12 +09:00
Kevin Per
e0ce9f8c0a
Cleanup: Consistently use Param
instead of Arg
#62426
2019-08-27 14:07:41 +02:00
Mark Rousskov
95f5698c10
Remove dead tracking of external param names
2019-08-26 18:52:27 -04:00
Mark Rousskov
57d57c6784
Mutate DocContext from LibEmbargoVisitor and RustdocVisitor
...
We have &mut access, so remove the RefCell borrowing
2019-08-26 18:51:34 -04:00
Mark Rousskov
e2b6f4c662
Move top-level Clean impl to function
...
This allows us to pass it a `&mut DocContext` which will allow removal
of RefCells, etc. in the following commits. It's also somewhat a unique
Clean impl in that it previously ignored `self` (re-retriveing
hir::Crate), which it no longer needs to do.
2019-08-26 18:51:34 -04:00
Shotaro Yamada
1fe6160c7e
Fix ICE with impl Trait
in type bounds
2019-08-19 17:49:54 +09:00
Shotaro Yamada
3620456faf
Use BTreeMap for deterministic iter order
2019-08-19 17:49:54 +09:00
Shotaro Yamada
5f9e26382f
Support nested impl Trait
2019-08-19 17:49:54 +09:00
Shotaro Yamada
9beff38382
Associated type bound for inlined impl Trait doc
2019-08-19 17:49:54 +09:00
Shotaro Yamada
b78367d8e8
Support impl Trait
in inlined documentation
2019-08-19 17:49:54 +09:00
bors
a807902dd6
Auto merge of #63463 - matthewjasper:ty_param_cleanup, r=petrochenkov
...
Don't special case the `Self` parameter by name
This results in a couple of small diagnostic regressions. They could be avoided by keeping the special case just for diagnostics, but that seems worse.
closes #50125
cc #60869
2019-08-19 01:31:35 +00:00
Matthew Jasper
24587d20df
Pre intern the Self
parameter type
...
Use this to simplify the object safety code a bit.
2019-08-18 19:25:12 +01:00
varkor
1713ac4bf5
Initial implementation of or patterns
2019-08-17 15:05:36 +00:00