profile solidity functions
Almost same as EricR's sol-function-profiler.
Differences:
- change
solidity-parser
tosolidity-parser-antlr
which can handleconstructor
- add class inheritance
Example Output:
node ./sol.js ../solidity/Conference.sol
.-------------------------------------------------------------------------------------------------------------------------------------------.
| ../solidity/Conference.sol |
|-------------------------------------------------------------------------------------------------------------------------------------------|
| Contract | Function Proto | Selector | Visibility | StateMut | Returns | Modifiers |
|------------|----------------------------------------------------|----------|------------|----------|---------|----------------------------|
| Conference | | | | | | is Destructible,GroupAdmin |
| Conference | constructor(string,uint256,uint256,uint256,string) | | public | | null | |
| Conference | registerWithEncryption(string,string) | 5d27bff3 | external | payable | null | onlyActive |
| Conference | register(string) | f2c298be | external | payable | null | onlyActive |
| Conference | registerInternal(string) | 49f2a049 | internal | | null | |
| Conference | withdraw() | 3ccfd60b | external | | null | onlyEnded |
| Conference | totalBalance() | ad7a672f | public | view | uint256 | |
| Conference | isRegistered(address) | c3c5a547 | public | view | bool | |
| Conference | isAttended(address) | a07f3a56 | public | view | bool | |
| Conference | isPaid(address) | 6ded82f8 | public | view | bool | |
| Conference | payout() | 63bd1d4a | public | view | uint256 | |
| Conference | payback() | 854bec87 | external | | null | onlyOwner,onlyActive |
| Conference | cancel() | ea8a1af0 | external | | null | onlyOwner,onlyActive |
| Conference | clear() | 52efea6e | external | | null | onlyOwner,onlyEnded |
| Conference | setLimitOfParticipants(uint256) | 9989a5ae | external | | null | onlyOwner,onlyActive |
| Conference | changeName(string) | 5353a2d8 | external | | null | onlyOwner,noOneRegistered |
| Conference | attend(address[]) | 982495c7 | external | | null | onlyAdmin,onlyActive |
'-------------------------------------------------------------------------------------------------------------------------------------------'