Mark Rousskov
a06baa56b9
Format the world
2019-12-22 17:42:47 -05:00
Camille GILLOT
e5fb784823
Create intermediate enum ty::ConstKind.
2019-11-12 20:14:52 +01:00
csmoe
fa7a87be63
generate GeneratorSubsts from SubstsRef
2019-10-04 20:47:43 +08:00
csmoe
eab060f4da
clean ClosureSubsts in rustc::ty
2019-09-29 16:17:46 +00:00
varkor
e2e0f9af85
Rename sty to kind
2019-09-25 15:50:04 +01:00
Ralf Jung
8e6fbbec83
add tuple_fields convenience method and use it in a few places
2019-08-11 12:04:49 +02:00
Jeremy Stucki
004efa2705
Remove needless lifetimes
2019-06-21 11:39:28 +02:00
varkor
a3470c6189
Update handling of Tuple
2019-04-26 21:09:32 +01:00
Oliver Scherer
5cd2806621
Revert the LazyConst PR
2019-03-16 21:04:10 +01:00
csmoe
cf11729787
rename Substs to InternalSubsts
...
Change-Id: I3fa00e999a2ee4eb72db1fdf53a8633b49176a18
2019-02-27 00:39:13 +08:00
Mark Mansi
e957ed9d10
move librustc to 2018
2019-02-05 12:45:47 -06:00
Oliver Scherer
b903cb9d60
Move the Unevaluated constant arm upwards in the type structure
2019-01-01 20:05:02 +01:00
Mark Rousskov
2a663555dd
Remove licenses
2018-12-25 21:08:33 -07:00
scalexm
05995a8522
Introduce TyKind::Placeholder variant
2018-11-24 01:24:40 +01:00
scalexm
1003b7f85e
Move BoundTy to ty::TyKind
2018-11-03 11:33:14 +01:00
bors
fddcd316af
Auto merge of #54743 - ljedrz:cleanup_ty_p2, r=zackmdavis
...
Cleanup rustc/ty part 2
The second part of cleanups and minor improvements for rustc/ty.
- improve allocations
- calculate span after a possible early continue
- simplify some patterns
- mark a comment as FIXME
- whitespace fixes
The PR is independent from from the first part.
2018-10-05 19:32:14 +00:00
scalexm
608adfc3f0
Introduce TyKind::UnnormalizedProjection
2018-10-03 17:06:28 +02:00
ljedrz
f8caccacf4
rustc/ty: simplify some patterns
2018-10-03 09:04:02 +02:00
ms2300
6c14360c32
Changing TyAnon -> TyOpaque and relevant functions
2018-09-05 13:01:16 -06:00
Igor Gutorov
4d81fe9243
Use optimized SmallVec implementation
2018-08-23 10:45:53 +03:00
varkor
8a5dccde2a
Remove Ty prefix from Ty{Bool|Char|Int|Uint|Float|Str}
2018-08-22 16:08:49 +01:00
varkor
04fa5d3adb
Remove Ty prefix from Ty{Foreign|Param}
2018-08-22 16:07:55 +01:00
varkor
6f637da50c
Remove Ty prefix from Ty{Adt|Array|Slice|RawPtr|Ref|FnDef|FnPtr|Dynamic|Closure|Generator|GeneratorWitness|Never|Tuple|Projection|Anon|Infer|Error}
2018-08-22 16:07:44 +01:00
Oliver Schneider
4bb9648b27
Merge ConstVal and ConstValue
2018-06-28 11:04:25 +02:00
Oliver Schneider
05994779ea
Move everything over from middle::const_val to mir::interpret
2018-06-28 11:02:31 +02:00
John Kåre Alsaker
c9d9c249ec
Insert fields from TypeAndMut into TyRef to allow layout optimization
2018-05-08 16:21:58 +02:00
John Kåre Alsaker
710b4ad2a5
Store the GeneratorInterior in the new GeneratorSubsts
2018-05-08 16:21:58 +02:00
John Kåre Alsaker
0edc8f4270
Store generator movability outside GeneratorInterior
2018-05-08 16:21:58 +02:00
Andrew Cann
9b15ddb29e
remove defaulting to unit
...
Types will no longer default to `()`, instead always defaulting to `!`.
This disables the associated warning and removes the flag from TyTuple
2018-03-14 12:44:51 +08:00
Oliver Schneider
28572d2c1f
Nuke the entire ctfe from orbit, it's the only way to be sure
2018-03-08 08:08:14 +01:00
Oliver Schneider
38b5ddd39b
Add a variant to ConstVal for storing miri results
2018-03-08 08:06:07 +01:00
John Kåre Alsaker
ccf0d8399e
Adds support for immovable generators. Move checking of invalid borrows across suspension points to borrowck. Fixes #44197 , #45259 and #45093 .
2018-01-23 05:10:38 +01:00
Paul Lietar
77f7e85d7f
Implement RFC 1861: Extern types
2017-10-27 23:01:34 +02:00
Eduard-Mihai Burtescu
74349fa288
rustc: evaluate fixed-length array length expressions lazily.
2017-09-11 08:41:16 +03:00
Eduard-Mihai Burtescu
8a9b78f5cc
rustc: use ty::Const for the length of TyArray.
2017-09-11 08:41:15 +03:00
Alex Crichton
352577f4bb
Initial pass review comments
2017-08-09 13:56:19 -07:00
John Kåre Alsaker
d861982ca6
Generator literal support
2017-07-28 15:46:23 +02:00
Tobias Schottdorf
687ee7fee4
Downgrade ProjectionTy's TraitRef to its substs
...
Addresses the second part of #42171 by removing the `TraitRef` from
`ProjectionTy`, and directly storing its `Substs`.
Closes #42171 .
2017-07-11 10:33:09 -04:00
Eduard-Mihai Burtescu
33ecf72e8e
rustc: move the PolyFnSig out of TyFnDef.
2017-06-27 16:39:52 +03:00
Eduard-Mihai Burtescu
91374f8fe4
rustc: combine BareFnTy and ClosureTy into FnSig.
2017-02-25 17:47:15 +02:00
Andrew Cann
2cc84df44c
Add warning for () to ! switch
2017-02-03 18:48:15 +08:00
Vadim Petrochenkov
ffba0cea62
Merge ty::TyBox into ty::TyAdt
2017-01-30 23:14:15 +03:00
Mark-Simulacrum
1eab19dba8
Refactor ty::FnSig to privatize all fields
2016-12-05 22:22:49 -07:00
Mark-Simulacrum
bb35d50cad
Refactor TyTrait to contain a interned ExistentialPredicate slice.
...
Renames TyTrait to TyDynamic.
2016-11-28 18:09:13 -07:00
Mark-Simulacrum
46c7a117f8
Privatize TraitObject.principal and add a method accessor, returning Option.
2016-11-28 06:37:08 -07:00
Nicholas Nethercote
f72685f2ff
Use SmallVec for TypeWalker's stack.
...
The change also adds the missing `SmallVec::truncate` method.
2016-11-22 10:02:04 +11:00
Ariel Ben-Yehuda
ca9b5664c3
rustc: move closure upvar types to the closure substs
...
This moves closures to the (DefId, Substs) scheme like all other items,
and saves a word from the size of TyS now that Substs is 2 words.
2016-11-12 19:00:50 +02:00
iirelu
e593c3b893
Changed most vec! invocations to use square braces
...
Most of the Rust community agrees that the vec! macro is clearer when
called using square brackets [] instead of regular brackets (). Most of
these ocurrences are from before macros allowed using different types of
brackets.
There is one left unchanged in a pretty-print test, as the pretty
printer still wants it to have regular brackets.
2016-10-31 22:51:40 +00:00
Vadim Petrochenkov
f2b672d556
Refactor TyStruct/TyEnum/TyUnion into TyAdt
2016-09-08 22:17:53 +03:00
Vadim Petrochenkov
cbd912baba
Add union types
2016-09-03 13:37:25 +03:00