switch node lookup to StringPiece
authorEvan Martin <martine@danga.com>
Mon, 9 Jan 2012 21:30:09 +0000 (13:30 -0800)
committerEvan Martin <martine@danga.com>
Mon, 9 Jan 2012 21:30:09 +0000 (13:30 -0800)
src/state.cc
src/state.h

index 238674e..7e3aae8 100644 (file)
@@ -47,16 +47,16 @@ Edge* State::AddEdge(const Rule* rule) {
   return edge;
 }
 
-Node* State::GetNode(const string& path) {
+Node* State::GetNode(StringPiece path) {
   Node* node = LookupNode(path);
   if (node)
     return node;
-  node = new Node(path);
+  node = new Node(path.AsString());
   paths_[node->path()] = node;
   return node;
 }
 
-Node* State::LookupNode(const string& path) {
+Node* State::LookupNode(StringPiece path) {
   Paths::iterator i = paths_.find(path);
   if (i != paths_.end())
     return i->second;
index cdab131..72ced9f 100644 (file)
@@ -40,8 +40,8 @@ struct State {
 
   Edge* AddEdge(const Rule* rule);
 
-  Node* GetNode(const string& path);
-  Node* LookupNode(const string& path);
+  Node* GetNode(StringPiece path);
+  Node* LookupNode(StringPiece path);
   Node* SpellcheckNode(const string& path);
 
   void AddIn(Edge* edge, const string& path);