| Commit message (Collapse) | Author | Age |
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
Redesign library API around highly general regex-based transformations.
Instead of specifying a string to substitute for each match, you
now execute an entire function over the match (and over nonmatching
regions as well). The resulting C++ code is much simpler, with more
functionality pushed into Ur, and the engine now supports certain
types of regex transformations needed to mimic Perl.
|
|
|
|
|
| |
This brings JavaScript’s behaviour into line with C++’s –
replacements should be global.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
That’s what the browser uses, so use it on the server side for
consistency.
|
|
|
|
|
|
| |
Replace the two-step compile/match process with a single
compile-and-match one to avoid issues with server-client representation
incompatibility. Use the browser regex engine on the client side.
|
| |
|
|
|
|
| |
Also fix a fencepost error in uw_Regex__FFI_do_match.
|
|
|
|
|
|
| |
Boost provides numeric_cast, which is much better than what I was using for
safe numeric type conversion. This does introduce a Boost dependency, but that
tends to be true of most nontrivial C++ programs, so it’s pretty reasonable.
|
|
|
|
|
|
| |
Switch to using the C++11 regex library for better portability and ease
of use. As an added bonus, this should make it easier to implement
regex substitution.
|
| |
|
| |
|
|
Wrap glibc’s regex engine to allow matching and group capture in POSIX
extended regular expressions.
It might be worth rewriting this in terms of the C++11 regex engine;
it’s more featureful and more pleasant to use, although it would require
more casting. (C can’t represent the std::regex type, so I’d need to
use some void pointers.)
|