mirror of
https://github.com/VectorCamp/vectorscan.git
synced 2025-06-28 16:41:01 +03:00
Merge functions no longer need transfer function
This commit is contained in:
parent
319d47ae4f
commit
fd7f30a5b5
@ -2482,10 +2482,6 @@ struct MergeMcClellan {
|
|||||||
return mergeTwoDfas(d1, d2, DFA_MERGE_MAX_STATES, &rm, grey);
|
return mergeTwoDfas(d1, d2, DFA_MERGE_MAX_STATES, &rm, grey);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void transfer(OutfixInfo &outfix, unique_ptr<raw_dfa> d) {
|
|
||||||
outfix.proto = move(d);
|
|
||||||
}
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
const ReportManager &rm;
|
const ReportManager &rm;
|
||||||
const Grey &grey;
|
const Grey &grey;
|
||||||
@ -2500,10 +2496,6 @@ struct MergeHaig {
|
|||||||
return attemptToMergeHaig({d1, d2}, limit);
|
return attemptToMergeHaig({d1, d2}, limit);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void transfer(OutfixInfo &outfix, unique_ptr<raw_som_dfa> d) {
|
|
||||||
outfix.proto = move(d);
|
|
||||||
}
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
const u32 limit; //!< state limit for merged result.
|
const u32 limit; //!< state limit for merged result.
|
||||||
};
|
};
|
||||||
@ -2550,7 +2542,7 @@ void pairwiseDfaMerge(vector<RawDfa *> &dfas,
|
|||||||
RawDfa *dfa_ptr = rdfa.get();
|
RawDfa *dfa_ptr = rdfa.get();
|
||||||
dfa_mapping[dfa_ptr] = dfa_mapping[*it];
|
dfa_mapping[dfa_ptr] = dfa_mapping[*it];
|
||||||
dfa_mapping.erase(*it);
|
dfa_mapping.erase(*it);
|
||||||
merge_func.transfer(winner, move(rdfa));
|
winner.proto = move(rdfa);
|
||||||
|
|
||||||
mergeOutfixInfo(winner, victim);
|
mergeOutfixInfo(winner, victim);
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user