between

Match pattern begin func end, return the result of func.

version(legacy)
alias between(alias begin, alias func, alias end) = pipe!(seq!(discard!begin, func, discard!end), wrap!"move(a[1])")

Examples

import sdpc.parsers;
auto i = "(asdf)";
auto r = between!(token!"(", token!"asdf", token!")")(i);
assert(r.ok);
assert(!r.cont.length);

Meta