-
-
Notifications
You must be signed in to change notification settings - Fork 814
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
refactor: remove FunctionSignature
#3390
Conversation
Codecov Report
❗ Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more. @@ Coverage Diff @@
## master #3390 +/- ##
===========================================
- Coverage 89.05% 67.69% -21.36%
===========================================
Files 86 84 -2
Lines 10792 10758 -34
Branches 2449 2451 +2
===========================================
- Hits 9611 7283 -2328
- Misses 781 2847 +2066
- Partials 400 628 +228
... and 39 files with indirect coverage changes 📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more |
ah interesting - i was originally planning to remove FunctionSignature entirely and replace its functionality with ContractFunctionT, maybe that should be the scope of this PR instead? |
… longer needs to return sigs either
alright - i made a couple more changes that i had been planning to do later but seemed appropriate as part of this PR:
these clean up a lot of the conceptual burden around how function signatures are calculated and passed around, and lay some nice groundwork for future work on modules :) |
FunctionSignature
and parse_type
FunctionSignature
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 good, nice work!
downstream does not actually use them
What I did
Refactoring PR that removes
GlobalContext.parse_type()
and consolidatesFunctionSignature
intoContractFunctionT
, and movesFrameInfo
and IR labels into a newFunctionIRInfo
class.Also removes dead code in IR generation- parse_Name in vyper/codegen/stmt.py is never reachable because a statement can no longer be a standalone Name node. ~~ - This was the original form of the equivalent function a while [back (https://github.com/vyperlang/vyper/blob/17bfed46411e2bc9aa47c88a784f068a59a09d9d/vyper/parser/stmt.py). Also removed code related to a single statement Name node being "vdb", which "vdb" file no longer exists in the repo.
How I did it
How to verify it
See tests
Commit message
Description for the changelog
Remove
parse_type()
andFunctionSignature
Cute Animal Picture