Boost logo

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