rollup merge of #20568: huonw/ungate-AT-globs
These aren't in their final form, but are all aiming to be part of 1.0, so at the very least encouraging usage now to find the bugs is nice. Also, the widespread roll-out of associated types in the standard library indicates they're getting good, and it's lame to have to activate a feature in essentially every crate ever.
This commit is contained in:
commit
b24431970e
186 changed files with 37 additions and 409 deletions
|
|
@ -25,20 +25,14 @@ pub fn expand_deriving_hash<F>(cx: &mut ExtCtxt,
|
|||
F: FnOnce(P<Item>),
|
||||
{
|
||||
|
||||
let (path, generics, args) = if cx.ecfg.deriving_hash_type_parameter {
|
||||
(Path::new_(vec!("std", "hash", "Hash"), None,
|
||||
vec!(box Literal(Path::new_local("__S"))), true),
|
||||
LifetimeBounds {
|
||||
lifetimes: Vec::new(),
|
||||
bounds: vec!(("__S",
|
||||
vec!(Path::new(vec!("std", "hash", "Writer"))))),
|
||||
},
|
||||
Path::new_local("__S"))
|
||||
} else {
|
||||
(Path::new(vec!("std", "hash", "Hash")),
|
||||
LifetimeBounds::empty(),
|
||||
Path::new(vec!("std", "hash", "sip", "SipState")))
|
||||
let path = Path::new_(vec!("std", "hash", "Hash"), None,
|
||||
vec!(box Literal(Path::new_local("__S"))), true);
|
||||
let generics = LifetimeBounds {
|
||||
lifetimes: Vec::new(),
|
||||
bounds: vec!(("__S",
|
||||
vec!(Path::new(vec!("std", "hash", "Writer"))))),
|
||||
};
|
||||
let args = Path::new_local("__S");
|
||||
let inline = cx.meta_word(span, InternedString::new("inline"));
|
||||
let attrs = vec!(cx.attribute(span, inline));
|
||||
let hash_trait_def = TraitDef {
|
||||
|
|
|
|||
|
|
@ -1161,7 +1161,6 @@ fn new_span(cx: &ExtCtxt, sp: Span) -> Span {
|
|||
|
||||
pub struct ExpansionConfig {
|
||||
pub crate_name: String,
|
||||
pub deriving_hash_type_parameter: bool,
|
||||
pub enable_quotes: bool,
|
||||
pub recursion_limit: uint,
|
||||
}
|
||||
|
|
@ -1170,7 +1169,6 @@ impl ExpansionConfig {
|
|||
pub fn default(crate_name: String) -> ExpansionConfig {
|
||||
ExpansionConfig {
|
||||
crate_name: crate_name,
|
||||
deriving_hash_type_parameter: false,
|
||||
enable_quotes: false,
|
||||
recursion_limit: 64,
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue