Subject: Re: [boost] C++ Networking Library Release 0.5
From: James Mansion (james_at_[hidden])
Date: 2010-02-01 16:28:32
Peter Petrov wrote:
> First, Spirit is unsuitable for the task - it consumes all the input in one
> pass, and doesn't support the case when the HTTP request arrives in more
> than one read. The real solution is a state-machine-based parser, just like
> the one in the Asio HTTP example.
I'd agree with your preference for a passive state-machine based
handler, and also that Ragel is an
excellent tool - but surely the alternative is 'just' that the spirit
parser must block waiting for more
input. Either using a thread or a coroutine.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk