`@remix-project/remix-analyzer` is a tool to perform static analysis on Solidity smart contracts to check security vulnerabilities and bad development practices. It works underneath Remix IDE plugin "SOLIDITY STATIC ANALYSIS" which is used to run analysis for a compiled contract according to selected modules.
`@remix-project/remix-analyzer` is a tool to perform static analysis on Solidity smart contracts to check security vulnerabilities and bad development practices. It works underneath Remix IDE "SOLIDITY STATIC ANALYSIS" plugin which is used to run analysis for a compiled contract according to selected modules.
### Installation
### Installation
`@remix-project/remix-analyzer` is an NPM package and can be installed using NPM as:
`@remix-project/remix-analyzer` is an NPM package and can be installed using NPM as:
remix-debug wrap other remix-* libraries and can be used to debug Ethereum transactions.
`@remix-project/remix-debug` is a tool to to debug Ethereum transactions on different Remix environments (VM, testnet etc.). It works underneath Remix IDE "DEBUGGER" plugin which is used to analyse step-to-step executioon of a transaction to debug it.
+ [Installation](#installation)
### Installation
+ [Development](#development)
`@remix-project/remix-debug` is an NPM package and can be installed using NPM as:
## Installation
`npm install @remix-project/remix-debug`
### How to use
```bash
`@remix-project/remix-debug` can be used as:
npm install remix-debug
```
## Development
```ts
```javascript
var Debugger = require('remix-debug').EthDebugger
var Debugger = require('remix-debug').EthDebugger
var BreakpointManager = require('remix-debug').BreakpointManager
var BreakpointManager = require('remix-debug').BreakpointManager
`isComplete(direction, defaultToLimit)` : return True if the storage at @arg address is complete
check the given pair fileIndex/line against registered breakpoints
`function hasBreakpoint()` :
`initialMappingsLocation((fileIndex, line)` : return all the possible mappings locations for the current context (cached) do not return state changes during the current transaction
return true if current manager has breakpoint
`function add(sourceLocation)` :
`mappingsLocation()` : return all the possible mappings locations for the current context (cached) and current mapping slot. returns state changes during the current transaction
add a new breakpoint to the manager
`function remove(sourceLocation)` :
`extractMappingsLocationChanges(sourceLocation)` : retrieve mapping location changes from the storage changes.
`storageSlot(slot, tx, stepIndex, address, callback)` : return True if the storage at @arg address is complete
return all the possible mappings locations for the current context (cached) do not return state changes during the current transaction
`function mappingsLocation()` :
return all the possible mappings locations for the current context (cached) and current mapping slot. returns state changes during the current transaction
retrieve mapping location changes from the storage changes.
- - - -
`StorageResolver()` :
`isComplete(address)` : return all the possible mappings locations for the current context (cached) do not return state changes during the current transaction
In case you want to add some code, do have a look to our contribution guidelnes [here](https://github.com/ethereum/remix-project/blob/master/CONTRIBUTING.md). Reach us on [Gitter](https://gitter.im/ethereum/remix) in case of any queries.
return True if the storage at @arg address is complete
`function isComplete(address)` :
### License
return all the possible mappings locations for the current context (cached) do not return state changes during the current transaction