util: switch from Boost to std::unordered set/map

This commit replaces the ue2::unordered_{set,map} types with their STL
versions, with some new hashing utilities in util/hash.h. The new types
ue2_unordered_set<T> and ue2_unordered_map<Key, T> default to using the
ue2_hasher.

The header util/ue2_containers.h has been removed, and the flat_set/map
containers moved to util/flat_containers.h.
This commit is contained in:
Justin Viiret
2017-07-14 14:59:52 +10:00
committed by Matthew Barr
parent a425bb9b7c
commit 9cf66b6ac9
123 changed files with 1048 additions and 772 deletions

View File

@@ -45,6 +45,8 @@
#include "util/graph_range.h"
#include "util/ue2string.h"
#include <unordered_set>
using namespace std;
namespace ue2 {
@@ -196,7 +198,7 @@ bool splitOffLiterals(NG &ng, NGHolder &g) {
bool changed = false;
set<NFAVertex> dead;
ue2::unordered_set<NFAVertex> unanchored; // for faster lookup.
unordered_set<NFAVertex> unanchored; // for faster lookup.
insert(&unanchored, adjacent_vertices(g.startDs, g));
// Anchored literals.