mirror of
https://github.com/VectorCamp/vectorscan.git
synced 2025-11-18 02:00:36 +03:00
violet: initial implementation
This commit is contained in:
@@ -100,7 +100,12 @@ void splitLHS(const NGHolder &base, const vector<NFAVertex> &pivots,
|
||||
add_edge((*lhs_map)[pivot], lhs->accept, *lhs);
|
||||
}
|
||||
|
||||
pruneUseless(*lhs);
|
||||
/* should do the renumbering unconditionally as we know edges are already
|
||||
* misnumbered */
|
||||
pruneUseless(*lhs, false);
|
||||
renumber_edges(*lhs);
|
||||
renumber_vertices(*lhs);
|
||||
|
||||
filterSplitMap(*lhs, lhs_map);
|
||||
|
||||
switch (base.kind) {
|
||||
@@ -148,7 +153,12 @@ void splitRHS(const NGHolder &base, const vector<NFAVertex> &pivots,
|
||||
assert(contains(*rhs_map, pivot));
|
||||
add_edge(rhs->start, (*rhs_map)[pivot], *rhs);
|
||||
}
|
||||
pruneUseless(*rhs);
|
||||
|
||||
/* should do the renumbering unconditionally as we know edges are already
|
||||
* misnumbered */
|
||||
pruneUseless(*rhs, false);
|
||||
renumber_edges(*rhs);
|
||||
renumber_vertices(*rhs);
|
||||
filterSplitMap(*rhs, rhs_map);
|
||||
|
||||
switch (base.kind) {
|
||||
|
||||
Reference in New Issue
Block a user