Skip to content

Cs refactor#154

Merged
Velli20 merged 3 commits into
mainfrom
cs-refactor
May 14, 2026
Merged

Cs refactor#154
Velli20 merged 3 commits into
mainfrom
cs-refactor

Conversation

@Velli20
Copy link
Copy Markdown
Owner

@Velli20 Velli20 commented May 14, 2026

No description provided.

codex added 3 commits May 14, 2026 12:38
Move operator definitions, dispatch, backend traits, and recording
support into a dedicated pdf-content-stream-operators crate.
This keeps the shared operator surface independent from the
content stream parser and materialization code.

Keep pdf-content-stream focused on parsing content streams,
materializing ContentStream values, and allocating content
stream IDs. Update pdf-canvas, pdf-page, pdf-font, and related
dependencies to use the new operator crate and the new
pdf-content-stream reexports, and drop stale direct
dependencies where they are no longer needed.

Co-authored-by: Codex <codex@openai.com>
Move content-stream parsing entrypoints off the crate root and into
ContentStream constructors. Keep the operator parser internals private,
update downstream call sites, and add direct coverage for array
concatenation and the documented constructor behavior.

Co-authored-by: Codex <codex@openai.com>
Refactor ContentStream to accept resolved ObjectVariant values
and parse single streams or /Contents arrays directly without
concatenating decoded bytes first. Keep allocator-backed IDs
unchanged and allocate only after parsing succeeds.

Update the page, form, pattern, XObject, Type3 font, and canvas
call sites to use the new constructor, and refresh parser API tests
for array resolution, failure handling, and monotonic IDs.

Co-authored-by: Codex <codex@openai.com>
@Velli20 Velli20 merged commit 6cc86fe into main May 14, 2026
4 checks passed
@Velli20 Velli20 deleted the cs-refactor branch May 14, 2026 10:30
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.

2 participants