Boost logo

Boost :

From: Scott Woods (scottw_at_[hidden])
Date: 2005-09-15 16:19:59

----- Original Message -----
From: "Felipe Magno de Almeida" <felipe.m.almeida_at_[hidden]>
To: <boost_at_[hidden]>
Sent: Thursday, September 15, 2005 7:02 PM
Subject: Re: [boost] [Review] xpressive

> > What I want is a stateful regular expression-based decoder object
> > (since in theory it's just a state machine and can remember its current
> > state). I can feed it more input which will cause more state
> > transitions, and it will tell me when it reaches a terminal state. I
> > never have to buffer more input than the block just read because
> > earlier input will have been fully consumed by the decoder.

Exactly. I only suspected there was some difficulty here. Thanks
for the full story.

> IMO, it would be needed the possibility to have more than one grammar,
> one for success and another for failure(Would be interesting to have
> the possibility for more than two), until no-one has a match continue
> to wait for more data...

Sorry. Don't follow the duplex grammar idea.

> >
> > As I said, this is an area I am very interested in exploring further
> > when time permits (and not just in relation to regular expressions, but
> > also things like Boost.Serialization), but that definitely belongs in
> > its own thread.
> IMO, it should be another library that should be able to interact with
> AIO, spirit and xpressive. I already own some helper classes for
> something like this, when they're called from the AIO components, they
> forward to the grammars and verify success or failure, but they re-do
> all the grammar processing again. I would be willing to volunteer to
> help in a library like this, since I use it a lot for processing
> protocols with AIO(sockets) and spirit and already have some code
> writed. However, I dont have enough time to create such a library all
> by myself.

 I'm in a very similar position. Except I have been forced to write my
own version of AIO and regex. If that experience is any use then I'm
pleased to contribute.


Boost list run by bdawes at, gregod at, cpdaniel at, john at