deadpixi / ergex

The Ergex Regular Expression Library

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Ergex's regex API should match the Aho-Corasick API

deadpixi opened this issue · comments

The push-oriented implementation of Aho-Corasick returns an iterator over the matches it finds. The public regex API instead reports matches via callbacks. I'd like to see the public API also return an iterator.

Something like:

for match in scratch.push(bytes) {
    // do things
}

A big question is how to handle scratch.finish, which consumes the scratch but also might return matches.

that could be handled using Iterator::collect. the only difference being that it would be possible to get a collection with 0 elements if there are no stored matches in the instance. I admit I haven't seen much of how this library works, but I'm throwing this idea out there.

you could implement drop on the iterator in such a way that it also "finishes" the associated scratch struct...