mirror of
https://github.com/VectorCamp/vectorscan.git
synced 2025-06-28 16:41:01 +03:00
role aliasing: simplify hashRightRoleProperties
Using the full report set for a suffix as an input to this hash was very slow at scale.
This commit is contained in:
parent
b87590ce9d
commit
1267922ca7
@ -439,12 +439,16 @@ size_t hashRightRoleProperties(RoseVertex v, const RoseGraph &g) {
|
||||
hash_combine(val, hash_range(begin(props.reports), end(props.reports)));
|
||||
|
||||
if (props.suffix) {
|
||||
hash_combine(val, all_reports(props.suffix));
|
||||
if (props.suffix.graph) {
|
||||
hash_combine(val, num_vertices(*props.suffix.graph));
|
||||
const auto &suffix = props.suffix;
|
||||
if (suffix.castle) {
|
||||
hash_combine(val, suffix.castle->reach());
|
||||
hash_combine(val, suffix.castle->repeats.size());
|
||||
}
|
||||
if (props.suffix.haig) {
|
||||
hash_combine(val, hash_dfa(*props.suffix.haig));
|
||||
if (suffix.graph) {
|
||||
hash_combine(val, num_vertices(*suffix.graph));
|
||||
}
|
||||
if (suffix.haig) {
|
||||
hash_combine(val, hash_dfa(*suffix.haig));
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user