You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Jun 10, 2025. It is now read-only.
dprokoptsev edited this page Dec 15, 2010
·
3 revisions
Don't make me think!
A brief summary of changes needed for people to use Pire without reading any documentation :)
Easy syntax
Add a AnyScanner class to transform static Scanner polymorphism into dynamic one. Compilation into AnyScanner should try to determine FSM and produce a DFA; if failed, switch to NFA.
Wrap it into Regexp class, possessing bool Matches(const std::string&).
Add a holder for Feature and Encoding, possessing operator|().
Detect patterns like /.*^foo/ and transform them into /^foo/, since people constantly Surround() thier patterns and heavily use anchors where they actually do not need any surrounding.