Remove no longer needed eCloseCache
This commit is contained in:
parent
f3e0eb71d5
commit
23437e8f23
|
@ -35,8 +35,7 @@ namespace lxs {
|
||||||
std::map<State, std::set<State> > epsilonTransitions;
|
std::map<State, std::set<State> > epsilonTransitions;
|
||||||
virtual std::set<State> eClose(State) const;
|
virtual std::set<State> eClose(State) const;
|
||||||
|
|
||||||
private:
|
virtual std::set<State> eClose(State) const;
|
||||||
mutable std::map<State, std::set<State> > eCloseCache;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
std::string toDot(const DFA& d);
|
std::string toDot(const DFA& d);
|
||||||
|
|
|
@ -98,10 +98,6 @@ namespace lxs {
|
||||||
}
|
}
|
||||||
|
|
||||||
std::set<State> ENFA::eClose(State s) const {
|
std::set<State> ENFA::eClose(State s) const {
|
||||||
auto cachedIt = eCloseCache.find(s);
|
|
||||||
if (cachedIt != eCloseCache.end()) {
|
|
||||||
return cachedIt->second;
|
|
||||||
}
|
|
||||||
std::set<State> states;
|
std::set<State> states;
|
||||||
std::queue<State> statequeue;
|
std::queue<State> statequeue;
|
||||||
statequeue.push(s);
|
statequeue.push(s);
|
||||||
|
@ -118,7 +114,7 @@ namespace lxs {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return eCloseCache[s] = states;
|
return states;
|
||||||
}
|
}
|
||||||
|
|
||||||
std::set<State> NFA::eClose(State s) const {
|
std::set<State> NFA::eClose(State s) const {
|
||||||
|
|
Loading…
Reference in New Issue