Popularity
6.4
Growing
Activity
0.0
Stable
18
2
5
Monthly Downloads: 2
Programming language: Haskell
License: Apache License 2.0
Latest version: v3.3.4
ethereum-analyzer alternatives and similar packages
Based on the "ethereum" category.
Alternatively, view ethereum-analyzer alternatives based on common mentions on social networks and blogs.
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
Promo
www.saashub.com
![SaaSHub Logo SaaSHub Logo](https://cdn-b.libhunt.com/assets/partners/saashub-small-09b040e303cf50000aca670e1c77a15c64fc5c073fbdca2665ec2b8b621efc1a.png)
Do you think we are missing an alternative of ethereum-analyzer or a related project?
README
ethereum-analyzer
![Build Status](https://travis-ci.org/zchn/ethereum-analyzer.svg?branch=master)
Usage
Solidity Control Flow Graph (CFG) Generation
stack build --profile &&\
solc --combined-json ast examples/etherscan.io/CryptoKittiesCore.sol |\
stack exec -- ea-analyze &&\
find work/ -name "*.dot" -exec dot -Tpng -O \{\} \;
generates CFGs like
[Solidity CFG](./doc/img/KittyOwnership.tokensOfOwner.CFG.dot.png)
whose original code looks like
function tokensOfOwner(address _owner) external view returns(uint256[] ownerTokens) {
uint256 tokenCount = balanceOf(_owner);
if (tokenCount == 0) {
return new uint256[](0);
} else {
uint256[] memory result = new uint256[](tokenCount);
uint256 totalCats = totalSupply();
uint256 resultIndex = 0;
uint256 catId;
for (catId = 1; catId <= totalCats; catId++) {
if (kittyIndexToOwner[catId] == _owner) {
result[resultIndex] = catId;
resultIndex++;
}
}
return result;
}
}
Solidity Linter (WIP)
stack build
solc --combined-json ast\
examples/analysis-benchmark/selfdestruct-over-suicide.sol |\
stack exec ea-analyze
EVM CFG Generation
stack build
cat examples/etherscan.io/CryptoKittiesSalesAuction.evm | stack exec -- ea-bytecode-vis --outDot=work/tmp.dot &&\
dot -Tpng work/tmp.dot -O
generates a pretty large CFG for the whole EVM bytecode sequence, part of which looks like
[EVM CFG](./doc/img/CryptoKittiesSalesAuction.evm.part.dot.png)