
This change updates the js-lite binding to support arrays of nullables. The change checks a bitfield in the serialized format when decoding and encodes the same bitfield when serializing. This is only used for arrays of nullable primitives. The wire format is as follows: | header | | bitfield | | padding | | values | The bitfield dictates whether or not a value in the array is null or not. Note that null values are still serialized (the value that is used is up to the implementation). Working: C++ Js Not working: Java Ts Change-Id: I657e8ab381181dcce1829ed7c7f7e3420d84935f Bug: 657632 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5280977 Reviewed-by: Rebekah Potter <rbpotter@chromium.org> Reviewed-by: Yuzhu Shen <yzshen@chromium.org> Commit-Queue: Fred Shih <ffred@chromium.org> Reviewed-by: Daniel Cheng <dcheng@chromium.org> Reviewed-by: Peter Beverloo <peter@chromium.org> Cr-Commit-Position: refs/heads/main@{#1288235}