about summary refs log tree commit diff
path: root/src/libsyntax/parse/token.rs
diff options
context:
space:
mode:
authorPaul Stansifer <paul.stansifer@gmail.com>2012-08-02 14:33:26 -0700
committerPaul Stansifer <paul.stansifer@gmail.com>2012-08-22 14:59:24 -0700
commit9a7890d73af5ebe4bf862fa727427e290da1391b (patch)
treeab7db3f5f973934aed69d3eb0c7e79c18ccf7732 /src/libsyntax/parse/token.rs
parent744fea1a4f1b826def484aa4584e939fa272a8c3 (diff)
downloadrust-9a7890d73af5ebe4bf862fa727427e290da1391b.tar.gz
rust-9a7890d73af5ebe4bf862fa727427e290da1391b.zip
Centralize ident interner generation.
Diffstat (limited to 'src/libsyntax/parse/token.rs')
-rw-r--r--src/libsyntax/parse/token.rs8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/libsyntax/parse/token.rs b/src/libsyntax/parse/token.rs
index 82f61b7ed3e..a1309e3ecef 100644
--- a/src/libsyntax/parse/token.rs
+++ b/src/libsyntax/parse/token.rs
@@ -277,6 +277,14 @@ pure fn is_bar(t: token) -> bool {
     match t { BINOP(OR) | OROR => true, _ => false }
 }
 
+type ident_interner = util::interner::interner<@~str>;
+
+fn mk_ident_interner() -> ident_interner {
+    let rv = @interner::mk::<@~str>(|x| str::hash(*x),
+                                    |x,y| str::eq(*x, *y));
+    rv
+}
+
 /**
  * All the valid words that have meaning in the Rust language.
  *