]> git.ipfire.org Git - thirdparty/vectorscan.git/commitdiff
accel_dfa_build_strat: use flat_set
authorJustin Viiret <justin.viiret@intel.com>
Thu, 10 Aug 2017 01:29:19 +0000 (11:29 +1000)
committerMatthew Barr <matthew.barr@intel.com>
Mon, 18 Sep 2017 03:26:05 +0000 (13:26 +1000)
src/nfa/accel_dfa_build_strat.cpp

index 928e078e2df9c9e710804e2e3e4e27792605556f..1f1b5e027da4470fff8195065220a1057163f168 100644 (file)
@@ -226,16 +226,16 @@ bool has_self_loop(dstate_id_t s, const raw_dfa &raw) {
 }
 
 static
-vector<u16> find_nonexit_symbols(const raw_dfa &rdfa,
-                                        const CharReach &escape) {
-    set<u16> rv;
+flat_set<u16> find_nonexit_symbols(const raw_dfa &rdfa,
+                                   const CharReach &escape) {
+    flat_set<u16> rv;
     CharReach nonexit = ~escape;
-    for (auto i = nonexit.find_first(); i != CharReach::npos;
+    for (auto i = nonexit.find_first(); i != nonexit.npos;
          i = nonexit.find_next(i)) {
         rv.insert(rdfa.alpha_remap[i]);
     }
 
-    return vector<u16>(rv.begin(), rv.end());
+    return rv;
 }
 
 static
@@ -289,7 +289,7 @@ dstate_id_t get_sds_or_proxy(const raw_dfa &raw) {
 
 static
 set<dstate_id_t> find_region(const raw_dfa &rdfa, dstate_id_t base,
-                                    const AccelScheme &ei) {
+                             const AccelScheme &ei) {
     DEBUG_PRINTF("looking for region around %hu\n", base);
 
     set<dstate_id_t> region = {base};