Skip to content

Commit 1e4269c

Browse files
committed
Add Ident::as_str helper
1 parent 189c0a1 commit 1e4269c

File tree

25 files changed

+50
-46
lines changed

25 files changed

+50
-46
lines changed

src/doc/unstable-book/src/language-features/plugin.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -208,7 +208,7 @@ impl LintPass for Pass {
208208
209209
impl EarlyLintPass for Pass {
210210
fn check_item(&mut self, cx: &EarlyContext, it: &ast::Item) {
211-
if it.ident.name.as_str() == "lintme" {
211+
if it.ident.as_str() == "lintme" {
212212
cx.span_lint(TEST_LINT, it.span, "item is named 'lintme'");
213213
}
214214
}

src/libproc_macro/lib.rs

+3-3
Original file line numberDiff line numberDiff line change
@@ -1214,14 +1214,14 @@ impl TokenTree {
12141214
SingleQuote => op!('\''),
12151215

12161216
Ident(ident, false) => {
1217-
tt!(self::Ident::new(&ident.name.as_str(), Span(span)))
1217+
tt!(self::Ident::new(&ident.as_str(), Span(span)))
12181218
}
12191219
Ident(ident, true) => {
1220-
tt!(self::Ident::new_raw(&ident.name.as_str(), Span(span)))
1220+
tt!(self::Ident::new_raw(&ident.as_str(), Span(span)))
12211221
}
12221222
Lifetime(ident) => {
12231223
let ident = ident.without_first_quote();
1224-
stack.push(tt!(self::Ident::new(&ident.name.as_str(), Span(span))));
1224+
stack.push(tt!(self::Ident::new(&ident.as_str(), Span(span))));
12251225
tt!(Punct::new('\'', Spacing::Joint))
12261226
}
12271227
Literal(lit, suffix) => tt!(self::Literal { lit, suffix, span: Span(span) }),

src/librustc/hir/mod.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -1983,7 +1983,7 @@ pub struct StructField {
19831983
impl StructField {
19841984
// Still necessary in couple of places
19851985
pub fn is_positional(&self) -> bool {
1986-
let first = self.ident.name.as_str().as_bytes()[0];
1986+
let first = self.ident.as_str().as_bytes()[0];
19871987
first >= b'0' && first <= b'9'
19881988
}
19891989
}

src/librustc/hir/print.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -1565,7 +1565,7 @@ impl<'a> State<'a> {
15651565
if ident.is_raw_guess() {
15661566
self.s.word(&format!("r#{}", ident.name))?;
15671567
} else {
1568-
self.s.word(&ident.name.as_str())?;
1568+
self.s.word(&ident.as_str())?;
15691569
}
15701570
self.ann.post(self, NodeName(&ident.name))
15711571
}

src/librustc/mir/mod.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -1774,7 +1774,7 @@ impl<'tcx> Debug for Rvalue<'tcx> {
17741774
CtorKind::Fictive => {
17751775
let mut struct_fmt = fmt.debug_struct("");
17761776
for (field, place) in variant_def.fields.iter().zip(places) {
1777-
struct_fmt.field(&field.ident.name.as_str(), place);
1777+
struct_fmt.field(&field.ident.as_str(), place);
17781778
}
17791779
struct_fmt.finish()
17801780
}

src/librustc_codegen_utils/symbol_names.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -363,7 +363,7 @@ impl SymbolPathBuffer {
363363
result: String::with_capacity(64),
364364
temp_buf: String::with_capacity(16),
365365
};
366-
result.result.push_str(&symbol.name.as_str());
366+
result.result.push_str(&symbol.as_str());
367367
result
368368
}
369369

src/librustc_lint/bad_style.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -324,7 +324,7 @@ impl<'a, 'tcx> LateLintPass<'a, 'tcx> for NonSnakeCase {
324324
_: &hir::Generics,
325325
_: ast::NodeId) {
326326
for sf in s.fields() {
327-
self.check_snake_case(cx, "structure field", &sf.ident.name.as_str(), Some(sf.span));
327+
self.check_snake_case(cx, "structure field", &sf.ident.as_str(), Some(sf.span));
328328
}
329329
}
330330
}

src/librustc_mir/monomorphize/partitioning.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -772,7 +772,7 @@ fn debug_dump<'a, 'b, 'tcx, I>(tcx: TyCtxt<'a, 'tcx, 'tcx>,
772772
debug!("CodegenUnit {}:", cgu.name());
773773

774774
for (mono_item, linkage) in cgu.items() {
775-
let symbol_name = mono_item.symbol_name(tcx).name.as_str();
775+
let symbol_name = mono_item.symbol_name(tcx).as_str();
776776
let symbol_hash_start = symbol_name.rfind('h');
777777
let symbol_hash = symbol_hash_start.map(|i| &symbol_name[i ..])
778778
.unwrap_or("<no hash>");

src/librustc_resolve/lib.rs

+6-6
Original file line numberDiff line numberDiff line change
@@ -1060,7 +1060,7 @@ impl<'a> ModuleData<'a> {
10601060
fn for_each_child_stable<F: FnMut(Ident, Namespace, &'a NameBinding<'a>)>(&self, mut f: F) {
10611061
let resolutions = self.resolutions.borrow();
10621062
let mut resolutions = resolutions.iter().collect::<Vec<_>>();
1063-
resolutions.sort_by_cached_key(|&(&(ident, ns), _)| (ident.name.as_str(), ns));
1063+
resolutions.sort_by_cached_key(|&(&(ident, ns), _)| (ident.as_str(), ns));
10641064
for &(&(ident, ns), &resolution) in resolutions.iter() {
10651065
resolution.borrow().binding.map(|binding| f(ident, ns, binding));
10661066
}
@@ -2608,7 +2608,7 @@ impl<'a> Resolver<'a> {
26082608
self,
26092609
ident.span,
26102610
ResolutionError::IdentifierBoundMoreThanOnceInSamePattern(
2611-
&ident.name.as_str())
2611+
&ident.as_str())
26122612
);
26132613
}
26142614
Some(..) if pat_src == PatternSource::FnParam => {
@@ -2617,7 +2617,7 @@ impl<'a> Resolver<'a> {
26172617
self,
26182618
ident.span,
26192619
ResolutionError::IdentifierBoundMoreThanOnceInParameterList(
2620-
&ident.name.as_str())
2620+
&ident.as_str())
26212621
);
26222622
}
26232623
Some(..) if pat_src == PatternSource::Match ||
@@ -3765,12 +3765,12 @@ impl<'a> Resolver<'a> {
37653765
// the closest match
37663766
let close_match = self.search_label(label.ident, |rib, ident| {
37673767
let names = rib.bindings.iter().map(|(id, _)| &id.name);
3768-
find_best_match_for_name(names, &*ident.name.as_str(), None)
3768+
find_best_match_for_name(names, &*ident.as_str(), None)
37693769
});
37703770
self.record_def(expr.id, err_path_resolution());
37713771
resolve_error(self,
37723772
label.ident.span,
3773-
ResolutionError::UndeclaredLabel(&label.ident.name.as_str(),
3773+
ResolutionError::UndeclaredLabel(&label.ident.as_str(),
37743774
close_match));
37753775
}
37763776
Some(Def::Label(id)) => {
@@ -4380,7 +4380,7 @@ fn names_to_string(idents: &[Ident]) -> String {
43804380
if i > 0 {
43814381
result.push_str("::");
43824382
}
4383-
result.push_str(&ident.name.as_str());
4383+
result.push_str(&ident.as_str());
43844384
}
43854385
result
43864386
}

src/librustc_resolve/macros.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -649,7 +649,7 @@ impl<'a> Resolver<'a> {
649649
format!("cannot find derive macro `{}` in this scope", ident),
650650
};
651651
let mut err = self.session.struct_span_err(span, &msg);
652-
self.suggest_macro_name(&ident.name.as_str(), kind, &mut err, span);
652+
self.suggest_macro_name(&ident.as_str(), kind, &mut err, span);
653653
err.emit();
654654
},
655655
_ => {},

src/librustc_resolve/resolve_imports.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -831,7 +831,7 @@ impl<'a, 'b:'a> ImportResolver<'a, 'b> {
831831
}
832832
});
833833
let lev_suggestion =
834-
match find_best_match_for_name(names, &ident.name.as_str(), None) {
834+
match find_best_match_for_name(names, &ident.as_str(), None) {
835835
Some(name) => format!(". Did you mean to use `{}`?", name),
836836
None => "".to_owned(),
837837
};

src/librustc_typeck/check/mod.rs

+6-6
Original file line numberDiff line numberDiff line change
@@ -3076,7 +3076,7 @@ impl<'a, 'gcx, 'tcx> FnCtxt<'a, 'gcx, 'tcx> {
30763076
}
30773077
}
30783078
ty::TyTuple(ref tys) => {
3079-
let fstr = field.name.as_str();
3079+
let fstr = field.as_str();
30803080
if let Ok(index) = fstr.parse::<usize>() {
30813081
if fstr == index.to_string() {
30823082
if let Some(field_ty) = tys.get(index) {
@@ -3123,7 +3123,7 @@ impl<'a, 'gcx, 'tcx> FnCtxt<'a, 'gcx, 'tcx> {
31233123
ty::TyAdt(def, _) if !def.is_enum() => {
31243124
if let Some(suggested_field_name) =
31253125
Self::suggest_field_name(def.non_enum_variant(),
3126-
&field.name.as_str(), vec![]) {
3126+
&field.as_str(), vec![]) {
31273127
err.span_label(field.span,
31283128
format!("did you mean `{}`?", suggested_field_name));
31293129
} else {
@@ -3161,7 +3161,7 @@ impl<'a, 'gcx, 'tcx> FnCtxt<'a, 'gcx, 'tcx> {
31613161
-> Option<Symbol> {
31623162
let names = variant.fields.iter().filter_map(|field| {
31633163
// ignore already set fields and private fields from non-local crates
3164-
if skip.iter().any(|x| *x == field.ident.name.as_str()) ||
3164+
if skip.iter().any(|x| *x == field.ident.as_str()) ||
31653165
(variant.did.krate != LOCAL_CRATE && field.vis != Visibility::Public) {
31663166
None
31673167
} else {
@@ -3223,9 +3223,9 @@ impl<'a, 'gcx, 'tcx> FnCtxt<'a, 'gcx, 'tcx> {
32233223
},
32243224
ty);
32253225
// prevent all specified fields from being suggested
3226-
let skip_fields = skip_fields.iter().map(|ref x| x.ident.name.as_str());
3226+
let skip_fields = skip_fields.iter().map(|ref x| x.ident.as_str());
32273227
if let Some(field_name) = Self::suggest_field_name(variant,
3228-
&field.ident.name.as_str(),
3228+
&field.ident.as_str(),
32293229
skip_fields.collect()) {
32303230
err.span_label(field.ident.span,
32313231
format!("field does not exist - did you mean `{}`?", field_name));
@@ -3334,7 +3334,7 @@ impl<'a, 'gcx, 'tcx> FnCtxt<'a, 'gcx, 'tcx> {
33343334

33353335
let mut displayable_field_names = remaining_fields
33363336
.keys()
3337-
.map(|ident| ident.name.as_str())
3337+
.map(|ident| ident.as_str())
33383338
.collect::<Vec<_>>();
33393339

33403340
displayable_field_names.sort();

src/librustdoc/html/highlight.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -324,7 +324,7 @@ impl<'a> Classifier<'a> {
324324

325325
// Keywords are also included in the identifier set.
326326
token::Ident(ident, is_raw) => {
327-
match &*ident.name.as_str() {
327+
match &*ident.as_str() {
328328
"ref" | "mut" if !is_raw => Class::RefKeyWord,
329329

330330
"self" | "Self" => Class::Self_,

src/libsyntax/diagnostics/plugin.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -162,7 +162,7 @@ pub fn expand_build_diagnostic_array<'cx>(ecx: &'cx mut ExtCtxt,
162162
ecx.parse_sess.registered_diagnostics.with_lock(|diagnostics| {
163163
if let Err(e) = output_metadata(ecx,
164164
&target_triple,
165-
&crate_name.name.as_str(),
165+
&crate_name.as_str(),
166166
diagnostics) {
167167
ecx.span_bug(span, &format!(
168168
"error writing metadata for triple `{}` and crate `{}`, error: {}, \

src/libsyntax/ext/expand.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -178,7 +178,7 @@ fn macro_bang_format(path: &ast::Path) -> ExpnFormat {
178178
if segment.ident.name != keywords::CrateRoot.name() &&
179179
segment.ident.name != keywords::DollarCrate.name()
180180
{
181-
path_str.push_str(&segment.ident.name.as_str())
181+
path_str.push_str(&segment.ident.as_str())
182182
}
183183
}
184184

@@ -1266,7 +1266,7 @@ impl<'a, 'b> Folder for InvocationCollector<'a, 'b> {
12661266
DirectoryOwnership::Owned { relative: None };
12671267
module.directory.push(&*path.as_str());
12681268
} else {
1269-
module.directory.push(&*item.ident.name.as_str());
1269+
module.directory.push(&*item.ident.as_str());
12701270
}
12711271
} else {
12721272
let path = self.cx.parse_sess.codemap().span_to_unmapped_path(inner);

src/libsyntax/ext/tt/macro_parser.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -573,7 +573,7 @@ fn inner_parse_loop<'a>(
573573
TokenTree::MetaVarDecl(_, _, id) => {
574574
// Built-in nonterminals never start with these tokens,
575575
// so we can eliminate them from consideration.
576-
if may_begin_with(&*id.name.as_str(), token) {
576+
if may_begin_with(&*id.as_str(), token) {
577577
bb_items.push(item);
578578
}
579579
}
@@ -742,7 +742,7 @@ pub fn parse(
742742
let match_cur = item.match_cur;
743743
item.push_match(
744744
match_cur,
745-
MatchedNonterminal(Rc::new(parse_nt(&mut parser, span, &ident.name.as_str()))),
745+
MatchedNonterminal(Rc::new(parse_nt(&mut parser, span, &ident.as_str()))),
746746
);
747747
item.idx += 1;
748748
item.match_cur += 1;

src/libsyntax/ext/tt/macro_rules.rs

+4-4
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,7 @@ fn generic_extension<'cx>(cx: &'cx mut ExtCtxt,
148148
};
149149
let mut p = Parser::new(cx.parse_sess(), tts, Some(directory), true, false);
150150
p.root_module_name = cx.current_expansion.module.mod_path.last()
151-
.map(|id| id.name.as_str().to_string());
151+
.map(|id| id.as_str().to_string());
152152

153153
p.process_potential_macro_variable();
154154
// Let the context choose how to interpret the result.
@@ -730,7 +730,7 @@ fn check_matcher_core(sess: &ParseSess,
730730
'each_last: for token in &last.tokens {
731731
if let TokenTree::MetaVarDecl(_, ref name, ref frag_spec) = *token {
732732
for next_token in &suffix_first.tokens {
733-
match is_in_follow(next_token, &frag_spec.name.as_str()) {
733+
match is_in_follow(next_token, &frag_spec.as_str()) {
734734
Err((msg, help)) => {
735735
sess.span_diagnostic.struct_span_err(next_token.span(), &msg)
736736
.help(help).emit();
@@ -768,7 +768,7 @@ fn check_matcher_core(sess: &ParseSess,
768768

769769
fn token_can_be_followed_by_any(tok: &quoted::TokenTree) -> bool {
770770
if let quoted::TokenTree::MetaVarDecl(_, _, frag_spec) = *tok {
771-
frag_can_be_followed_by_any(&frag_spec.name.as_str())
771+
frag_can_be_followed_by_any(&frag_spec.as_str())
772772
} else {
773773
// (Non NT's can always be followed by anthing in matchers.)
774774
true
@@ -893,7 +893,7 @@ fn has_legal_fragment_specifier(sess: &ParseSess,
893893
tok: &quoted::TokenTree) -> Result<(), String> {
894894
debug!("has_legal_fragment_specifier({:?})", tok);
895895
if let quoted::TokenTree::MetaVarDecl(_, _, ref frag_spec) = *tok {
896-
let frag_name = frag_spec.name.as_str();
896+
let frag_name = frag_spec.as_str();
897897
let frag_span = tok.span();
898898
if !is_legal_fragment_specifier(sess, features, attrs, &frag_name, frag_span) {
899899
return Err(frag_name.to_string());

src/libsyntax/parse/parser.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -6054,7 +6054,7 @@ impl<'a> Parser<'a> {
60546054
self.directory.path.to_mut().push(&path.as_str());
60556055
self.directory.ownership = DirectoryOwnership::Owned { relative: None };
60566056
} else {
6057-
self.directory.path.to_mut().push(&id.name.as_str());
6057+
self.directory.path.to_mut().push(&id.as_str());
60586058
}
60596059
}
60606060

@@ -6075,7 +6075,7 @@ impl<'a> Parser<'a> {
60756075
// `./<id>.rs` and `./<id>/mod.rs`.
60766076
let relative_prefix_string;
60776077
let relative_prefix = if let Some(ident) = relative {
6078-
relative_prefix_string = format!("{}{}", ident.name.as_str(), path::MAIN_SEPARATOR);
6078+
relative_prefix_string = format!("{}{}", ident.as_str(), path::MAIN_SEPARATOR);
60796079
&relative_prefix_string
60806080
} else {
60816081
""

src/libsyntax/parse/token.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -341,7 +341,7 @@ impl Token {
341341
/// string slice.
342342
pub fn is_ident_named(&self, name: &str) -> bool {
343343
match self.ident() {
344-
Some((ident, _)) => ident.name.as_str() == name,
344+
Some((ident, _)) => ident.as_str() == name,
345345
None => false
346346
}
347347
}

src/libsyntax/print/pprust.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -724,7 +724,7 @@ pub trait PrintState<'a> {
724724
if segment.ident.name != keywords::CrateRoot.name() &&
725725
segment.ident.name != keywords::DollarCrate.name()
726726
{
727-
self.writer().word(&segment.ident.name.as_str())?;
727+
self.writer().word(&segment.ident.as_str())?;
728728
} else if segment.ident.name == keywords::DollarCrate.name() {
729729
self.print_dollar_crate(segment.ident.span.ctxt())?;
730730
}
@@ -2373,7 +2373,7 @@ impl<'a> State<'a> {
23732373
if ident.is_raw_guess() {
23742374
self.s.word(&format!("r#{}", ident))?;
23752375
} else {
2376-
self.s.word(&ident.name.as_str())?;
2376+
self.s.word(&ident.as_str())?;
23772377
}
23782378
self.ann.post(self, NodeIdent(&ident))
23792379
}

src/libsyntax/test.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -647,7 +647,7 @@ fn path_name_i(idents: &[Ident]) -> String {
647647
let mut path_name = "".to_string();
648648
let mut idents_iter = idents.iter().peekable();
649649
while let Some(ident) = idents_iter.next() {
650-
path_name.push_str(&ident.name.as_str());
650+
path_name.push_str(&ident.as_str());
651651
if let Some(_) = idents_iter.peek() {
652652
path_name.push_str("::")
653653
}

src/libsyntax_ext/concat_idents.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ pub fn expand_syntax_ext<'cx>(cx: &'cx mut ExtCtxt,
4949
} else {
5050
match *e {
5151
TokenTree::Token(_, token::Ident(ident, _)) =>
52-
res_str.push_str(&ident.name.as_str()),
52+
res_str.push_str(&ident.as_str()),
5353
_ => {
5454
cx.span_err(sp, "concat_idents! requires ident args.");
5555
return DummyResult::expr(sp);

src/libsyntax_ext/deriving/mod.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@ fn hygienic_type_parameter(item: &Annotatable, base: &str) -> String {
136136
ast::ItemKind::Enum(_, ast::Generics { ref params, .. }) => {
137137
for param in params.iter() {
138138
if let ast::GenericParam::Type(ref ty) = *param{
139-
typaram.push_str(&ty.ident.name.as_str());
139+
typaram.push_str(&ty.ident.as_str());
140140
}
141141
}
142142
}

src/libsyntax_ext/format.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -166,7 +166,7 @@ fn parse_args(ecx: &mut ExtCtxt,
166166
return None;
167167
}
168168
};
169-
let name: &str = &ident.name.as_str();
169+
let name: &str = &ident.as_str();
170170

171171
panictry!(p.expect(&token::Eq));
172172
let e = panictry!(p.parse_expr());

0 commit comments

Comments
 (0)