-
-
Notifications
You must be signed in to change notification settings - Fork 2k
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
feat(python): BytecodeParser can now handle mixed/nested and/or
control flow
#10085
Merged
alexander-beedie
merged 4 commits into
pola-rs:main
from
alexander-beedie:bytecode-nested-and-or
Jul 26, 2023
Merged
feat(python): BytecodeParser can now handle mixed/nested and/or
control flow
#10085
alexander-beedie
merged 4 commits into
pola-rs:main
from
alexander-beedie:bytecode-nested-and-or
Jul 26, 2023
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
github-actions
bot
added
enhancement
New feature or an improvement of an existing feature
python
Related to Python Polars
labels
Jul 26, 2023
alexander-beedie
force-pushed
the
bytecode-nested-and-or
branch
from
July 26, 2023 07:53
702ab1e
to
482d486
Compare
Working nicely in |
I just happened to stumble on this SO question. 😄 |
alexander-beedie
force-pushed
the
bytecode-nested-and-or
branch
from
July 26, 2023 15:08
3b17986
to
44f5cd3
Compare
MarcoGorelli
approved these changes
Jul 26, 2023
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.
Just got a minor comment, but this looks really good!
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Ref: #9968.
This was a fun one... enables two additional ops (
POP_JUMP_FORWARD_IF_FALSE
andPOP_JUMP_FORWARD_IF_TRUE
if Python >= 3.11, andPOP_JUMP_IF_FALSE
andPOP_JUMP_IF_TRUE
for earlier versions) in order to support mixedand/or
chains (previously only supported alland
or allor
) with, crucially, nesting resolution being determined from jump offsets.Example
Notice that we maintain the parenthesised inner
or
block:Also:
OpNames
class.