-
Notifications
You must be signed in to change notification settings - Fork 60
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Remove forward ref in the lexer #168
Remove forward ref in the lexer #168
Conversation
The forward ref make jsoo deadcode elimination ineffective
@Leonidas-from-XIV, feel free to take over this PR. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks reasonable to me and honestly a bit nicer than the optjunk32
business.
I think this area of Yojson is under-tested since we have any tests on parsing errors.
@Leonidas-from-XIV, can this be merged ? |
@hhugo If you consider this PR finished (to me it seems so), it looks fine to me and ok to merge. |
This PR is ready from my perspective |
Thanks for the contribution! Might be worth cutting a patch release to help JSOO users. |
CHANGES: *2023-10-10* ### Changed - Make `Basic`, `Safe` & `Raw` seperate compilation units that get exposed by the main module as suggested by @hhugo to enable JSOO to discard unused modules. No API changes should be observable. (ocaml-community/yojson#84, ocaml-community/yojson#167 @Leonidas-from-XIV) - Removed forward refs in the parser to make dead-code elimination in JSOO better (ocaml-community/yojson#168, @hhugo)
CHANGES: *2023-10-10* - Make `Basic`, `Safe` & `Raw` seperate compilation units that get exposed by the main module as suggested by @hhugo to enable JSOO to discard unused modules. No API changes should be observable. (ocaml-community/yojson#84, ocaml-community/yojson#167 @Leonidas-from-XIV) - Removed forward refs in the parser to make dead-code elimination in JSOO better (ocaml-community/yojson#168, @hhugo)
CHANGES: *2023-10-10* - Make `Basic`, `Safe` & `Raw` seperate compilation units that get exposed by the main module as suggested by @hhugo to enable JSOO to discard unused modules. No API changes should be observable. (ocaml-community/yojson#84, ocaml-community/yojson#167 @Leonidas-from-XIV) - Removed forward refs in the parser to make dead-code elimination in JSOO better (ocaml-community/yojson#168, @hhugo)
CHANGES: *2023-10-10* - Make `Basic`, `Safe` & `Raw` seperate compilation units that get exposed by the main module as suggested by @hhugo to enable JSOO to discard unused modules. No API changes should be observable. (ocaml-community/yojson#84, ocaml-community/yojson#167 @Leonidas-from-XIV) - Removed forward refs in the parser to make dead-code elimination in JSOO better (ocaml-community/yojson#168, @hhugo)
The forward ref make jsoo deadcode elimination ineffective.
Fix #84 to some degree.