]> git.lizzy.rs Git - rust.git/commitdiff
Avoid unnecessary interning in `DefPathData::as_interned_str()`.
authorNicholas Nethercote <nnethercote@mozilla.com>
Fri, 17 May 2019 08:47:49 +0000 (18:47 +1000)
committerNicholas Nethercote <nnethercote@mozilla.com>
Fri, 17 May 2019 10:10:52 +0000 (20:10 +1000)
src/librustc/hir/map/definitions.rs
src/libsyntax_pos/symbol.rs

index dc6cddc89f9128e490dc49297553ffedae6916f5..9cb85c4db47579f8403de8d8369a5de6138226cd 100644 (file)
@@ -17,7 +17,7 @@
 use std::hash::Hash;
 use syntax::ast;
 use syntax::ext::hygiene::Mark;
-use syntax::symbol::{Symbol, InternedString};
+use syntax::symbol::{Symbol, sym, InternedString};
 use syntax_pos::{Span, DUMMY_SP};
 use crate::util::nodemap::NodeMap;
 
@@ -584,16 +584,16 @@ pub fn as_interned_str(&self) -> InternedString {
                 return name
             }
             // note that this does not show up in user printouts
-            CrateRoot => "{{crate}}",
-            Impl => "{{impl}}",
-            Misc => "{{misc}}",
-            ClosureExpr => "{{closure}}",
-            Ctor => "{{constructor}}",
-            AnonConst => "{{constant}}",
-            ImplTrait => "{{opaque}}",
+            CrateRoot => sym::double_braced_crate,
+            Impl => sym::double_braced_impl,
+            Misc => sym::double_braced_misc,
+            ClosureExpr => sym::double_braced_closure,
+            Ctor => sym::double_braced_constructor,
+            AnonConst => sym::double_braced_constant,
+            ImplTrait => sym::double_braced_opaque,
         };
 
-        Symbol::intern(s).as_interned_str()
+        s.as_interned_str()
     }
 
     pub fn to_string(&self) -> String {
index 12e7403d0744de80ff8b6692d49de1db11e418b3..01b126f48b327151c0e988deec216b1a8372295e 100644 (file)
         document_private_items,
         dotdoteq_in_patterns,
         dotdot_in_tuple_patterns,
+        double_braced_crate: "{{crate}}",
+        double_braced_impl: "{{impl}}",
+        double_braced_misc: "{{misc}}",
+        double_braced_closure: "{{closure}}",
+        double_braced_constructor: "{{constructor}}",
+        double_braced_constant: "{{constant}}",
+        double_braced_opaque: "{{opaque}}",
         dropck_eyepatch,
         dropck_parametricity,
         drop_types_in_const,