|
Boost : |
Subject: Re: [boost] JSON Parsing Library for GSoC 14
From: Bjorn Reese (breese_at_[hidden])
Date: 2014-03-07 05:28:18
On 03/06/2014 04:38 PM, Bjorn Reese wrote:
> On 03/06/2014 02:35 PM, TONGARI J wrote:
>
>> I'm confused. Your json::iarchive takes iterators not istream.
>> I see there's stream_oarchive but no stream_iarchive, something I missed?
>
> I have not needed stream_iarchive so far. But you are right, it should
> be added.
It just occurred to me that the term "streaming" is ambiguous. When we
talk about streaming parsers there are two interpretations:
1. The parser will read from an input stream and deliver the results
in a DOM (or via a builder design pattern like SAX-style events.)
The parser may block while waiting for the next data on the input
stream.
2. The parser only returns the next element, so you have to put a loop
around it to get a full parse. This is the StAX-style parsing [1].
When I mentioned that protoc is a streaming parser, I was thinking about
the second category, whereas the stream archives belong to the first
category, so I see the confusion now.
I am going to change my vocabulary accordingly and refer to the second
category as pull parsers from now on.
[1] http://en.wikipedia.org/wiki/StAX
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk