Skip to content

feat: Duplicate functions in ProtoWriterTools.java - #912

Open
ldintr wants to merge 1 commit into
ldintr-dupeProtoParserfrom
ldintr-dupeProtoWriter
Open

feat: Duplicate functions in ProtoWriterTools.java#912
ldintr wants to merge 1 commit into
ldintr-dupeProtoParserfrom
ldintr-dupeProtoWriter

Conversation

@ldintr

@ldintr ldintr commented Aug 31, 2026

Copy link
Copy Markdown
Contributor

Mirrors the previous commit for writes. Also adds placeholder write(T, PbjWriter) stubs to Codec/ProtoWriter — scaffolding only, bodies deferred.

Overview: PbjReader/PbjWriter are a leaner, buffer-reusing alternative to the existing ReadableSequentialData/WritableSequentialData read/write path used by Codec, ProtoParserTools/ProtoWriterTools, and the pbj-compiler generators. They reuse an internal ~16KB (L1-cache-sized) buffer across many parse/write calls instead of allocating per call, avoid checked-exception-based control flow by recording a sticky internal error code instead, and split hot-path operations (e.g. zigzag vs. non-zigzag varints, direct UTF-8 decode into a reusable char[]) into dedicated fast methods.

Signed-off-by: ldintr <levo.d@swirldslabs.com>
@ldintr ldintr self-assigned this Aug 31, 2026
@ldintr
ldintr requested review from a team as code owners August 31, 2026 16:43
@github-actions

Copy link
Copy Markdown

JUnit Test Report

   522 files  ±0     522 suites  ±0   28s ⏱️ -1s
 1 639 tests ±0   1 635 ✅ ±0   4 💤 ±0  0 ❌ ±0 
10 857 runs  ±0  10 829 ✅ ±0  28 💤 ±0  0 ❌ ±0 

Results for commit 834ac47. ± Comparison against base commit b93654b.

@github-actions

Copy link
Copy Markdown

Integration Test Report

    428 files      428 suites   15m 25s ⏱️
115 048 tests 115 048 ✅ 0 💤 0 ❌
115 292 runs  115 292 ✅ 0 💤 0 ❌

Results for commit 834ac47.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant