Skip to content

Encoding updates - #4356

Merged
kddnewton merged 5 commits into
mainfrom
encodings
Nov 10, 2026
Merged

kddnewton merged 5 commits into
mainfrom
encodings

Conversation

@kddnewton

Copy link
Copy Markdown
Collaborator

Shrinking the binary size a bit by sharing tables as much as possible and removing the function pointers. Also deduplicating the logic that builds the property checks versus the char width. This also is going to make it easier to implement the partial char work we need for regexps.

Instead of calling function pointers directly, route them through
one place so that we can change the underlying implementation of
the encoding objects without having to update callers.
Instead of housing a set of function pointers, make each encoding
a different kind that knows how to check its own char width. Do
this by introducing effectively tiny state machines that check
multiple bytes at once.
@kddnewton
kddnewton merged commit bdbd482 into main Nov 10, 2026
119 checks passed
@kddnewton
kddnewton deleted the encodings branch November 10, 2026 16:37
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