Update parse() to handle args that are tuples #6
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.
fixes MetaMask/metamask-extension#5983
This PR address an issue with parsing methods with signatures like
fillOrder((address,address,address,address,uint256,uint256,uint256,uint256,uint256,uint256,bytes,bytes),uint256,bytes)
Encodings of contract arguments can include tuples (and tuples within tuples, etc.) This will cause parenthesis to appear in the arg list of the signature. This could lead to the representation of method names and arguments with parameters included.
This PR ensures that the presence of tuples in method signatures does not cause parenthesis to appear in the string representation of the method name and its arguments.
Test cases are added.
Note that this will cause tuples to be represented flatly. I've created an issue for us to improve that in the future #7