jackson-dataformats-binary icon indicating copy to clipboard operation
jackson-dataformats-binary copied to clipboard

Allow exposing CBOR "undefined" value as `JsonToken.VALUE_EMBEDDED_OBJECT` (with embedded value of `null`)

Open cowtowncoder opened this issue 6 years ago • 0 comments

(note: continuation from #93)

Although coercing "undefined" into null token works to some degree, it seems better to allow exposing it in a way that allows caller to distinguish between real null and "undefined". Since we have to do this via Jackson API, tokens, the most straight-forward reliable mean is to either:

  1. Return JsonToken.VALUE_EMBEDDED_OBJECT, with "value" of null
  2. Add a new method in CBORParser to let caller determine if last token returned was for "undefined" (CBOR encoded value of 0xF7)

Or, better yet, allow both.

For backwards compatibility (since 2.9.6, "undefined" has been returned as JsonToken.VALUE_NULL), we need a new CBORParser.Feature to enable (1). New method (name To Be Determined), however, will be available in either case, regardless of token chosen to represent it.

cowtowncoder avatar May 30 '18 05:05 cowtowncoder