Skip to content

Commit ee452a1

Browse files
committed
Auto merge of #243 - cuviper:intern-macros, r=hauleth
macros: update string interning None
2 parents be61427 + 7ebef5b commit ee452a1

File tree

1 file changed

+7
-8
lines changed

1 file changed

+7
-8
lines changed

macros/src/lib.rs

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -25,10 +25,9 @@ use syntax::ext::base::{ExtCtxt, Annotatable};
2525
use syntax::ext::build::AstBuilder;
2626
use syntax_ext::deriving::generic::*;
2727
use syntax_ext::deriving::generic::ty::*;
28-
use syntax::parse::token::InternedString;
28+
use syntax::symbol::Symbol;
2929
use syntax::ptr::P;
3030
use syntax::ext::base::MultiDecorator;
31-
use syntax::parse::token;
3231

3332
use rustc_plugin::Registry;
3433

@@ -66,7 +65,7 @@ pub fn expand_deriving_from_primitive(cx: &mut ExtCtxt,
6665
item: &Annotatable,
6766
push: &mut FnMut(Annotatable))
6867
{
69-
let inline = cx.meta_word(span, InternedString::new("inline"));
68+
let inline = cx.meta_word(span, Symbol::intern("inline"));
7069
let attrs = vec!(cx.attribute(span, inline));
7170
let trait_def = TraitDef {
7271
is_unsafe: false,
@@ -128,13 +127,13 @@ fn cs_from(name: &str, cx: &mut ExtCtxt, trait_span: Span, substr: &Substructure
128127
match *substr.fields {
129128
StaticStruct(..) => {
130129
cx.span_err(trait_span, "`FromPrimitive` cannot be derived for structs");
131-
return cx.expr_fail(trait_span, InternedString::new(""));
130+
return cx.expr_fail(trait_span, Symbol::intern(""));
132131
}
133132
StaticEnum(enum_def, _) => {
134133
if enum_def.variants.is_empty() {
135134
cx.span_err(trait_span,
136135
"`FromPrimitive` cannot be derived for enums with no variants");
137-
return cx.expr_fail(trait_span, InternedString::new(""));
136+
return cx.expr_fail(trait_span, Symbol::intern(""));
138137
}
139138

140139
let mut arms = Vec::new();
@@ -169,14 +168,14 @@ fn cs_from(name: &str, cx: &mut ExtCtxt, trait_span: Span, substr: &Substructure
169168
"`FromPrimitive` cannot be derived for \
170169
enum variants with arguments");
171170
return cx.expr_fail(trait_span,
172-
InternedString::new(""));
171+
Symbol::intern(""));
173172
}
174173
ast::VariantData::Struct(..) => {
175174
cx.span_err(trait_span,
176175
"`FromPrimitive` cannot be derived for enums \
177176
with struct variants");
178177
return cx.expr_fail(trait_span,
179-
InternedString::new(""));
178+
Symbol::intern(""));
180179
}
181180
}
182181
}
@@ -200,6 +199,6 @@ fn cs_from(name: &str, cx: &mut ExtCtxt, trait_span: Span, substr: &Substructure
200199
#[doc(hidden)]
201200
pub fn plugin_registrar(reg: &mut Registry) {
202201
reg.register_syntax_extension(
203-
token::intern("derive_NumFromPrimitive"),
202+
Symbol::intern("derive_NumFromPrimitive"),
204203
MultiDecorator(Box::new(expand_deriving_from_primitive)));
205204
}

0 commit comments

Comments
 (0)