-
-
Notifications
You must be signed in to change notification settings - Fork 725
perf(codegen): reduce branches when printing ObjectProperty and BindingProperty
#13659
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
perf(codegen): reduce branches when printing ObjectProperty and BindingProperty
#13659
Conversation
How to use the Graphite Merge QueueAdd either label to this PR to merge it via the merge queue:
You must have a Graphite account in order to use the merge queue. Sign up using this link. An organization admin has enabled the Graphite Merge Queue in this repository. Please do not merge from GitHub as this will restart CI on PRs being processed by the merge queue. This stack of pull requests is managed by Graphite. Learn more about stacking. |
CodSpeed Instrumentation Performance ReportMerging #13659 will not alter performanceComparing Summary
Footnotes |
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.
Pull Request Overview
This PR optimizes the codegen performance by reducing redundant branching in ObjectProperty and BindingProperty implementations. The key insight is that a property cannot be both computed and shorthand simultaneously, allowing for more efficient conditional logic.
- Consolidates duplicate
computedchecks within the!shorthandbranch - Eliminates redundant branching by nesting
computedconditions inside!shorthandchecks - Maintains identical output behavior while reducing code paths
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
Merge activity
|
60861f0 to
641b252
Compare

Small optimization to codegen. It's not possible for a property to be both
computedandshorthand, so only checkif !shorthandonce, and skip all other key-related code ifshorthand == true.(came across this while working on #13638)