How to set JSON_TYPE in 2.0.65
nrgyzer
nrgyzer at gmail.com
Thu Apr 3 09:42:16 PDT 2014
On Monday, 31 March 2014 at 19:05:11 UTC, Matt Soucy wrote:
> On 03/31/2014 02:59 PM, nrgyzer wrote:
>> Hi guys,
>>
>> I updated my dmd version from 2.0.63 to 2.0.65 and having some
>> trouble
>> with my JSON-definitions. The code below worked in 2.0.63 but
>> not in
>> 2.0.65:
>>
>> JSONValue oJson = JSONValue();
>> oJson.type = JSON_TYPE.OBJECT; // FAILS
>> oJson.object["myEntry"] = JSONValue();
>> oJson.object["myEntry"].type = JSON_TYPE.STRING; // FAILS
>> oJSon.object["myEntry"].str = "MyText";
>>
>> Since the type property is a constant in 2.0.65, I've no idea
>> how I can
>> set the type for my JSON entries. I already tried the
>> following:
>>
>> JSONValue oJson = JSONValue(JSON_TYPE.OBJECT);
>> oJson.object["myEntry"] = JSONValue(JSON_TYPE.STRING);
>> oJSon.object["myEntry"].str = "MyText";
>>
>> But this gives me something like: "JSONValue is not an object".
>>
>> Any idea how I can set the corresponding value type?
> I believe that this was simplified in recent releases, so one
> only needs
> to do the following:
>
> JSONValue oJson;
> oJson.object["myEntry"] = "MyText";
>
> (Untested but I believe this is how it's supposed to be now)
Thanks Matt, but this doesn't work because the object-property
checks the type of the JSONValue and throws the corresponding
exception. But the following works:
JSONValue oJson = ["myEntry" : "MyText"];
oJson.object["myEntry_2"] = "MyText_2";
...
Thanks to all!
More information about the Digitalmars-d-learn
mailing list