feat(scan): add buffer protocol support for zero-copy scanning #251
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
Database_scanto accept any buffer protocol object (memoryview,bytearray, etc.) instead of requiring exactbytesobjectsStream_scanto usey*format specifier for buffer protocol supportmemoryviewandbytearrayscanning in block, stream, and chimera modesThis allows users to scan data without copying when they already have it in a buffer:
Closes #250
Test plan
test_chimera_scan_memoryview- chimera mode with memoryviewtest_block_scan_memoryview- block mode with memoryviewtest_block_scan_bytearray- block mode with bytearraytest_stream_scan_memoryview- stream mode with memoryviewtest_stream_scan_bytearray- stream mode with bytearray