- From: Joshua Bell <notifications@github.com>
- Date: Wed, 22 Mar 2017 14:18:49 -0700
- To: w3c/IndexedDB <IndexedDB@noreply.github.com>
- Cc: Subscribed <subscribed@noreply.github.com>
- Message-ID: <w3c/IndexedDB/pull/171@github.com>
So far as I can tell, this is the minimum set of changes needed to replace uses of StructuredClone with StructuredSerialize/StructuredDeserialize, per #170 Note that when `put()` (etc) is called that this does not simply serialize then operate on the output record - the record is immediately deserialized to a _clone_ in an abstract _targetRealm_ so that subsequent operations (extract a key, inject a key, etc) are not updated. I added non-normative details explaining this at the various sites. (Somewhat coincidentally, that's how Blink is actually implemented, since the output of serialization is a opaque set of bytes rather than an easily-traversed structure.) The definition of operations that operate on the _clone_ could be changed to operate on the record instead. This would require redoing the "extract a key from a value" and "inject a key into a value" section (replace "value" with "record"), and duplicating the "convert a key to a value" and "convert a value to a key" steps with "record" variants. You can view, comment on, or merge this pull request online at: https://github.com/w3c/IndexedDB/pull/171 -- Commit Summary -- * Use StructuredSerialize/StructuredDeserialize. For #170 -- File Changes -- M index.bs (106) M index.html (331) -- Patch Links -- https://github.com/w3c/IndexedDB/pull/171.patch https://github.com/w3c/IndexedDB/pull/171.diff -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/w3c/IndexedDB/pull/171
Received on Wednesday, 22 March 2017 21:19:28 UTC