Added support for parsing JSON null value.

These cause the field in question to be skipped.

Bug: 16550393
Change-Id: Id05104e89818ee773b8a91fdcc86e18061b9a82f
Tested: on Linux.
This commit is contained in:
Wouter van Oortmerssen
2016-01-08 15:18:51 -08:00
parent e848137ded
commit 049f3f7907
4 changed files with 30 additions and 16 deletions

View File

@@ -166,6 +166,7 @@ root_type Monster;
<li>It accepts field names with and without quotes, like many JSON parsers already do. It outputs them without quotes as well, though can be made to output them using the <code>strict_json</code> flag.</li>
<li>If a field has an enum type, the parser will recognize symbolic enum values (with or without quotes) instead of numbers, e.g. <code>field: EnumVal</code>. If a field is of integral type, you can still use symbolic names, but values need to be prefixed with their type and need to be quoted, e.g. <code>field: "Enum.EnumVal"</code>. For enums representing flags, you may place multiple inside a string separated by spaces to OR them, e.g. <code>field: "EnumVal1 EnumVal2"</code> or <code>field: "Enum.EnumVal1 Enum.EnumVal2"</code>.</li>
<li>Similarly, for unions, these need to specified with two fields much like you do when serializing from code. E.g. for a field <code>foo</code>, you must add a field <code>foo_type: FooOne</code> right before the <code>foo</code> field, where <code>FooOne</code> would be the table out of the union you want to use.</li>
<li>A field that has the value <code>null</code> (e.g. <code>field: null</code>) is intended to have the default value for that field (thus has the same effect as if that field wasn't specified at all).</li>
</ul>
<p>When parsing JSON, it recognizes the following escape codes in strings:</p>
<ul>