Boost logo

Boost Users :

Subject: Re: [Boost-users] [property tree][json]how to create empty array?
From: Sebastian Redl (sebastian.redl_at_[hidden])
Date: 2011-03-12 12:39:59


On 12.03.2011, at 18:26, Kulti wrote:

> Hi, all!
>
> It's possible to get following output from
> boost::property_tree::json_parser::write_json ?
>
> {
> "id": "id",
> "method": "test_method",
> "params": []
> }
>
> I know how to create array with some items, but when I try to create
> empty array, I've get "params": ""

Sorry, that's not possible. The fundamental problem is that PTree is only a rough match to JSON. PTree can have more complicated nodes, but JSON is typed. So when serializing a PTree as JSON, the serializer is guessing at the correct serialization form for each node: nodes with only named children become objects, those with only unnamed children become arrays, all others become strings.

A PTree with a different data type than string could be a better match, but the current JSON functionality is not usable with such a tree.

Sebastian


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net