Repository navigation
Separate the read and write IDs of array plugins - #11057
connortsui20 wants to merge 2 commits into
Conversation
Merging this PR will regress 1 benchmark2 warnings
Warning Please fix the performance issues or acknowledge them on CodSpeed. Performance Changes
Tip Investigate this regression by commenting Comparing |
|
What are examples of the difference? |
Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
851cd14 to
9556b96
Compare
|
@joseph-isaacs look at the next PR #11002 |
Tracking Issue: #10701
Bottom of the decimal
Widenstack. #11002 builds on it. No release gate.Summary
A plugin can need another encoding's wire form without taking over its reader.
serialized_ids()currently serves both jobs, so aWidenwriter cannot emit a narrow decimal node while preserving the decimal reader.Changes
Reader registration now uses
read_ids(), while serialization validates its output againstwrite_ids(). A writing session does not need a reader for every ID it writes. Existing plugins keep their current IDs, and tests cover reader ownership and the two validation contracts.LayoutPluginis unchanged.API Changes
Replaces
ArrayPlugin::serialized_ids()with requiredread_ids()andwrite_ids()methods, with no defaults. Read IDs stay ordered oldest to newest.