15 Commits

Author SHA1 Message Date
Matthew Barr
4fc11cfc65 Hamming: GraphTruth and corpus gen support 2018-01-19 06:12:28 -05:00
Justin Viiret
9cf66b6ac9 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.
2017-08-21 11:14:55 +10:00
Justin Viiret
bc232d272f ng_find_matches: speed up edge lookups
Improves the performance of step() on graphs with vertices with large
degree.
2017-08-21 11:12:36 +10:00
Justin Viiret
834aebe8b6 ng_find_matches: use wd.active for accepts too 2017-04-26 15:17:03 +10:00
Justin Viiret
bae8ebc62d ng_find_matches: speed up gather...ByDepth 2017-04-26 15:17:03 +10:00
Justin Viiret
749e3e64b9 getMatches: simplify 2017-04-26 15:17:03 +10:00
Justin Viiret
c81c30b144 findMatches: persist working data 2017-04-26 15:17:03 +10:00
Justin Viiret
cc1191d94c getSuccessors: reuse a vector<State> for output 2017-04-26 15:17:03 +10:00
Justin Viiret
7ad21500c4 getActiveStates: return a sorted, uniqued vector 2017-04-26 15:17:03 +10:00
Justin Viiret
7ca81ff530 ng_find_matches: limit how big we're willing to go
Tests which require tracking more than 15K states (including edit
distance states) are very, very slow.
2017-04-26 15:16:22 +10:00
Anatoly Burakov
4c2b7cc04f Add support for approximate matching in ue2collider 2017-04-26 15:11:51 +10:00
Alex Coyte
e1e9010cac Introduce custom adjacency-list based graph 2016-12-02 11:31:33 +11:00
Alex Coyte
691b08d170 use NGHolder::foo in favour of NFAGraph::foo 2016-08-10 14:52:56 +10:00
Justin Viiret
5dd4aa9c13 ng_find_matches: Simplify and improve performance
Improve performance by using bitsets rather than sets of vertex
indices.
2016-04-20 13:34:55 +10:00
Matthew Barr
904e436f11 Initial commit of Hyperscan 2015-10-20 09:13:35 +11:00