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 #78
Refactor #78
Conversation
import "./TxLib.sol"; | ||
import "./PriorityQueue.sol"; | ||
|
||
contract ExitHandler is DepositHandler { |
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.
This looks strange from OOP point of view
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.
How so?
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.
OOP would be something like:
Vault <- DepositableVault <- ExitableVault
?
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.
Since we have multiple inheritance it can be Vault ← DepositableVault & ExitableVault
. But it's really a nitpicking :-) I know too few about solidity to have a voice here
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.
Makes sense. The most reasonable relationship would be to have a composition I guess, that is a Vault has a DepositHandler and it has an ExitHandler.
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.
But we will need a separate exit procedure for unincluded deposits so we will need a version of ExitHandler that is aware of the deposits.
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.
As i said, you can ignore me here :-)
No description provided.